-
Работай с датой и временем правильно!
Можно бесконечно смотреть на три вещи: как горит огонь, течёт вода и как люди пытаются работать с датой и временем. Но одна из этих вещей мне окончательно надоела, поэтому я решил написать на эту тему целую статью.
-
System Design: чьё кунг-фу сильней
Мы все в той или иной степени архитекторы. А для архитектора всегда была важна насмотренность и широта знаний. Но где её получить, сидя на одном проекте долгие годы? Как минимум, часть информации можно найти в книгах. Конечно, никто не будет досконально описывать архитектуры реальных систем, но принципы построения больших систем найти можно.
-
Три множителя для AI-ускорения
Минувшие две недели были крайне насыщенными: Podlodka AI, а вместе с этим подготовка и участие в TechLead. Всё это заняло большую часть моего свободного времени и отодвинуло все остальные активности на второй план. Но всё было не зря – концентрат полученной информации заставляет по-новому взглянуть на уже знакомые вещи или начать изучать что-то новое.
-
Deadline Propagation
Знакома ситуация: переключаете нагрузку на развернутый сервис, а он ложится, и так по кругу? Почему-то в контексте распределённых систем про Deadline Propagation говорят намного реже, чем должны. Сегодня я намерен исправить эту несправедливость.
-
Повод задуматься
Вы уже заметили, что у меня есть привычка делиться своими наблюдениями. Обычно нет какого-то чёткого контент-плана; идеи постов возникают в процессе работы, чтения книг, статей, информационных каналов. Сегодня не будет классического поста, сегодня будет список коротких тезисов – наблюдений, которые однажды заставили меня остановиться и задуматься.
-
Факторы принятия и пересмотра решений
Как вы принимаете архитектурные решения? Согласитесь, что вопрос непростой даже для человека с опытом. Давайте подумаем и попробуем ответить на этот вопрос структурно.
-
От разработчика к AI-агенту
В мире разработки появился искусственный интеллект – катализатор, ускоряющий все процессы. AI действительно ускоряет разработку, но не делает её автоматически лучше – он просто масштабирует текущее состояние проекта. Если в коде царит хаос, AI поможет быстрее его размножить; если есть структура – он начнёт её усиливать. Существуют ли практики, которые позволят заложить основу, способную одинаково хорошо работать как для людей, так и для AI-агентов? Позволят ли они ускорить процесс передачи (управления)?
-
Chronicle Queue - Kafka на минималках
Что, если нужна простая и высокопроизводительная очередь, но вы не хотите усложнять решение путём добавления полноценного брокера? Или нужно обеспечить распределённую обработку огромного потока событий с непредсказуемыми всплесками активности? Сегодня поговорим еще об одном классе решений – локальные очереди.
-
Важность авторского контроля
Каждый раз ловлю себя на мысли, что пока какая-то концепция не укоренится в реализации проекта, она неминуемо требует авторского контроля. И чем сложней решение, тем сильней должен быть контроль, особенно на старте разработки.
-
Неожиданный параллелизм при обработке сообщений в Kafka
Есть распространённое заблуждение, что в рамках одной консюмер-группы сообщения одной и той же партиции топика Apache Kafka обрабатываются последовательно, одно за другим. И конкурентный доступ к сообщениям партиции со стороны консюмера невозможен. Спешу вас разуверить, такое возможно, и вот вам моя история.