Все основные элементы системы MODX, такие как чанки, шаблоны, сниппеты и т.д, хранятся в БД, из этого появляется проблема осуществления контроля версий за этими элементами, а также сложности с разделением на development и production версии сайта.
Приведу основные требования, чего я хочу от своего рабочего процесса на MODX Revo:
контроль версий везде, где пишу какой-либо код (html, css, js, php),
иметь отдельную dev-версию сайта, на которой ведётся текущая разработка, а после — деплоить все изменения в продакшн, причём, желательно, автоматизировать этот процесс,
Недавно по Твиттеру и Реддиту гулял интересный кусок кода на JavaScript. Вопрос, связанный с ним, заключался в следующем: «Может ли выражение (a==1 && a==2 && a==3) вернуть true?». Ответ на вопрос, как ни странно, был положительным.
Сегодня мы разберём этот код и постараемся его понять. Читать дальше ->
Этот текст начинает цикл статей, посвященных очередной проверке проекта Chromium с помощью статического анализатора кода PVS-Studio. В статьях будут рассмотрены различные паттерны ошибок и предложены рекомендации, позволяющие снизить вероятность их появления в коде. Однако, прежде чем начать, требуется написать своего рода введение, которое заранее ответит на ряд вопросов, а также предоставит разработчикам Chromium все замеченные ошибки, которые они могут начать исправлять, не дожидаясь окончания цикла статей.
Предыстория
Меня зовут Андрей Карпов, и я являюсь евангелистом статического анализа в целом и инструмента статического анализа PVS-Studio в частности. Впрочем, термин «технический евангелист» уже устаревает и на его смену приходит «developer advocate».
Я уделяю много времени написанию материала, посвященного улучшению качества кода и повышению надежности программ. Сейчас у меня есть новый повод написать несколько статей на эту тему — проверка открытого проекта Chromium с помощью анализатора PVS-Studio. Это большой проект, а в любом большом проекте живут баги разнообразнейших видов. Такое разнообразие позволяет рассмотреть сразу несколько интересных тем, связанных с причинами возникновения этих багов и способами их предотвращения. Читать дальше ->
Добрый день, хабрасообщество!
Сегодня я хотел бы рассказать о волшебном и чудесном проекте компании Тензор — удаленном помощнике. Это система удаленного доступа, связывающая миллионы клиентов и операторов в рамках общей клиентской базы СБИС. Удаленный помощник уже сейчас тесно интегрирован с online.sbis.ru. Каждый день мы регистрируем более десяти тысяч подключений и десятки часов сессионного времени в сутки.В этой статье мы расскажем о том, как мы устанавливаем p2p соединения, и что делать, если этого сделать не удается. Читать дальше ->
Всем привет! Мы издали книгу для детей, обучающую программированию. Профессор Бейрстоун и доктор Дэй (и, конечно пес Эрнест) играючи научат этому всего за шесть увлекательных приключений! Создавать собственные сайты, игры или приложения с помощью HTML, CSS и JavaScript — это весело и увлекательно.
Чтобы вы поняли, что это не только развлечение, но и серьезное веб-программирование мы покажем вам фрагмент книги про «Построение маршрута». Речь пойдет про добавление материала с другой страницы, встраивание карты с границу с помощью веб-api, применение api key, изучение принципа работы тега и планирование маршрута с помощью карт Google. Читать дальше ->
Как мы определяем, какая Scrum команда успешна, а какая нет? Как можно определить успех команды? На что стоит обращать внимание при оптимизации процесса?
В статье я поделюсь своим взглядом на то, какие факторы влияют на успех команды, а также обозначу основные проблемы, на решение которых команда тратит свою энергию.
В любой компании, использующей систему управления проектами и задачами, рано или поздно возникает желание объединить её с каким-нибудь популярным мессенжером для упрощения коммуникаций. Особенно если через эту систему идёт взаимодействие с клиентами.
В статье речь пойдёт о том, как подружить Redmine с Telegram и при этом не поломать имеющиеся бизнес-процессы.
Базы данных пришли в мир в 70 году. С тех пор они стали больше по размеру, с более сложной логикой и продолжают расти. С тех пор появилось много инструментов для синтаксического анализа SQL и выстраивания зависимостей. Все они разбивают SQL на токены, используя тот или иной синтаксический анализатор и грамматики.
Но обычные синтаксические анализаторы (ANTLR, например) могут столкнуться с ошибками разбора скриптов, каждый диалект SQL имеет свои собственные особенности. Время анализа тоже может быть существенным на больших БД.
Я хочу показать намного более простой способ: RegEx + небольшой трюк,
итак… Читать дальше ->
«Без суперкомпьютеров мы просто философы», отмечает профессор Стивен Хокинг в этом видео, и неспроста. 20 лет назад Стивен Хокинг основал исследовательскую группу COSMOS на математическом факультете Кембриджского университета. Группа использовала высокопроизводительные вычисления in-memory для исследования вопросов космологии, астрофизики и физики элементарных частиц. Доступ к новым массивам данных позволил космологии развиться из спекулятивной теории в науку, обоснованную расчётами.
Новый импульс развитию космологии придали недавние открытия, в первую очередь, обнаружение гравитационных волн в 2016 году. Вот что говорит об этом Стивен Хокинг: «Группа COSMOS работает над пониманием того, как функционирует пространство и время, от первой триллионной доли секунды после Большого Взрыва до сегодняшнего дня. Недавнее открытие гравитационных волн предлагает нам удивительные знания о черных дырах и всей Вселенной. С появлением таких интересных новых данных нам нужны гибкие и мощные компьютерные системы, способные с ними справиться». Именно такую систему, основанную HPE Superdome Flex, факультет получил в ноябре. Читать дальше ->
Распределенные атаки на отказ в обслуживании, которым подвергаются популярные сайты обычно происходят с тысяч и тысяч взломанных устройств. Эти атаки в основном направлены на подавление целевой системы масштабным трафиком, забиванием канала связи. Эти атаки относятся к layer 3 (сетевой уровень модели ISO/OSI) DoS/DDoS и характеризуются большим количеством пакетов, которыми атакуется ресурс. Layer 7 (прикладной уровень модели ISO/OSI) DoS/DDoS обычно направлен на "слабые" места веб-приложения.
Achievement unlocked: на Stack Overflow появился первый пользователь с 1 миллионом баллов репутации.
Stack Overflow открыт в сентябре 2008 года и с тех пор помогает разработчикам со всего мира находить необходимые ответы на технические вопросы. Например, сайт показал миллиону пользователей выход из Vim. На январь 2017 года на Stack Overflow 8 миллионов зарегистрированных пользователей, 15 миллионов вопросов и 24 миллиона ответов. Еще десять лет назад ничего этого не было.
Владислав Власов, инженер-программист в Developer Express и преподаватель Нетологии, написал для блога цикл статей о EcmaScript6, в первой части которого на примерах рассмотрел динамический анализ кода в EcmaScript с помощью Iroh.js.
Статический и динамический анализ кода
Средства анализа кода — полезный инструмент, позволяющий обнаруживать и выявлять ошибки и особенности в работе кода. Анализ кода бывает статическим и динамическим. В первом случае производится разбор и анализ исходного кода без его выполнения, во втором — выполнение происходит в управляемой среде-песочнице (sandboxing), предоставляющей метаинформацию об элементах приложения в процессе его выполнения.
В языке EcmaScript, обладающим утиной типизацией (duck-typing), часто используются средства статического анализа, позволяющие без выполнения обнаружить потенциально опасные ситуации в коде: несоответствия типов передаваемых и принимаемых аргументов, некорректные операции с переменными несоответствующих типов, невыполняемые секции кода и так далее. Наиболее популярными являются решения Typescript и Flow, основанные на расширении языка специальным синтаксисом. Читать дальше ->
С предыдущей частью статьи можно ознакомиться, перейдя по ссылке
III ОПРЕДЕЛЕНИЕ ПОНЯТИЯ АРХИТЕКТОР
Врач может похоронить свою ошибку,
архитектор – разве что обсадить стены плющом.
Фрэнк Ллойд Райт.
Зачастую в ИТ отрасли, говоря об ИТ архитекторе, подразумевают продвинутого разработчика, способного самостоятельно спроектировать, а главное реализовать большую сложную систему. А иногда попросту полагают, что это следующая ступенька в профессиональной иерархии разработчиков. Например, начал молодой специалист свою карьеру разработчика, ему присвоили скромное, но почетное звание Junior. Он учится, развивается профессионально, растет над собой и коллегами, и ему, в качестве компенсации за труд и упорство, торжественно присваивается звание Middle. Но он неугомонный и дальше не останавливается в развитии, совершает ряд подвигов, самоотверженно взвалив на себя ответственность за принимаемые решения. Глядишь, и его уже удостаивают высочайшего звания Sinior. А дальше? А если он не желает почивать на лаврах успеха и хочет развиваться, ему что присвоят под звуки фанфар генеральское звание Архитектора? Так ли это?
Специально ИТ архитекторов, насколько мне известно, не готовят в вузах. Чаще всего архитекторы получаются путем селекции из уже маститых специалистов в какой-либо ИТ области, «прокачивая» дополнительными знаниями до определенного уровня.
Кстати существует профессиональный стандарт квалификационных требований системных архитекторов (5), на основании которых архитектору может быть присвоен один из шести квалификационных уровней. Будем использовать этот стандарт в ходе нашего рассмотрения темы, чтобы не упустить ничего важного в работе ИТ архитектора. Читать дальше ->
о том, как правильно писать периодические анонсы на Хабр;
о небольшом лайфхаке, как рисовать картинки с прогрессивным JPEG в стиле Тёмы Лебедева.
Многие хабровчане работают в IT-компаниях, и наши компании имеют блог на Хабре. Этот блог зачастую рассматривается как витрина для продуктов и услуг компании. Когда ты пишешь посты в корпоративный блог, все подсознательно ожидают именно такого поведения. Как охотники развешивают на стенах своих домов трофеи с удивительными животными, на витрине должны появляться новые версии, новые фичи и новые баги.
Началось все с того, что я, как и многие другие, захотел написать бота. Предполагалось, что бот мне будет напоминать всякие разные вещи, которые я постоянно забываю — первый сценарий, который предполагалось реализовать, это чтобы бот мне в 10 вечера говорил о том, чтобы я прочитал все то, что в течение дня записал в свой блокнот.
Минувший 2017 год стал еще одним важным годом для Интернета вещей (IoT). Потребители по-прежнему покупали все новые подключенные устройства, и в итоге, одним из наиболее популярных новогодних подарков во многих странах стали виртуальные цифровые помощники с функцией распознавания речи. Кроме того, в минувшем году состоялся первый официальный запуск сервисов и продуктов Narrow Band IoT (NB-IoT), ну и наконец, согласно статистике, сегодня в мире насчитывается больше IoT устройств, чем смартфонов или ПК.
Что же несет с собой для Интернета вещей новый 2018 год? Открываем пять основных тенденций, которые, как мы считаем, определят наступивший год.
Ничто так не повышает зарплату в оффере, как контроффер. И тут можно было бы закончить разговор, но не в США. Есть у вас контроффер или нет, в Америке очень важно соблюдать некоторый этикет переговоров о зарплате. Вряд ли разговор с вашим потенциальным работодателем пойдет дальше, если вы приедете и выложите свой оффер со словами «Сможете перекрыть?».
Как правильно по-американски вести переговоры и какие маленькие хитрости помогут добиться нужных цифр даже без контроффера, читайте дальше в статье. Читать дальше ->
Всем привет! Ни для кого не секрет, что в последнее время возросло большое количество угроз. Большое внимание стало уделяться темам безопасности и защите доступа к используемым ресурсам. В данной статье разберем продукт Citrix NetScaler VPX и его интегрированную платформу Unified Gateway, а заодно поговорим о том, какие методы аутентификации сегодня применяют, что такое мультифакторная аутентификация и многое другое. Всех заинтересовавшихся прошу к прочтению. Читать дальше ->
Хабр, привет! Меня зовут Ромуальд (можно просто Роман) Здебский. Я больше 11 лет работаю в Microsoft. В последние годы помогал ключевым партнерам Microsoft в выпуске популярных игр и приложений для платформы Windows, например клиентов ВКонтакте для Windows Store, таких игр как World Of Tanks Blitz, Cut The Rope 2 и многих других. С технологической точки зрения много занимался XAML-фреймворками и технологиями доступа к данным. Сейчас сферой моих технологических интересов является разработка мобильных приложений с помощью Visual Studio и Xamarin, технологии доступа к данным в Azure, CosmosDB и др.
В прошлом месяце мы выпустили Visual Studio 2017 15.5 с новыми возможностями, включая эмулятор iOS Remoted Simulator, доступный всем разработчикам, средство просмотра XAML в режиме реального времени в эмуляторах Android с помощью Xamarin Live Player, новые шаблоны проектов Xamarin.Forms для .NET Standard и усовершенствованный механизм связывания с Mac.
В январе стала доступна предварительная версия Visual Studio 2017 15.6. В этой статье мы обсудим, что было добавлено в эту версию, включая подготовку среды macOS сборки проектов, развертывание на iOS через Wi-Fi, просмотр интерфейса на базе XAML в эмуляторе Remoted iOS Simulator в реальном времени и многое другое. Читать дальше ->