🚀 ЗАВТРА В 18:30 — ПРЯМОЙ ЭФИР / ВСТРЕЧА
Друзья, напоминаю: завтра встречаемся в обычное время.
Ссылку на подключение дам отдельным постом ровно в 18:30 — не потеряйтесь!
🔧 Чем займёмся:
· Продолжим пилить инструменты Pinout — погружаемся глубже.
Спроектируем тулзу pinout-openapi и обсудим концепт.
Посмотрим как харнес поможет спроектировать то, что нужно.
· Живое общение: отвечу на ваши вопросы, обсудим идеи.
📌 Что было на прошлой встрече:
Мы доработали план разработки в нескольких репах, обсудили идею и подготовили постановку, которую скормили машине;)
---
✅ Кто будет — ставьте🔥 реакцию чтобы я знал, сколько пуншей готовить ))
До связи! 💻
Друзья, напоминаю: завтра встречаемся в обычное время.
Ссылку на подключение дам отдельным постом ровно в 18:30 — не потеряйтесь!
🔧 Чем займёмся:
· Продолжим пилить инструменты Pinout — погружаемся глубже.
Спроектируем тулзу pinout-openapi и обсудим концепт.
Посмотрим как харнес поможет спроектировать то, что нужно.
· Живое общение: отвечу на ваши вопросы, обсудим идеи.
📌 Что было на прошлой встрече:
Мы доработали план разработки в нескольких репах, обсудили идею и подготовили постановку, которую скормили машине;)
---
✅ Кто будет — ставьте
До связи! 💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
🔥 Пора снимать видосы!
Смешные но по делу.
Я уже подготовил дерзкий SDLC без вот этого вот консервативного финтеха ;)
Врываемся в дерзкое тестирование в нашем диком мире:
— Тесты до нагрузки (чтобы не было мучительно больно);
– нагрузку разберем позже;
— Карго-культ и те самые "усложнялки", которые инженеры подкидывают нам как сюрприз.
Мне нужен тулинг, который наконец поставит разработку платформы на поток. 🚀
Его и пилим ;)
чтобы взлететь, нужно сначала пусковую отстроить.
Поэтому стартуем с базы инженерного мастерства и ковыряем CI/CD до самых косточек.
А потом в реальном времени спроектируем сложную систему и разработаем севместно с машиной. Все расскажу и покажу.
Готовьте гиты, будет жарко!
Без лишних съездов с трассы, только прямая дорога в пром ;))). 🛠️
Highway to prod ;)
#codemonstersvlog
Смешные но по делу.
Я уже подготовил дерзкий SDLC без вот этого вот консервативного финтеха ;)
Врываемся в дерзкое тестирование в нашем диком мире:
— Тесты до нагрузки (чтобы не было мучительно больно);
– нагрузку разберем позже;
— Карго-культ и те самые "усложнялки", которые инженеры подкидывают нам как сюрприз.
Мне нужен тулинг, который наконец поставит разработку платформы на поток. 🚀
Его и пилим ;)
чтобы взлететь, нужно сначала пусковую отстроить.
Поэтому стартуем с базы инженерного мастерства и ковыряем CI/CD до самых косточек.
А потом в реальном времени спроектируем сложную систему и разработаем севместно с машиной. Все расскажу и покажу.
Готовьте гиты, будет жарко!
Без лишних съездов с трассы, только прямая дорога в пром ;))). 🛠️
Highway to prod ;)
#codemonstersvlog
🔥7👍2❤1
codemonsters.log
🚀 ЗАВТРА В 18:30 — ПРЯМОЙ ЭФИР / ВСТРЕЧА Друзья, напоминаю: завтра встречаемся в обычное время. Ссылку на подключение дам отдельным постом ровно в 18:30 — не потеряйтесь! 🔧 Чем займёмся: · Продолжим пилить инструменты Pinout — погружаемся глубже. Спроектируем…
Погнали https://telemost.yandex.ru/j/8669013602
🔧 Чем займёмся:
· Продолжим пилить инструменты Pinout — погружаемся глубже.
Спроектируем тулзу pinout-openapi и обсудим концепт.
Посмотрим как харнес поможет спроектировать то, что нужно.
· Живое общение: отвечу на ваши вопросы, обсудим идеи.
🔧 Чем займёмся:
· Продолжим пилить инструменты Pinout — погружаемся глубже.
Спроектируем тулзу pinout-openapi и обсудим концепт.
Посмотрим как харнес поможет спроектировать то, что нужно.
· Живое общение: отвечу на ваши вопросы, обсудим идеи.
telemost.yandex.ru
Звонок в Яндекс Телемосте
По ссылке вы сможете подключиться к звонку
🛠 На митапе:
— Спроектировали pinout-openapi (C4: С1 в pinout, C2-C3 — в openapi).
— Обновили README.
— Гульнара помогла с Use Case'ами (Cockburn), документация стала чётче.
⚠️ Выявили риски со сборкой OpenApi и $ref — вынесли в таблицу. Решили не усложнять, сначала проверим в деле.
📌 План: допрограммируем по дизайну, на след. митапе (вторник) протестируем на проекте.
Получилось достойно. Давно собирался затащить c4.
Скиллы доработаны🧸
👋 Что ещё улучшить? Пишите в комментариях.
— Спроектировали pinout-openapi (C4: С1 в pinout, C2-C3 — в openapi).
— Обновили README.
— Гульнара помогла с Use Case'ами (Cockburn), документация стала чётче.
⚠️ Выявили риски со сборкой OpenApi и $ref — вынесли в таблицу. Решили не усложнять, сначала проверим в деле.
📌 План: допрограммируем по дизайну, на след. митапе (вторник) протестируем на проекте.
Получилось достойно. Давно собирался затащить c4.
Скиллы доработаны
👋 Что ещё улучшить? Пишите в комментариях.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍2🔥2
🔌 pinout: спроектировали валидатор OpenAPI-контрактов и попутно прокачали свои скиллы разработки
На этой сессии проектировали инструмент, который на pre-merge стадии в CI проверяет, что потребитель REST-сервиса совместим с
прод-контрактом поставщика — сравнением их OpenAPI-спек. Без генерации клиентских либ, без подъёма заглушек: чистая функция
«спека vs спека».
🔗 Экосистема: https://github.com/codemonstersteam/pinout
🔗 Сам валидатор: https://github.com/codemonstersteam/pinout-openapi
Что зацепило больше всего
📐 Системные use case по Коберну.
Оказалось, что fully-dressed use case (акторы, предусловия, основной сценарий, extensions =
режимы отказа, гарантии/exit) — это не «бумажка для галочки», а рабочая спецификация. Структура use case изоморфна Gherkin: Main
Success → happy-тест, каждый Extension → один сценарий отказа. Формула сошлась сама собой: N сценариев = 1 + число extensions.
🗺 C4 как уровни дизайна. Разложили проект по уровням C4 на Mermaid (рендерится прямо в GitHub):
• C1 (контекст экосистемы) — в концепт-репо
• C2 + C3 (контейнер + дерево модулей) — в компоненте
• C4 = тот самый системный use case «как работает программа»
📄 Живой пример: https://github.com/codemonstersteam/pinout-openapi/blob/main/docs/design/contract-validate/c4.md
Главный инсайт — это всё прошивается в систему
Получилась сквозная трассировка:
use case (Cockburn)
→ вертикальный слайс
→ компонентный тест
→ узлы графа контрактов.
1 слайс = 1 внешний вход = 1 use case.
Ничего не выдумывается из кода — каждый компонентный тест выводится из соответствующего extension use case, с двусторонней сверкой (нет extension без теста и нет теста без extension).
Как мы доработали скиллы разработки
По следам сессии внесли правки прямо в процедуры скиллов (не в «когда-нибудь потом»):
✅ documentation — обязательные C4-диаграммы по уровням, системный use case как C4-уровень, таблица сбоев в README, gate:
документация только по скиллу (никакой свободной прозы мимо процедур)
✅ program-design — C4 по уровням, модель ошибок (коды → exit, «деградация видна, не маскируется под успех»), трассировка
UC→слайс→тест, conformance-gate (STOP перед хендоффом)
✅ component-tests — режимы отказа берутся из extensions use case
✅ роль plan-reviewer — асимметричная проверка соответствия дизайна скиллу
Плюс зашили несколько жёстких правил в скилл проектирования:
• Один внешний вход = один Request. Все параметры (включая флаги CLI) собираются в единый Request; флаг — это поле Request, а не
отдельный аргумент или «прокинутый сбоку» io.Writer. Внешний ввод парсится только в адаптере.
• Развилки по флагам — это юниты, а не компонентные тесты. Выбор «куда писать» (--out) и «в каком формате» (--format)
оформляется чистой функцией (resolveDestination, renderReport) и покрывается юнит-тестами. В компонентные сценарии идёт только
режим отказа записи — иначе матрица stdout/файл × json/md раздувает число сценариев.
• Запрет «тестового» второго метода I/O (WriteTo(io.Writer) рядом с боевым Write) — решение выносится в логику, лишний шов не
заводится.
Вывод сессии: use case по Коберну + C4 + вертикальные слайсы — это один связный конвейер, а не три отдельные практики. Когда они
сшиты, дизайн перестаёт расходиться с тестами и кодом by design.
#codemonstersvlog #разработка #архитектура #C4 #UseCase #OpenAPI
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - codemonstersteam/pinout: Ecosystem of tools for validating contracts between services based on their OpenAPI/AsyncAPI…
Ecosystem of tools for validating contracts between services based on their OpenAPI/AsyncAPI specifications. Umbrella project for pinout-asyncapi, pinout-openapi, pinout-netlist. - codemonstersteam...
🔥3👍1👏1