gram news
Аватар канала Организованное программирование | Кирилл Мокевнин

Организованное программирование | Кирилл Мокевнин

@orgprog

Делюсь опытом и обучаю. И ИИ? И ИИ. Ютуб https://youtube.com/@mokevnin Хекслет AI Клуб @hexletclub. Реклама на канале https://telega.in/c/orgprog Для предложений в личку канала

14,100подписчиков

Открыть канал

Последние посты

  • Организованное программирование | Кирилл Мокевнин

    21 сент., 16:43изменён

    Банда четырех для эпохи агентовКоличество паттернов по тому, как эффективно работать с ИИ, дошло до точки, когда их уже нужно собирать, фильтровать и классифицировать. Как ни странно, чего-то подобного в сети нет даже на английском (в том виде как мне бы хотелось), поэтому пришлось делать самому.В общем, встречайте, возможно, это первая книга, которую я допишу до конца: Agentic Design Patterns.Что это такое? Каталог паттернов агентного программирования в духе «Банды четырёх». Каждый паттерн это проверенное решение повторяющейся задачи при работе разработчика с ИИ-агентом: как поставить задачу, дать контекст, проверить результат и организовать проект.Сейчас в книге уже 32 готовые главы: 27 паттернов и 5 антипаттернов. Они разбиты на шесть больших разделов: постановка задач, SDD, работа с контекстом, верификация, организация проекта и антипаттерны.Например, там уже есть Four
    mokevnin.github.ioВведение · Agentic Design Patterns
    4,1601176442993Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    16 сент., 15:50

    Главное правило принятия архитектурных решенийКогда-то давно в одной из книжек я прочитал такую фразу: "Defer decisions until the last responsible moment". Не то чтобы я сразу понял и проникся, но со временем, этот принцип стал важной частью моих правил работы.Его популяризировали Mary и Tom Poppendieck в книге Lean Software Development: An Agile Toolkit. Суть принципа в том, что необратимые или дорогие в изменении решения стоит принимать не "как можно раньше", а настолько поздно, насколько это безопасно, то есть когда дальнейшее откладывание уже начнет закрывать важные альтернативы.В архитектуре это обычно формулируют примерно так:> Delay architectural decisions until the last responsible momentВажно именно responsible, а не possible. То есть это не "тянуть до последнего", а сохранять пространство вариантов, пока появляется новая информация.Приведу пример. Когда Хекслет
    ru.hexlet.ioКурс «Системный дизайн»Научитесь проектировать масштабируемые системы, рассчитывать нагрузку и готовиться к секции System design на собеседовании.
    6,12046231331Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    13 сент., 16:05изменён

    Сегодня у меня в гостях Александр Поломодов, который до недавнего времени был одним из проектировщиков AI SDLC трансформации в Т-банке. Мне давно было интересно узнать его мнение по тому, как трансформируются компании и разработка в будущем в гораздо более широком смысле чем просто SDD. Саша пропускает через себя много white papers и держит руку на пульсе. https://www.youtube.com/watch?v=uImPHIhHzFsTelegram | Аудио | vk | Системный дизайн
    YouTubeКак AI изменит разработку ПО: будущее программистов, команд и IT-компаний /Александр Поломодов #92🔹 Присоединяйся к курсу «Системный дизайн» https://ru.hexlet.io/programs/system-design?utm_source=youtube Через несколько лет в IT может не остаться привычного разделения на фронтендеров, бэкендеров, аналитиков и тестировщиков. Не потому, что эти задачи…
    7,030321816101Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    12 сент., 18:31изменён

    Ассемблер неправильная абстракцияКаждый раз когда заходит речь о повышении уровня абстракции, в разговоре всплывает ассемблер в стиле "когда то мы писали на нем, а теперь не пишем". Особенно часто это повторяют сейчас в эру AI. Честно говоря, мне это никогда не казалось правильным сравнением и кажется я могу объяснить почему.Переход от ассемблера к языкам высокого уровня был переходом от слишком низкого уровня завязанного на технические детали, к конструкциям, которые задают базис для построения программ практически любой сложности. И вот этот уровень принципиально не менялся десятки лет. Менялись языки, платформы, библиотеки и способы организации кода, но сам программист продолжал работать примерно с теми же конструкциями. Программа на современном языке устроена концептуально почти так же, как программа пятьдесят лет назад.Но после этого характер повышения абстракции изменился.
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    7,21070201151Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    9 сент., 17:46изменён

    Уровни зрелости ai в sdlcНесмотря на то, что все кричат про ИИ, в большинстве компаний реальный уровень внедрения это "мы с клодом кодим парой". Это вроде как неплохо, но уже делают все так или иначе (отрицателей в расчет не берем). А дальше что? Общей модели не придумали, но есть плюс минус устоявшийся взгляд на уровни зрелости:1. AI как личный инструмент. Разработчик работает с coding-агентом: пишет код, тесты, разбирается в кодовой базе, делает рефакторинг.2. AI как часть командной среды. Агент получает нормальный контекст проекта: правила, документацию, архитектуру, историю решений, задачи. Появляются общие инструкции, skills, harness, SDD и воспроизводимые способы работы вместо "каждый промптит как умеет".3. AI внутри SDLC. AI подключается не только к коду, но и ко всему процессу: тикетам, документации, CI/CD, code review, мониторингу, логам и остальным инженерным системам.
    praxor.ruПраксор — AI SDLC для инженерных командЗа 3 месяца выстраиваем AI SDLC на пилотной команде: внедряем AI-агентов в процесс разработки, измеряем влияние на скорость и качество.
    7,210432516844Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    8 сент., 03:41

    Редкий случай, когда подкаст офлайн в студии и я гость 🙂 Рассказываю про свой путь программиста и предпринимателя, травлю байки про индустрию, рассказываю про эдтех и Хекслет. Наслаждайтесь https://www.youtube.com/watch?v=EQSzqxqgi50
    YouTubeЧто случилось с Hexlet - построил бизнес на 800 млн ₽, а потом всё рухнуло | БОЛЬШИЕ ЦИФРЫКирилл Мокевин — сооснователь школы программирования Hexlet. Проект вырос из идеи двух инженеров в бизнес с оборотом до 800 млн рублей, а затем столкнулся с падением рынка и сокращением в несколько раз. Есть своя история и большие цифры? Напишите нам: TG:…
    6,740341211Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    6 сент., 15:17

    В подкасте снова гости! В этот раз с Сергеем Бережным обсуждаем Performance Review в целом и конкретно в яндекске. https://www.youtube.com/watch?v=ceA9zUWp7IUКак вы относитесь к этой процедуре? Без нее лучше или хуже?Telegram | YouTube | AI Клуб
    YouTubePerformance Review в IT: как правильно оценивать разработчиков и сотрудников / Сергей Бережной #91🔹 Присоединяйся к курсу «ИИ для разработчиков» https://ru.hexlet.io/programs/ai-for-developers?utm_source=youtube Performance Review — одна из самых болезненных управленческих практик в IT. Люди спорят с оценками, менеджеры пытаются объяснить решения, сотрудники…
    7,4902112771Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    4 сент., 15:49изменён

    Сетапим окружение с нуляКоротко: mise умеет сетапить не только версии языков под проект, но и настраивать все окружение, по сути упрощая настройку как машины так и проекта до буквально одного файла. Я на этой неделе перевел на него и свои dotfiles (https://github.com/mokevnin/dotfiles) и проекты.Кто-то скажет, нафига мне это надо у меня все в докере. У меня на этот счет два соображения, даже если у вас язык в докере, снаружи часто есть разного рода cli, которые нужны всем (и нам и агентам). Сюда относятся cli агенты, терминалы, docker compose, kube, helm, git, google cloude, oh my zsh и еще тыща приблуд, которые хочется сетапить. И второе, есть немало людей, которые разрабатывают не только готовые приложения, но и библиотеки, например, я работаю с большим количеством опенсорса, где докера нет и нафиг не нужен (с ним тупо сложнее, а стейта там нет).Напомню, что mise (придеший на
    Иллюстрация к посту канала Организованное программирование | Кирилл МокевнинИллюстрация к посту канала Организованное программирование | Кирилл Мокевнин
    8,230481911622Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    1 сент., 18:18изменён

    Адаптация проекта под LLMЕсть два подхода к организации агентного программирования в проекте. Первый это все описывать и заставлять агентов делать все как надо, второй - менять проект под ожидания ии. Обычно в проектах делают и то и то, но сейчас я бы хотел акцентировать внимание на втором.Чем дольше живет проект, тем больше в нем косяков в именовании (чего угодно), кастомных решений и самопальных либ, разных подходов в реализации одного и того же (накопленных за годы). А еще просто банально устаревшие штуки, которые уже давно никем не используются. Раньше мы со всем этим жили, потому что времени на исправления нет, но где-то год назад начали массовые рефакторинги, которые сейчас почти закончены.Правда мне регулярно возражают, что вот у нас так а llm хочет сильно по другому или llm делает фигню. Это правда, llm может делать фигню, но далеко не всегда потому что она училась только
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    7,97073191842Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    30 авг., 15:42изменён

    Прошлый раз с лайвкодингом породил так много вопросов, что пришлось записать еще один выпуск. Он состоит из двух больших тем:1. Мой сетап. Как устроен мой воркфлоу кодинга: терминалы, комбо, слепая печать, навигация использование специализированных тулов. 2. SDD. В прошлый раз не все заметили, что кроме мелких тикетов, был один, который я делал по spec driven development, поэтому в этот раз мы прямо сетапим воркфлоу Matt Pocock и через него делаем одну задачкуhttps://www.youtube.com/watch?v=CVJ01XSmHEYp.s. Продолжать такие подкасты или хорош лайвкодинга?Telegram | Аудио | vk
    YouTubeЛайвкодинг с Claude Code: Spec-Driven Development на реальном TypeScript-проекте🔹 Присоединяйся к курсу «ИИ для разработчиков» https://ru.hexlet.io/programs/ai-for-developers?utm_source=youtube Первая часть видео: https://youtu.be/Eplxom-e1C4 В этом выпуске продолжаем тему AI-разработки и разбираем уже не просто лайкодинг, а то, как…
    7,500735319Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    23 авг., 15:48изменён

    Выпуск в сети! В этот раз я лайвкожу с агентами. Пока закрывал тикеты фиганул пару пулреквестов в mantine, которые уже приняли https://youtu.be/Eplxom-e1C4?is=3HME8iWRITMJxhe2Telegram | Аудио | vk
    YouTubeМой воркфлоу агентного программирования: параллельные сессии и пулреквесты в опенсорс🔹 Присоединяйся к курсу «ИИ для разработчиков» https://ru.hexlet.io/programs/ai-for-developers?utm_source=youtube Вторая часть видео: https://youtu.be/CVJ01XSmHEY Что происходит, когда разработчик почти перестаёт писать код руками и начинает программировать…
    10,2003920131Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    22 авг., 19:41

    Зачем ускорять разработку?Просто через раз вижу этот вопрос, во всех постах про агентов и новую эру автоматического кодинга. Переубедить конечно никого не получится, но написать надо, чтобы получилось структурировано. Погнали.Нет такого количества задачЕсли вы поговорите не с менеджерами, а владельцами бизнесов, то окажется, что количество идей у них такое, что за всю жизнь не сделать. То что из этого не всегда доходит до низов, проблема размера и процессов, которые тоже пытаются решать, поэтому так много разговоров про sdd и аналогичные истории.Если разработка стала в два раза дешевле/быстрее, становятся экономически оправданными задачи, которые раньше вообще не попадали в backlog.Это никому не нужноВ конкурентном мире невозможно сделать продукт до конца и сидеть сложа руки. А конкуренция приводит еще к тому, что кто первый встал, того и тапки. Сегодня вы на высоте, завтра
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    9,40071241291Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    19 авг., 15:18изменён

    Вперед к монорепамПрактика показывает, что эффективнее всего с агентами работать тогда, когда весь контекст есть по рукой и можно просто погрепать, причем речь идет не про один какой-то конкретный сервис/проект, а когда все репозитории проекта, лежат в одной папке, а возможно даже в одном репозитории. В таком случае и дока общая (это важно для спек) и все просвечивается насквозь и пулреквесты можно сразу бахнуть везде.Но многое зависит от размеров. Понятно что вообще все сервисы в одно место может быть перебором, скорее это правило применимо к командам и тому что у них там внутри. Но это не мешает теоретически заливать и чужие сервисы рядышком, чтобы по ним можно было погрепать если это имеет смысл.Объединения можно добиться двумя способами. Один это тупо все свалить в одну репу (что не заставляет нас собирать все как единый проект) и работать всегда из корня. Более того, в
    Иллюстрация к посту канала Организованное программирование | Кирилл МокевнинИллюстрация к посту канала Организованное программирование | Кирилл Мокевнин
    10,2005316721Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    16 авг., 15:55изменён

    Выпуск про spec driven development с Иваном Поддубным на практике https://youtu.be/oDxODi3X2Mg?is=SVMdRrndaqgbxmIeTelegram | Аудио | vk
    YouTubeSpec-Driven Development на практике: опыт компании из 100 человек / Иван Поддубный #90🔹 Присоединяйся к курсу «ИИ для разработчиков» https://ru.hexlet.io/programs/ai-for-developers?utm_source=youtube SDD (Spec Driven Development) постепенно превратился из эксперимента с AI-агентами в полноценный подход к организации разработки. Но что произошло…
    9,8802919142Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    11 авг., 13:36изменён

    Открытие дня. Все же знают dependabot, который обновляет зависимости всего и вся на гитхабе? Причем речь не только про пакетные менеджеры всех языков, но и например github actions и даже версии образов в Dockerfile. Так вот есть такое же решение, не привязанное к вендору.Небольшая предыстория. Помимо гитхаба у нас есть свой гитлаб с большим количеством реп, в котором так же находится инфраструктура запуска практик Хекслета. В нее входит репа с кучей Dockerfile под разные экосистемы, которые мы используем как базовые образы для практик запускающихся в браузере. В этой репе есть просто все что только можно себе представить: версии образов, версии дев тулов, версии зависимостей, причем часто указываемые напрямую в Dockerfile. Обновлять все это добро раньше было отдельным приключением. С иишкой стало проще, но один фиг это процедура, которой надо заниматься.А на днях делая очередное
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    12,00047181121Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    9 авг., 15:59изменён

    Как я провел летоНу все, прилетел, два с половиной месяца в рф пролетели как один день. Документы привел в порядок, кого надо прописал, кому надо сделал паспорт, оформил гражданство мелкому. В процессе оформление многодетства, но это уже можно закончить онлайн. Выступил на 6 конфах, провел пару мастерклассов и один двухдневный воркшоп, даже был фасилитатором на одном мероприятии, где разбирался вопрос внедрения ии в бигтехах. Развиртуализировался с кучей ребят включая моих читателей и познакомился с еще большим числом новых интересных людей.Так как прилетел с сыном, то его надо было постоянно где-то оставлять. Поэтому он у меня проводил все время в дневных лагерях. Начиная от батутов и роликов до плавания. Подтянул язык, офигел от тополей, метро и количества разного рода насекомых. У нас такого нет как будто (в майами комары почти отсутствуют например).На всех мероприятиях были
    10,3001336123641Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    28 июл., 11:17

    Программирование с явно выделенным состояниемОдна из моих любимых тем, про которую не устаю говорить. В модели данных часто бывает ситуация, когда состояние выражено не прямым образом, а косвенно. Буквально вчера я реализовывал кастомные тарифы под конкретных пользователей. Отличие такого тарифа от обычного сводится к тому, заполнено ли поле user_id в тарифе или нет. Если не заполнено, то значит это общий тариф, если заполнено, значит под конкретного пользователя и другие его не могут видеть.Это вполне рабочая схема и она встречается повсеместно, особенно в связке с датами типа deleted_at, но она обладает одним очень важным недостатком. Понимание того, что эта запись находится в особом состояние вычисляется через косвенный признак или, что хуже, через набор признаков. Об этом надо думать и каждый раз вспоминать и выуживать эту информацию.Сейчас, в эру агентного программирования,
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    10,50063186311Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    26 июл., 13:20изменён

    Новый выпуск подкаста про Agile, Scrum и ИИ трансформацию уже доступен https://youtu.be/FhthTCoR3uw?is=X5GCG6XrrFds65ws В этот раз с Асхатом Уразбаевым мы вспоминаем как это было и куда пришло. Взлеты и падения, культы карго и трансформации в компаниях. А что в конце? Дейли не нужен, вот такие пирогиTelegram | Аудио | vk
    YouTubeАсхат Уразбаев о взлёте и падении Agile: почему Scrum изменил индустрию и что происходит сейчас #89🔹 Присоединяйся к курсу «ИИ для разработчиков» https://ru.hexlet.io/programs/ai-for-developers?utm_source=youtube В этом выпуске мы поговорили с Асхатом Уразбаевым — одним из самых известных Agile-консультантов в России, основателем ScrumTrek и человеком…
    9,94026146111Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    22 июл., 10:24

    Можно разок похохмить? :)
    Иллюстрация к посту канала Организованное программирование | Кирилл МокевнинИллюстрация к посту канала Организованное программирование | Кирилл Мокевнин
    12,1001701913764Открыть в Telegram
  • Организованное программирование | Кирилл Мокевнин

    20 июл., 08:22изменён

    Иммутабельная денормализацияИзучение баз данных всегда сопровождается понятием нормализации, а конкретно первыми тремя формами, которые задают нам ограничения, помогающие правильно разложить все по таблицам. И это действительно база, без которой нормально работать не получится. Но есть, как обычно, нюансы.В реальных проектах выясняется, что нормализованные данные сложно соединять и выбирать. При глубоком уровне зависимостей, чтобы добраться до внешней сущности, нужно либо соединять 5 таблиц, либо делать 5 запросов. Пример из Хекслета. У нас есть программа обучения, которая состоит из модулей, в которые входят темы которые состоят из уроков, которые состоят из юнитов (теория, практика, тесты). На это все накручено много логики по прогрессу и отображению. В такой структуре, вопросы типа "какой урок следующий по порядку?" заставляют поломать голову.В таких ситуациях мы начинаем
    TelegramХекслетПрограммы обучения - https://ru.hexlet.io/courses Сообщество @hexletcommunity AI Клуб @hexletclub Поддержка @hexlet_help_bot
    11,60037165311Открыть в Telegram