В данной статье мы рассмотрим правильный подход к Frontend разработки в Bitrix. А именно разделение на расширения которые сможем подключать в любой момент времени. + напишем SPA приложение на React.
Веб-разработчик
Как мы приготовили массу блюд c помощью одного ингредиента: GraphQL
Всем привет! Не говорите, что вам нечего приготовить, если у вас дома одна картошка. При смекалке и достаточном количестве специй — пюре, драники, запеканка, чипсы фри... Конечно, мы обсуждаем не кулинарию. Мне хотелось бы поговорить о GraphQL и некоторых фичах, которые мы внедрили у себя в компании, и тиражируем на различные проекты, где используется этот язык запросов.
Эта статья о базовой структуре, производительности, безопасности и гибкости GraphQL и будет интересна архитекторам, интеграторам, аналитикам и разработчикам, которые не ограничиваются рассмотрением информационных систем только с точки зрения «кода», а учитывают полный жизненный цикл системы, включая поддержку, развитие, систему управления знаниями и многое другое.
Управляем командами на Laravel
Chronos for Laravel
Веб-интерфейс для управления командами Laravel в real-time без необходимости лезть в код проекта.
Книга «Эволюционная архитектура. Автоматизированное управление программным обеспечением. 2-е межд. изд.»
Новые инструменты, фреймворки методики и парадигмы вновь и вновь меняют экосистему
разработки программного обеспечения. Непрерывный прогресс основных практик разработки
на протяжении последних пяти лет заставил искать новые пути и подходы к архитектуре, чтобы
соответствовать постоянно меняющимся требованиям пользователей. В обновленном издании
авторы Нил Форд, Ребекка Парсонс, Патрик Куа и Прамод Садаладж приводят реальные примеры, соответствующие потребностям современной разработки ПО.
«Эта книга знаменует собой важную веху, обозначающую нынешний уровень понимания проблемы. По мере того как люди начинают осознавать роль ПО в XXI веке, информация о том, как реагировать на изменения, сохраняя достигнутое, становится важнейшим навыком в области создания программного обеспечения». — Мартин Фаулер.
Laravel 11. Что нового?
Скоро Тейлор и его команда выпустят новую мажорную версию фреймворка. Расскажу, что на данный момент известно о ней.
Laravel 11 продолжает улучшения, начатые в Laravel 10.x, представляя упрощенную структуры приложения, посекундные ограничения скорости, маршруты проверки здоровья приложения, изящную ротацию ключа шифрования, улучшения тестирования очередей, почтовый транспорт Resend, интеграцию валидатора Prompt, новые команды Artisan и многое другое. Кроме того, был представлен Laravel Reverb — масштабируемый WebSocket-сервер обеспечивающий надежную работу в режиме реального времени.
Механизмы безопасности в Laravel
Комплексный обзор множества безопасных функций Laravel, которые могут помочь вам предотвратить болезненные ошибки.
Мы рассмотрим следующие механизмы безопасности:
• Предотвращение N+1
• Защита от частично гидрированных моделей
• Опечатки атрибутов и переименованные столбцы
• Защита от массового присвоения
• Строгость модели
• Принудительное выполнение полиморфного сопоставления
• Мониторинг долгосрочных событий
Мутации в микросервисах: применяем Temporal
Всем привет!
В прошлой статье была поставлена задача о надёжных мутациях и транзакциях в архитектуре Профи, в этой статье разберём один из вариантов решения — применить workflow-engine Temporal.
Junior PHP. Ответы на часто задаваемые вопросы на технических собеседованиях
Привет пользователям Хабра!
Тема собеседований и подготовки к ним всегда актуальна. Поэтому я подготовил ответы на часто задаваемые вопросы на технических собесах по PHP на уровень Junior. Сразу скажу, что этот список вопросов я взял с другого ресурса, к которому очень часто обращаются собеседующие, которые не хотят утруждать себя сочинением своих вопросов. Но в целом повторить базу перед предстоящим собеседованием будет никому не лишним.
Как мы внедряли Sentry. Часть 2 — внедрение в разработку
В прошлый раз мы рассматривали внедрение Sentry со стороны эксплуатации: устанавливали на сервер self-hosted
, делали его высокодоступным при помощи сети доставки td-agent
, настраивали мониторинг.
Теперь рассмотрим процесс внедрения Sentry со стороны команды разработки.
Выбор СУБД: шпаргалка, чтобы не запутаться
Вопрос выбора СУБД для российской компании или госоргана – вопрос не праздный, тем более сейчас – когда с момента ухода с рынка западных вендоров прошло уже полтора года и пора что-то решать. Но как не запутаться в номенклатуре СУБД и выбрать ту, которая лучше всего подходит? Без ложной скромности скажу: мы в «Кругах Громова» уже немного поднаторели в систематизации, поэтому надеемся, что наша шпаргалка для тех, кто хочет выбрать СУБД, окажется полезной.
Начнем с классики. СУБД делятся на несколько типов. Не будем описывать их подробно, остановимся только на их основном предназначении.
Импорт базы ГАР для нормализации собственной адресной базы в Laravel 10. Часть II, пишем консольное приложение
В предущей части
Исследование выгрузки базы ГАР
Что в этой части?
Создание консольного приложения Laravel, способного по команде artisan загрузить свежую выгрузку с сервера ГАР, распарсить её, занести данные в таблицы, используя многопоточность, и выдать данные в удобном табличном виде, используя представление базы данных.
Не требует web-сервера и запущенных воркеров Laravel.
Готовое приложение, расположенное на github.com прилагается.
В качестве бонуса: реализация «актуализации» устаревшей, но тем не менее, годной к употреблению информации.
Карьера Software Engineering Manager. Эффективное управление командой разработчиков ПО — обзор книги и рекомендации
На рынке не так много книг, которые помогают начинающим тимлидам, которые еще вчера писали код и строили архитектуру, понять, как нужно приступать к работе с людьми и строить свое развитие по ветке управления. Это, естественно, две популярные книги: "Мама, я тимлид! Практические советы по руководству IT-командой" Перескоковой Марины и "Как пасти котов. Наставление для программистов, руководящих другими программистами" Дж. Ханк Рейнвотера.
И вот на свет вышка книга: "Become an Effective Software Engineering Manager: How to Be the Leader Your Development Team Needs", которую Издательство Питер @ph_piter перевело как: "Карьера Software Engineering Manager. Эффективное управление командой разработчиков ПО". Не нужно пугаться позиции "Software Engineering Manager" - это именно что тимлид в понимании рынка РФ. И эта книга по своей сути является такой же отправной точкой в карьере начинающего тимлида, как и две предыдущие, но немного иначе!
ИТ-инфраструктура в российских компаниях в 2023 году: импортозамещение, CI/CD, управление инфраструктурой и мониторинг
Месяц назад компания «Экспресс 42» вместе с партнерами (одним из которых как раз был «Флант») выпустила подробный отчет на 75 страницах о состоянии DevOps в России. В этой статье мы бы хотели более подробно рассказать, какие инструменты и операционные системы компании используют для работы с инфраструктурой, как меняется их проникновение от года к году, как продвигается импортозамещение и что именно российские компании понимают под этим термином.
Как разработать техническую документацию, которая точно будет работать. Часть 2. DocOps в действии
Привет! Меня зовут Андрей Гладилин, я работаю в Swordfish Security над составлением технической документации для ИТ-решений. Завершая предыдущую статью, мы обсудили преимущества и недостатки DocOps-подхода к разработке технической документации и немного поговорили о прикладной реализации этой парадигмы — Doc-as-code.
Позволю себе напомнить, что основная идея DocOps заключается в том, что создание технической документации осуществляется в тесном контакте с разработкой программного продукта и во многом «отзеркаливает» этапы последней — рабочие процессы максимально синхронизируются и объединяются в общую систему, широко применяется автоматизация рутинных операций и упрощается совместная работа, что позволяет повысить общую эффективность процесса.
Теперь перейдем к практической реализации DocOps-решения, которое мы начали обсуждать в первой части статьи.
Маст-хэв PHP-инструменты
В последние годы PHP динамично развивался с появлением новых версий языка, содержащих ряд новых фич, депрекаций и более строгий синтаксис. Кроме того, библиотеки и фреймворки, такие как Symfony, постоянно претерпевают изменения: каждые полгода появляются новые минорные релизы, а каждые два года - мажорные, наиболее существенные. Для нас в Westwing очень важно регулярно обновлять имеющуюся кодовую базу, чтобы она оставалась работоспособной, безопасной и актуальной. К счастью, в сообществе PHP появилось множество инструментов, способствующих улучшению кодовой базы.
Худшие практики разработки и архитектуры
Я собрал худшее из худшего! Оказалось, что хороших практик — море, и разбираться в них долго, а вот плохих, реально плохих, — считаные единицы.
Понятно, что плохие практики не отвечают на вопрос: «А как делать-то?» — но они помогают быстро разобраться в том, как не делать.
Мы часто спорим про архитектуру и хотим друг от друга знания разных правильных практик проектирования, лучшего мирового опыта и вот этого всего. Понятно, что в реальном мире это совсем-совсем не так. И худших практик часто достаточно, чтобы начать договариваться, как не надо.
Итак, мой любимый антишаблон — поток лавы. Начинается всё просто: в новый проект можно добавить код из старого проекта копипастой. Он там делал что-то полезное, пускай делает почти то же самое полезное в новом проекте. Вот только нужно закомментить один кусок, а в другом месте — чуть дописать. Примерно через три переноса без рефакторинга образуются большие закомментированные участки, функции, которые работают только с частью параметров, сложные обходы вроде «выльем воду из чайника, выключим газ, и это приведёт нас к уже известной задаче кипячения чайника» и так далее.
Это если команда одна. А если разработчики на пятом проекте новые, то начинается самое весёлое — этот сталактит надо ещё прочитать.
Очень часто я вижу лава-код в проектах аутсорсинговых компаний, потому что они используют свою кодовую базу по разным заказчикам как такой своеобразный иннерсорс. А «междисциплинарный» код как раз хорошо обрастает отключаемыми участками и переопределяемыми функциями.
PHP. Рецепты программирования (2023) — обзор книги и рекомендации
В настоящий момент выходит не так много книг по PHP, поэтому я решил прочитать свежее переиздание книги PHP Cookbook от 2023 года, которую в России переводят, как "PHP. Рецепты программирования". Хотелось бы «УЗНАТЬ», что можно написать не про какую-то сферу, где применяется PHP, а именно про сам язык.
Об авторе
Эрик Манн - инженер-программист с опытом почти в два десятилетия. Он создавал масштабируемые проекты для стартапов на ранней стадии и для компаний из списка Fortune 500. Эрик часто рассказывает о архитектуре программного обеспечения, технике безопасности и передовом опыте разработки. Он регулярно уже более пяти лет пишет статьи в журнале php[architect], и больше всего ему нравится помогать новым разработчикам избегать многих ошибок, которые он совершил в своей карьере программиста.
Расследование инцидента по утечке данных сайта www.infotecs.ru
Всем привет! Сегодня мы расскажем об инциденте, связанном с утечкой данных CMS «1С-Битрикс: Управление сайтом» сайта www.infotecs.ru и о том, как проводилось расследование.
Затаскиваем sqlite в облачный Битрикс24
Для каких целей? На момент возникновения идеи было еще не совсем понятно. Но предпосылки развития идеи были.
Массовый дефейс веб-сайтов .РФ
26 мая 2023 года произошёл массовый дефейс веб-серверов национального сегмента сети интернет .РФ. В качестве цели атаки выступила CMS «Битрикс».
В ходе расследования выяснилось, что атака подготовлена заранее. Подготовка велась с 2022 года через известные уязвимости, включая CVE-2022-27228. Техническое описание см. на форуме разработчиков. Возможно, это самая крупная атака против национального сегмента .РФ в его истории.
Компания CyberOK выпустила отчёт c описанием атаки и разъяснением необходимых действий для того, чтобы удалить с сервера бэкдор, устранить уязвимости «Битрикса» и восстановить приложение. Также приведены рекомендации по защите веб-приложения.
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность