home.social

#best_practices — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #best_practices, aggregated by home.social.

fetched live
  1. ClickHouse: сценарии, сильные стороны, лучшие практики работы в 2026 году

    ClickHouse — один из самых востребованных инструментов для хранения и анализа больших объемов данных, обеспечивающий высокую производительность и наблюдаемость сервисов и приложений. Благодаря этим параметрам многие компании внедряют его в свои ИТ-инфраструктуры для решения задач аналитики, логирования и мониторинга. Однако, несмотря на широкое распространение, практика показывает, что далеко не все команды до конца осознают все особенности и нюансы работы с этой системой, что может приводить к неэффективному использованию ресурсов, ошибкам в проектировании и снижению общей производительности. Привет, Хабр. Меня зовут Александр Кривяков. Я пресейл-архитектор VK Data Platform , VK Tech. В этой статье я расскажу об основных принципах работы ClickHouse, а также покажу возможные архитектурные решения и типичные сценарии применения системы.

    habr.com/ru/companies/vktech/a

    #vk_cloud #clickhouse #olap #колоночное_хранение #большие_данные #data_platform #логирование #метрики #архитектура_данных #best_practices

  2. FASA: архитектура ПО без слоёв и адаптеров. Спецификация

    Большинство современных архитектурных подходов учат нас строить всё больше слоёв абстракции: контроллеры, сервисы, репозитории, адаптеры, транспортеры… Но что, если сложность системы растёт не из-за предметной области, а из-за самой архитектуры? В этой статье я представляю FASA (Flat Adaptive Software ARchitecture) — спецификацию, которая предлагает радикально простой ответ: всего три сущности, строгие правила зависимостей и никаких промежуточных слоёв . Вы узнаете, почему «плоский» граф компонентов может быть устойчивее многослойной архитектуры, как версионировать интерфейсы без боли, используя правило двойной поддержки (N-1) и где проходит граница между семантикой приложения и инфраструктурой — и почему это важно. Спецификация языково-независима: примеры приведены для разных контекстов (Rust, сетевые протоколы, IPC), но правила применимы в любом стеке. Читать

    habr.com/ru/articles/1043322/

    #Архитектура_ПО #Программирование #Интерфейсы #Версионирование #Чистая_архитектура #Проектирование_ПО #API #Микросервисы #Best_practices #компонентная_архитектура

  3. Повесть о конфигурации как инженерной гигиене

    Привет, Хабр! Меня зовут Юрий Соловьёв, я ведущий инженер в команде экосистемы Tarantool . С опытом я пришел к тому, что конфигурация должна иметь строгую спецификацию, так же как и HTTP API. В этой статье я предлагаю альтернативный подход на базе protobuf и постараюсь показать, что это не избыточная сложность, а необходимый уровень инженерной гигиены — особенно для систем, рассчитанных на долгую и стабильную жизнь. Это в какой-то мере технорассказ, которым я хочу поделиться — и именно в такой форме.

    habr.com/ru/companies/vktech/a

    #vk_cloud #конфигурация #protobuf #configuration_management #infrastructure_as_code #best_practices #yaml #microservices #tarantool #валидация

  4. Нейросеть — не второй программист. Как правильно разделить работу. Помощь для начинающих

    Когда разработчик впервые применяет языковую модель, ошибка часто возникает ещё до первого ответа. Он переносит на модель собственный способ работы и ожидает, что она будет действовать как человек: запоминать информацию «в голове», уставать, понимать интерфейс и спорить. Это некорректный перенос. Языковая модель — не человек. Это инструмент, порождающий код на основе статистических связей. Данная статья родилась как небольшая помощь моим юным коллегам, позволяющая получить набор эргономичных правил для взаимодействия с нейросетевой моделью и организации труда с целью получить максимальную выгоду для себя и не навредить проекту.

    habr.com/ru/articles/1035842/

    #нейросети #llm #программиррование #разработка #когнитивная_нагрузка #инструменты #best_practices #взаимодействие_с_ИИ

  5. Риски в IT-продукте: как бизнес-аналитик спасает проект

    Как бизнес-аналитик может предотвратить катастрофу в проекте? В статье разбираем, чем риск отличается от «что-то пошло не так», как категоризировать угрозы и с помощью pre-mortem анализа находить слабые места до старта разработки. Если хотите превратить неопределённость в управляемый план — welcome под кат. Разобрать риски

    habr.com/ru/companies/otus/art

    #аналитика #управление_рисками #бизнесанализ #системный_аналитик #митигация_рисков #best_practices #ITпроекты #FinTech

  6. Нагрузочное тестирование с Apache JMeter: Best Practices

    Apache JMeter — не просто инструмент. В этой статье разберем, как получать от него реальную пользу. Вы узнаете, почему 80% отчётов о нагрузке бесполезны, как настроить распределённый тест и анализировать не среднее значение, а процентили. Полный гайд от первого HTTPS-скрипта до информативного HTML-отчёта и Best Practices.

    habr.com/ru/companies/otus/art

    #java #Нагрузочное_тестирование #Apache_JMeter #Тестирование_производительности #Highload #devops #Best_Practices #Performance_Testing

  7. Kotlin для новичков: всё о функциях за 15 минут

    Продолжаем серию «Kotlin для новичков»! В прошлых статьях мы настроили IDE, разобрались с переменными и типами данных, научились управлять потоком программы через условия и циклы. Пришло время сделать следующий шаг — освоить функции . В этом туториале вы узнаете: ▪️ Как объявлять функции и чем это отличается от Java. ▪️ Что такое именованные аргументы и значения по умолчанию (и почему это круто). ▪️ Как работает стек вызовов и области видимости. ▪️ Главные best practices, которые используют в разработке.

    habr.com/ru/companies/otus/art

    #Kotlin #функции #программирование #обучение #best_practices #jvm #декомпозиция

  8. Виды тестирования ПО: статика, динамика и 5 уровней, которые работают на практике

    Когда код уже написан, половина багов уже не исправить. Парадокс? Нет — статическое тестирование. В этой статье разбираю, как находить дефекты ещё на этапе требований, почему «большой взрыв» интеграции — это путь в никуда, и зачем знать про заглушки, драйверы и уровни от компонентного до UAT.

    habr.com/ru/companies/otus/art

    #тестирование #статическое_тестирование #динамическое_тестирование #уровни_тестирования #uat #интеграционное_тестирование #best_practices

  9. [Перевод] Отчёт PSF об инциденте атаки на цепочку поставок LiteLLM/Telnyx + рекомендации

    В этой статье рассмотрены две недавние атаки на цепочку поставок, направленные на пользователей популярных пакетов PyPI — litellm и telnyx. Также описаны рекомендации разработчикам и сопровождающим Python о том как подготовиться и защитить свои проекты.

    habr.com/ru/articles/1019638/

    #pypi #litellm #telnyx #security #атака_на_цепочку_поставок #best_practices #безопасность #python #trusted_publishers #trivy

  10. # 10 ошибок Configuration Management

    695 строк конфига, одна валидация, 10 GB upload limit по умолчанию и env-переменная, которая никогда не срабатывает. Десять ошибок управления конфигурацией, собранных из реальных проектов.

    habr.com/ru/articles/1017166/

    #configuration_management #конфигурация #best_practices #антипаттерны #java #feature_flags #application_config #scala

  11. ADR, архитектурные тесты и кейсы из прода: ресурсы, которые реально меняют код

    У меня была привычка. Вижу классную статью про архитектуру —-сохраняю. Репозиторий с примерами DDD - в закладки. Видео про CQRS - в плейлист «Посмотреть потом». Вы знаете, чем кончаются плейлисты «Посмотреть потом». В какой-то момент закладок стало 300+. Половина ссылок битые, треть дублируют друг друга, остальное - статьи, которые казались гениальными в два часа ночи. Я сел и вычистил всё до 106 ресурсов. Собрал их в awesome-list на GitHub . Но статья не про список. Статья про три вещи, которые я для себя открыл в процессе и которые почему-то мало обсуждают.

    habr.com/ru/articles/1001010/

    #architecture #DDD #CQRS #clean_architecture #ADR #software_design #software_architecture #best_practices #system_design #microservices

  12. [Перевод] Мы научили ИИ писать настоящий код для Postgres (и выложили в open source)

    Когда ИИ за секунды генерирует «нормальную» схему Postgres, соблазн принять её как есть слишком велик. Проблема в том, что в этих схемах часто прячутся тихие минные поля: неудачные типы данных, странная индексация, путаница с идентификаторами, ловушки с временем и миграциями — всё то, что не ломает сборку сегодня, но превращается в боль через полгода в продакшене. В статье разберем, почему универсальные LLM регулярно промахиваются по нюансам именно Postgres, и как авторы пытаются закрыть эту дыру через pg-aiguide: набор «навыков» с лучшими практиками, версионный семантический поиск по официальной документации и интеграцию с код-агентами через MCP/плагин.

    habr.com/ru/companies/otus/art

    #Postgres #миграции #индексы #типы_данных #LLMагенты #best_practices #postgresql

  13. Как на Берегу Слоновой Кости НДС тестировали

    Налог на добавленную стоимость не был экономическим прорывом. Его придумали задолго до запуска, и все понимали, как он должен работать. Проблема была в другом: такой налог слишком рискованно сразу выкатывать в большую экономику из-за возможных ошибок и потерь для бюджета. Франция решила эту проблему красиво. Сначала — MVP, потом — всё остальное. Идеологом такого подхода стал Морис Лоре, который понимал: правильный налог проваливается так же легко, как неправильный, если его внедрять без «тестового контура». Тестовым контуром стал Кот-д’Ивуар. Решение приняли не случайно. В худшем случае это была бы локальная неудача. В лучшем — готовый налог, который можно было бы спокойно переносить во Францию. Шалость удалась.

    habr.com/ru/companies/gazpromb

    #НДС #история_экономики #налоговая_система #best_practices

  14. [Перевод] Результаты огромного опроса разработчиков на Go за 2025 год

    Команда Go for Devs подготовила перевод отчёта команды Go о результатах Go Developer Survey 2025 (опрос проходил в сентябре 2025, публикация — 21 января 2026). Главные сигналы: разработчикам не хватает понятных best practices и более «современных» возможностей в языке и встроенных инструментах; ИИ-инструменты уже стали повседневностью, но качество и предсказуемость всё ещё подводят; а справка go по базовым подкомандам вроде go build , go run и go mod слишком часто вынуждает лезть в документацию.

    habr.com/ru/articles/987760/

    #Go #опрос_разработчиков #экосистема #best_practices #стандартная_библиотека #go_command #документация #ИИ #инструменты

  15. Реактивная Архитектура: Пишем надежный Optimistic UI на чистом RxJS (Pattern Compensating Transaction)

    Пользователи ненавидят спиннеры. Они хотят видеть лайк сразу после клика. Optimistic UI решает эту проблему, но создает новую: что делать, если сервер вернет ошибку? В императивном коде (Promise/async-await) откат состояния превращается в ад из try/catch и ручных мутаций переменных, порождая Race Conditions. В этой статье я покажу, как реализовать надежный паттерн Compensating Transaction на чистом RxJS . Мы построим архитектуру, где состояние это поток, который невозможно "сломать" частыми кликами или сетевыми сбоями. Никаких if/else, только чистые потоки. Построить реактивный UI

    habr.com/ru/articles/974068/

    #angular #rxjs #typescript #frontend #архитектура #паттерны_проектирования #optimistic_ui #reactive_programming #state_management #best_practices

  16. Лучшие практики в Sequence-диаграммах для системных аналитиков

    В данной статье я хочу поделиться опытом и рассказать о том, как системным аналитикам улучшить Sequence-диаграммы (диаграммы последовательностей) с помощью лучших практик. Я покажу, как некоторые подходы из мира программирования (те самые best practices и идеи из Clean Code ) помогают рисовать sequence-диаграммы чище и понятнее.

    habr.com/ru/articles/969192/

    #clean_code #plantuml #sequence_diagram #системный_анализ #системный_аналитик #best_practices #документация_проекта #диаграммы_последовательности #uml #umlпроектирование

  17. PCIe, водянка и райзеры: реальный опыт сборки сервера под 5 GPU дома

    Всё началось с желания автономно заниматься исследованиями в области искусственного интеллекта и запускать свои эксперименты без ограничений облачных сервисов или недостаточных ресурсов рабочих кластеров. Наука и исследования давно стали для меня не только профессией, но и хобби: запускать эксперименты, сравнивать модели, тестировать свежие идеи - всё это требует собственной инфраструктуры. Именно поэтому я решил собрать домашний GPU‑сервер «под себя» для полноценного AI‑ресёрча

    habr.com/ru/articles/962992/

    #сборка_GPU #опыт_эксплуатации #домашний_сервер #multigpu_workstation #ai_research #best_practices

  18. Как я научил Jetpack Compose показывать рекомпозиции в реальном времени

    Привет, Хабр! Меня зовут Иван Кузнецов, я Android‑разработчик в Кинопоиске. Сегодня расскажу историю разработки своего пет‑проекта, которая началась с код‑ревью очередного экрана на Jetpack Compose. Представьте, вы открываете пул‑реквест и взгляд цепляется за знакомые паттерны: нестабильный параметр в Composable‑функции, remember без ключа, применение трансформаций на Layout‑фазе. Сразу хочется написать комментарий‑лекцию о том, почему это ударит по производительности и почему лучше так не делать. Вот только объяснения отнимают время и не всегда наглядно доносят суть проблемы. Особенно это актуально для новичков, которым сложно сопоставить абстракции с реальным поведением UI. А ведь для сложных асинхронных штук вроде RxJava или корутин есть визуализаторы — RxMarbles и FlowMarbles, а для самой частой головной боли в Compose до сих пор нет. Вот бы вместо стены текста просто кинуть ссылку со словами: «Смотри, вот что твой код делает на самом деле». В этой статье я расскажу о разработке собственного приложения, которое в реальном времени визуализирует рекомпозиции. Чтобы заставить его работать, пришлось залезть под капот компилятора Kotlin и подружиться с его внутренними API: FIR и IR.

    habr.com/ru/companies/yandex/a

    #jetpack_compose #kotlin #рекомпозиция #best_practices #android #мобильная_разработка

  19. Артефакты архитектуры: какие, зачем и как их организовать

    Представьте город без карты. Дома построены, улицы проложены, люди живут своей жизнью — но никто не знает, как всё это связано между собой. Каждый архитектор чертит по-своему: у одного — квадраты, у другого — кружки, а у третьего — загадочные стрелки, ведущие в никуда. Когда решения принимаются «на глаз», последствия не заставят себя ждать. В результате, ценные находки теряются в ворохе несогласованных схем. Именно так выглядит ИТ-ландшафт без продуманной системы архитектурных артефактов. Сегодня я расскажу, как мы в МТС наводим в этом хаосе порядок, почему выбрали путь EAoaP — и что сделали, чтобы эта красивая теория прижилась в реальной, живой экосистеме из сотен продуктов. Привет, Хабр! Меня зовут Наиль Миннахметов и я — корпоративный архитектор в МТС. В прошлом –– разработчик, аналитик и консультант в телекоме, финтехе, eCom, ритейле, логистике, фарме и FMCG. Занимался много чем, но всегда это было связано с IT. Я помогал разным бизнесам расти, становиться надёжнее или зарабатывать больше.

    habr.com/ru/companies/oleg-bun

    #архитектура #EAoaP #C4_Model #визуализация_систем #best_practices #системный_анализ #разработка_по #фреймворки #Rozanski__Woods #Kruchten_4_1

  20. 15 типичных ошибок начинающих автоматизаторов (и как их избежать)

    Начинающие автоматизаторы часто наступают на одни и те же грабли: от отсутствия параметризации до связанных автотестов. В этой статье — разбор ошибок и советы, как писать тесты так, чтобы они жили долго и стабильно.

    habr.com/ru/articles/932590/

    #тестирование #pytest #autotest #автотесты #автотестирование #qa #qa_automation #best_practices #api_testing #ui_testing

  21. SOLID, DRY, KISS, YAGNI и др. принципы разработки, пугающие новичка в IT

    Разработка — это не только про код, но и про подходы. В этой статье я постарался собрать и объяснить ключевые принципы проектирования, которые часто упоминают в собеседованиях, в статьях на Medium и в комментариях на GitHub, такие, как SOLID, DRY, KISS, YAGNI, APO, BDUF, бритва Оккама. 📌 Что внутри: 1. Понятные объяснения без перегрузки теорией 2. Примеры на Java (но подойдут и другим разработчикам) 3. Иллюстрации и метафоры, чтобы не уснуть Будет полезно как новичкам, которые только слышали про SOLID и др. подходы в проектировании, так и разработчикам, которые хотят освежить знания или взглянуть на принципы под другим углом.

    habr.com/ru/articles/925208/

    #ооп #принципы_разработки #solid #dry #kiss #yagni #apo #bduf #бритва_оккама #best_practices

  22. Тонкости работы с логгированием в Python: краткий гайд для разработчиков

    Логирование является одним из ключевых и важнейших элементов разработки и эксплуатации приложений. Умение правильно вести журнал логов — ключ к эффективной отладке и мониторингу приложений. Оно дает ценную информацию всей цепочке заинтересованных лиц: от разработчиков и системных администраторов до руководителей бизнеса. В статье рассмотрен де-факто стандарт логирования — модуль logging в Python. Я дам общие рекомендации по его настройке и опишу практики применения модуля, подходящие для большинства случаев.

    habr.com/ru/articles/899244/

    #python #logging #логирование #bestpractices #best_practices #best_practice #журналирование #советы_начинающим #советы

  23. [Перевод] PHP Typed: Маленький Composer пакет, который нарушает PHP правила ради вас

    Звучит слишком громко? Давайте уточним, чтобы избежать обманутых ожиданий: этот пакет использует немного магии вне Хогвартса, и будет действительно полезен любителям строгой типизации в PHP.

    habr.com/ru/articles/868640/

    #php #laravel #wordpress #symphony #composer #cms #type_casting #code_quality #best_practices

  24. Лучшие практики TypeScript: Строгая типизация, гибкость и производительность

    TypeScript давно стал неотъемлемой частью современного фронтенда, но чтобы действительно раскрыть его возможности и избежать подводных камней, важен опыт и осознанное применение его возможностей. В этой статье мы рассмотрим углубленные практики работы с TypeScript, которые могут улучшить производительность и читаемость кода в крупных проектах.

    habr.com/ru/articles/859016/

    #typescript #best_practices #типизация #Frontend #дженерики #Утилитарные_типы #чистый_код #javascript #types

  25. Flutter. Стиль кода — это все

    Стиль кода — это все. Это свежий взгляд на простое и сложное. Стильный, но простой код лучше, чем сложный, но не стильный. Сложный и стильный — это искусство. Разработка может быть искусством, тестирование может быть искусством. Оптимизация кода — тоже искусство. Не все придерживаются стиля, да и не у всех он есть. В коде может быть больше стиля, чем в дизайне, но не у всего кода есть стиль. Фреймворки безмерно стильные. Когда разработчик находит идеальное сочетание функциональности и читаемости в своем коде, это стильно. Люди тоже диктуют стиль. Стиль был у Роберта Мартина, у Дэвида Томаса, у Мартина Фаулера, у Эрика Эванса... Я встречал стиль в открытом исходном коде. В среде разработчиков стильных проектов куда больше, чем в каком-либо другом сообществе. Стиль — это атрибут, подход и структура. Выше – юмористическая интерпретация слов из поэмы Чарльза Буковски «Стиль». Вариативность стиля кода настолько многогранна, что не всегда удается прийти к единому мнению в пользу того или иного подхода, поэтому стиль в сегодняшнем понимании — это целая культура. Сегодня мы будем разматывать клубок лучших практик и скрытых трюков. После этого ваш код станет не просто рабочим, а настоящим произведением искусства. С учетом моего опыта работы мобильным разработчиком в TAGES, я готов поделиться своими знаниями и практиками, которые могут быть полезны для вашего проекта. Пристегнитесь потуже — мы взлетаем!

    habr.com/ru/articles/831470/

    #Flutter #Dart #mobile_development #кроссплатформенная_разработка #мобильная_разработка #best_practices #code_style #стиль_кода #лучшие_практики #flutter_mobile_development

  26. Простые приёмы, которые сделают ваш код нагляднее

    Упорядоченный, опрятный, хорошо написанный для восприятия код помогает быстрее выявлять случайные ошибки, и позволяет глазам быстрее " парсить " код, что в целом ускоряет время выполнения задач . В этой статье я, Андрей Рик, fullstack-разработчик с 10+ лет опыта коммерческой разработки, рассказываю как и зачем писать опрятный код. Читать статью

    habr.com/ru/articles/831570/

    #frontend #react #next #оформление_кода #best_practices #Андрей_Рик #junior #middle #code #код

  27. [Перевод] Выбираем между инструкциями RUN, CMD и ENTRYPOINT

    Для выполнения похожих задач в Docker нередко есть несколько решений. Одна запутанная область касается инструкций RUN , CMD и ENTRYPOINT Dockerfile. В этом переводе обсуждаются различия между этими инструкциями и показываются примеры их использования в форматах shell и exec. В чём разница между RUN, CMD и ENTRYPOINT?

    habr.com/ru/companies/nixys/ar

    #docker #dockerfile #инструкции_docker #run #cmd #entrypoint #shell #best_practices #перевод

  28. Новый комплексный подход к разработке в Bitrix на D7

    В данной статье - покажу новый крутой подход к разработке сайтов на bitrix, который обеспечит легкость в поддержке и масштабируемости. Покажу как работать с bitrix cli внутри компонентов, покажу как писать тесты и browserlist, чтобы наш CSS и JS собирался согласно browserlist. Покажу как возвращать через ajax именно компоненты Bitrix с их стилями и скриптами. И напишем простой компонент на примере этого подхода.

    habr.com/ru/articles/815439/

    #Bitrix #ООП_Компоненты #JavaScript #bitrix_cli #Bitrix_D7 #frontendразработка #backendразработка #новый_подход #best_practices #mvc