Хабрахабр

  • Фото chatGPT написал за меня статью для хабра и какой она вышла

    chatGPT написал за меня статью для хабра и какой она вышла

    DDD (Domain-Driven Design) - это подход к разработке ПО, который сосредоточен на понимании бизнес-домена и его моделировании с помощью техник и шаблонов. Он позволяет разработчикам создавать программные системы, которые эффективно отображают и поддерживают бизнес-процессы. В последнее время DDD широко используется совместно с функциональным программированием для улучшения читаемости, масштабируемости и сопровождаемости кода. Функциональное программирование предлагает множество инструментов для управления сложностью, а…

    Читать далее »
  • Фото Графический интерфейс для bash, делаем работу в командной строке удобнее

    Графический интерфейс для bash, делаем работу в командной строке удобнее

    Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом перейти на декларацию метода или на его юсаджи. После этого интерфейс командной строки выглядит как-то бедно. Конечно, он очень хорошо продуман, сделан настолько удобным, насколько это возможно в текстовом UI, но в графическом UI возможностей намного больше. Представляю вам плагин…

    Читать далее »
  • Фото [Перевод] PostgreSQL: настройка и оптимизация производительности. Часть 1

    [Перевод] PostgreSQL: настройка и оптимизация производительности. Часть 1

    Данная статья посвящена способам повышения производительности PostgreSQL и EDB Postgres Advanced Server (EPAS) с 10 по 13 версии. Мы начнём с аппаратного обеспечения и будем двигаться вверх по стеку, оставив напоследок SQL-запросы.  Примечание: детали настроек зависят от рабочей нагрузки. Мы даём общие рекомендации, которые станут неплохой отправной точкой для большинства развёртываний.  Проектирование При проектировании «голого» сервера для PostgreSQL нужно учитывать…

    Читать далее »
  • Фото Технотекст 2022: шорт-листы по номинациям

    Технотекст 2022: шорт-листы по номинациям

    Авторы отправили 675 заявок на Технотекст, а мы их перебрали и готовы показать номинантов. Короткие списки получились очень даже длинными, что не может не радовать. Победителей объявим до 14 апреля. Критерии оценки, списки судей и подборки статей по номинациям — в этом посте. Если нашли опечатку в тексте, выделите её и нажмите CTRL/⌘+Enter Система оценки Статьи будут оцениваться отдельно по техническим…

    Читать далее »
  • Фото Миграция приложения из OpenShift в «ванильный» Kubernetes

    Миграция приложения из OpenShift в «ванильный» Kubernetes

    OpenShift, Rancher и другие зарубежные Kubernetes-платформы официально больше не поддерживаются в России. Многим компаниям приходится искать альтернативные решения для управления контейнеризированными приложениями — например, «ванильный» Kubernetes или российские платформы. Хотя у Kubernetes-платформ одинаковая технологическая база, миграция сервисов с одной на другую неизбежно сопряжена с различными трудностями, связанными с особенностями реализации компонентов. В этой статье рассмотрен пример переезда приложения из OpenShift…

    Читать далее »
  • Фото [Перевод] Как создать микросервис на Rust при помощи gRPC

    [Перевод] Как создать микросервис на Rust при помощи gRPC

    ❯ Введение В сегодняшнем туториале по Rust мы откроем для себя мир gRPC. Для этого создадим очень простой микросервис с единственной конечной точкой, который будет отзеркаливать то сообщение, что мы ему пошлем. Чтобы протестировать наш микросервис, мы также напишем простой клиент на Rust. Перед изучением этого поста также будет полезно посмотреть предыдущие публикации автора по Rust: https://blog.ediri.io/lets-build-a-cli-in-rusthttps://blog.ediri.io/how-to-asyncawait-in-rust-an-introduction ❯ Предпосылки Прежде,…

    Читать далее »
  • Фото Как девять женщин могут родить ребёнка за месяц

    Как девять женщин могут родить ребёнка за месяц

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

    Читать далее »
  • Фото [Перевод] Поднимаем зомби: перехват контроля над мёртвым IoT-производителем

    [Перевод] Поднимаем зомби: перехват контроля над мёртвым IoT-производителем

    В 2017 году появилась компания NYCTrainSign, которая изготавливала реплики таймеров обратного отсчёта, показывающие, сколько осталось до прибытия следующего поезда Нью-Йоркского метро. Однако этот таймер не вешался на потолок, а ставился на стол в качестве стильного украшения дома. Человек, отвечавший за маркетинг, успешно смог привлечь интерес к проекту. Помню множество постов в Facebook* и Instagram*, демонстрирующих потенциальную пользу вывески для кафе…

    Читать далее »
  • Фото Error Budget, SLO и мониторинг: советы для начинающих SRE-инженеров

    Error Budget, SLO и мониторинг: советы для начинающих SRE-инженеров

    Книга Google о SRE, статьи экспертов, документация и обучающие курсы дают исчерпывающие знания о том, как в идеале должен работать SRE в компаниях. Правда, ключевое здесь – «в идеале». Работа с метриками и управление инцидентами в командах может сильно различаться по ряду причин: количество людей в команде, скорость выкатки нового функционала, число микросервисов, распределение компетенций и тд. Когда переходишь от…

    Читать далее »
  • Фото Динамическая База данных на Turbo Prolog

    Динамическая База данных на Turbo Prolog

    Теория Обычно программа на Прологе состоит из четырех основных программных разделов. К ним относятся: раздел clauses (предложений); раздел predicates (предикатов); раздел domains (доменов); раздел goal (целей). Раздел clauses - это сердце Пролог-программы; именно в этот раздел записываются факты и правила, которыми будет оперировать Пролог, пытаясь разрешить цель программы. Раздел predicates - это раздел, в котором объявляются предикаты и домены (типы) их аргументов. Раздел domains служит для объявления всех используемых нами доменов, не являющихся стандартными доменами Пролога. Раздел goal - это раздел,…

    Читать далее »


Кнопка «Наверх»