TGViewer
Channel Public Channel
Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами

Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами

@rybakalexey

Управление и разработка больших IT-проектов; статьи, выступления. Https://DevHands.io - хайлоад, AI, обучение, консалтинг. ЛС: @alexeyrybak.
Subscribers
10.1K
Photos
132
Videos
4
Links
358
Recent Posts 18 shown
Post #567 1.23K
Пошаговый план для запуска убыточного B2B SaaS

• Найди уникальную идею, не имеющую аналогов в мире
• Полируй код полгода, пока продукт не будет идеальным
• Продвижением занимайся только после того, как продукт будет готов

А если хочешь узнать, как делать прибыльный продукт, переходи в канал Твой Пет Проект, там собрано все, что нужно знать начинающему фаундеру:

• выбор идеи, за которую заплатят
• резерч ниш
• где брать трафик 
• типичные ошибки новичков
• еженедельные разборы кейсов

Примеры кейсов, которые есть в канале:
- $30K за год на виртуальной девушке
- Первая $1K MRR на сервисе видеопозравлений
- $75M на нейро бабушках

Реклама. ИП Табунов Михаил Валерьевич ИНН 773379585100.
erid: CQH36pWzJqMpenbHkHnCN5wnfCLoqKmsuvFLtF36CYrUbR
  • 🤔 8
  • 👍 3
  • 🔥 3
Post #566 1.9K
Высокомерная ирония как управленческий инструмент: колхозная токсичность или шоковая терапия?

Как считаете, допустимо ли подобное поведение Директора? Скажу сразу, простого и стопроцентно однозначного ответа может и нет, но предлагаю выбрать 1 реакцию «за» или «нет». Свой разбор пришлю чуть позже.

Тимлид: Всё разваливается! Сроки нереальные, это невыносимо! Смежный отдел бездельники, вообще не понимаю, как в таких условиях можно работать.

Директор: Понятно. Вызваем оркестр и торжественно провожаем проект в последний путь. (Пародируя Харламова, нажимая на мнимую кнопку вызова): Леночка! Принесите водки, у нас с камрадами траур.

Тимлид: Я серьёзно. Мы не успеваем.

Директор: давайте попробуем второй заход — без конца света. Что конкретно не успеваем? На сколько дней? Чем я могу вам помочь?

Тимлид: Интеграция задерживается минимум на три дня. Мне нужно либо перенести тестирование, либо получить ещё двух инженеров.

Директор: Ну вот, добрались до вербализации ограничений! (театрально) Не мальчика, но мужа разговор!! (нажимая мнимую кнопку) Леночка, водку отменить. Несите медаль «За победу над собой».

🔥 недопустимо, колхоз, токсичность, неуважение и нарушение границ
👍🏻 допустимо, шоковая терапия, няньки остались в детском саду
  • 👍 118
  • 🔥 101
Post #565 2.13K

Forwarded from Онтико (Oleg Bunin)

Тусовка, всем привет от Игоря Сысоева!

Вы же знаете, кто это такой, а фронтенд это не только JavaScript с вёрсткой? :)

Встречались вчера одним из первых составов ПК HighLoad++ периода бурного роста.

Это примерно когда у первого айтишника возникла мысль "А не плохо бы смузи!", DevRel'ы ещё не знали, что они DevRel'ы. На HL++ стояли стенды Facebook, Google и Oracle, а Брюс Момжан был завсегдатаем конференции и мы с ним пили водку в Бочке.

В общем, в прошлой жизни.

Все выросли в IT-предпринимателей, у одного даже получилось :) Разговоры скачут с цепей Маркова на организацию продаж.

У Фишера продюсерский центр по обучению highload, Макс прогоняет через себя половину телевидения в стране, Костя пишет (пишет ему теперь Клод) продает СУБД Пикодата, а я торгую билетиками.

Вот только Игорь ничего не продает, может себе позволить.

А ведь были же нормальными людьми разработчиками!

Куда-то пропали с моих радаров из того состава только Слоник_в_домене и Постгресмен. Ну и некому раз в год приносить программу HighLoad++ на проверку (я приносил её старшим товарищам, Илье Сегаловичу и Володе Габриеляну).
  • 🔥 42
  • 👍 6
Post #564 2.17K
Конфа для управленцев Avito.Tech.Conf 👀

Ребят, Авито 26 сентября устраивают большую конфу для CTO/CPO, IT-лидов и управленцев.

Среди участников — топы/лидеры Авито и не только. В программе: управление разработкой, AI PDLC, платформенная разработка, круглые столы и куча активностей, включая бильярд, дартс и прочие активности.

Мероприятие субботнее, на целый день, пройдет в прикольном AG Loft (я там был, там уютно). Короче, отличный способ послушать коллег, откалиброваться, встретить старых друзей и в целом переключиться от рутины и неизбежной осени.

Попасть можно через регистрацию.
  • 🔥 7
  • 👍 6
  • 🤔 3
Post #563 2.19K
Всем большое спасибо, кто проголосовал. Большинству интересны вопросы архитектуры — это понятно. Но также здорово, что половине интересен AI, а трети — софт-скилы и менеджмент.

Короче, есть такая идея: сделать серию постов с “глоссарием” понятий, паттернов и анти-паттернов на эти темы. Читаете, что-то новое узнаете, всем профит.

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

Итак, условно можно разделить паттерны отказоусточивости на две группы, и они про разные цели
- как защититься от отказа чужого сервиса, взгляд со стороны “клиента”
- как ограничить внешние запросы, чтобы не вызвать собственный отказ

Это разделение условно, вот например, паттерн exponential backoff (with jitter конечно, у вашего exponential backoff ведь есть jitter? ладно, шучу) — exponential backoff короче, одновременно и заботится о клиенте, и о том, чтобы не перегружать вызываемый сервис.

Конечно начать надо с простых понятий, например, с timeout:
• таймаут это ”жесткая” верхняя граница: если она превышена, операция на клиенте прерывается
• таймауты ставятся на разные операции: например, есть connect, read, write timeout
• connect timeout может быть до установления TCP-соединения, а может быть до установления TLS-хендшейка в каких-то продвинутых прикладных библиотеках, и это еще не такой большой сюрпиз как то что
• connect timeout может вдруг не сработать потому что внутри connect есть резолвинг днс, а он скорее всего блокирующий со своим таймаутом, поэтому фиговый DNS/конфигурация может неслабо налить в ваш latency
• read-timeout надо смотреть внимательно api что конкретно он ограничивает, т.к. это может быть общий таймаут, или просто таймаут между последовательной вычиткой данных, или даже таймаут на чтение заголовков (в Go например есть Transport.ResponseHeaderTimeout)
• если операция на клиенте прерывается, но на самом деле статус что было на сервере “мы хз”, и это источник неприятных редких ошибок, поэтому операции, которые меняют состояние, должны иметь ключ идемпотентности (если вы не можете никак выучить это слово, запомните так: “идём, потент!”)
• если вы из бигтеха, и у вас цепочка вызовов между вашими четырьмя тысячами микросервисов, то встает вопрос на общий бюджет цепочки и начинается полная веселуха, спасает разве что сквозная передача остатка бюджета типа grpc-timeout.

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


Это значит, до ядра дошёл ACK (третий пакет в цепочке SYN, SYN+ACK, ACK),
которым клиент хочет сообщить серверу о том, что производит соединение. Если
backlog в этот момент не полный (см somaxconn и параметр в listen(2)), то
соединение на стороне сервер помещается в backlog, и дальше оно доступно для
accept(2).

Если же backlog полный (сервис подвис или по какой-то другой причине не делает
accept() так быстро, чтобы backlog не переполнялся), то пакет дропается и
увеличивается счотчик ListenOverflows.

У такого соединения, однако, всё же есть шанс быть установленным в дальнейшем,
т.к. tcp поддерживает re-transmits


Вот, таймауты, короче, кхм, очень простая штука. Дальше будет в таком же духе про retry, exponential backoff (с jitter, конечно), circuit breaker, bulkhead, fallback, hedged requests, rate limiting, throttling, backpressure, load shedding и steady state. Но помни %username% это всё кобол, в новом мире вайбкодинга это всё зашьют сначала в системный промт, а потом в претрейн, так что никому не понадобится даже “если отвалился, дёрни снова с экспоненциальной задержкой, но не более трех раз”.

🔥спасибо, подучил
  • 🔥 52
  • 👍 12
  • 🤔 6
  • 💯 1
Post #560 3.42K
Читаете пост/статью, смысл которой вам не до конца ясен, так как предметная область не вполне родная, вы замечаете кучу терминов и отсылок, вы словно «вязните» и раздражаетесь?

Ниже — простой рецепт, как может помочь LLM, и очередные соображения насчет Deepseek v4.1 Flash, арены, метода ELO и сравнения моделей.

Есть мнение, что Deepseek 4.1 Flash слабоватая модель, годная только для исполнения спек и фиксов. Вполне возможно, это так, но мне не нравится такая категоричность так же как использование линейной шкалы ELO в арене, создающей явные когнитивные искажения.

Я решил проверить DeepSeek на специальных задачах, язык не поворачивается назвать их ресерчами, скорее это такой рисерч-ассистент, помощник-онтологизатор.

Короче, задача частая: предположим, вы читаете статью, смысл которой вам не до конца ясен, так как предметная область не вполне родная, вы замечаете кучу терминов и отсылок, вы словно «вязните» в новом смысле, будто внезапно вместо идеального зрения у вас -5. Вы злитесь, вас это раздражает.

Например, для многих сейчас это частый паттерн при чтении статей об AI в целом, или ресерч-статей о методах и архитектурах для специалистов в AI/ML.

Как можно помочь читателю разобраться глубже? структурировать более детальный смысл статьи в «обучающем» ключе.

Например, вместо обычного саммари собрать «обучающее» саммари в три раздела:
- краткое содержание
- краткий глоссарий всех терминов
- другие наиболее важные либо цитируемые статьи с кратким описанием почему они интересны.

Я гонял такие промты на GPT, погонял и на DeepSeek. Мне в целом тексты GPT показались приятнее, но не катастрофически, и если подходить с точки зрения рейтинга, то это никак не 0 и 1, скорее 90% и 80%. И это точно не «разные классы», по крайней мере, на таких задачах.

Является ли такая задача слабой? С одной стороны да, тут мало «синтеза». С другой стороны с точки зрения интеллекта такая структуризация в целом очень частая и важная задача, фактически же это enabler построения любого пайплайна: из общего/краткого описания собери структуру, гейтвеи, это уже ближе к оркестрации чем к фиксам.

Что лишний раз меня убеждает в том что 1) по крайней мере арена - сомнительный источник информации о сравнении качества моделей 2) хороший манифест/процесс и слабая (но быстрая) модель может быть лучше супер-модели но слабого процесса
  • 💯 17
  • 👍 7
  • 🔥 5
  • 🤔 4
Post #558 3.72K
TL;DR
Мини-промт для автоматической генерации псевдо-CRM сгенерил на китайской LLM-модели с открытыми весами Deepseek 4.1 Flash работающее решение за 2 минуты, потратив 5 центов юэсдэ.

Расчехляем Deepseek 4.1 Flash:
• Лендинг и админка (псевдо-CRM, но вообще говоря у той же тильды вообще CRM-фич ноль), вайб-кодинг режим, не по спеке, фичи самые базовые
• Меньше минуты работы, скорость уровня “летает” (вендор - новита)
• TFT (time-to-first-token): 1-1.5 секунды
• tok/s: 40-340
• Общее время: около 2х минут
• Цена: 5 центов за весь прогон

API-режим! с оплатой по токенам. И 5 центов. Не бенч, не спека, нулевый реп, минимум фич, смешной контент, никакой дизайн, да, всё понятно. Но всё равно, 5 центов не ожидал. И это Новита, то есть Калифорния, на оборудовании NDIVIA.
  • 🔥 10
  • 👍 8
Post #557 3.6K
Доброе утро! Конспективно об успехах зарубежных работников интеллектуального труда.
- Все пишут про “решение уравнения Навье-Стокса”, потому что OpenAI так написал, но это не “решили уравнение”, а “найдено прикольное сингулярное решение”
- формально решение уравнения нельзя найти аналитически (формулой), как нельзя аналитически описать движения дыма от сигареты; хаотические модели характеризуются размерными, статистическими, спектральными характеристиками множества решений, как правило бесконечных
- то, что найдено тоже важно: найдено аналитическое описание сингулярного вихря, с конечной энергией, но бесконечной скоростью; топологически это напоминает растянутый вдоль оси узел; ресерчеры OpenAI всё равно молодцы, это правда один из пунктов проблемы тысячелетия уровня если не теоремы Ферма, то близко, теперь ждем официального подтверждения от института Клея
- любой физик/инженер улыбается при слове бесконечность (если он не астроном, да и то) и идет заниматься полезными обществу делами (или нет)

🔥тот кто физиком стал тот грустить перестал
🤔няня я у них поел
  • 🔥 34
  • 🤔 15
  • 👍 4
Post #554 3.95K
Конечно интересно, чем ответит Антропик, но вообще эта возня меня начинает раздражать.

Вот такие соображения:
- то как делаются современные бенчмарки - во многом «читерство». Особенно лучи гнева arena.ai с их манерой масштабировать барчарты не относительно нуля (это даёт существенное искажение - разоблачение в следующем посте)
- нет особенного смысла в один промт генерить игру-шутер или классическую музыку с неаполитанской гармонией и говорить «о да эта модель сильнее», в таком виде это инфоцыганство; есть несколько разных ролей, в агентской разработке базово их штук 5 по стадиям цикла, и в этих задачах модель типа астры оправдана меньше чем в половине, остальные задачи должны делать быстрые, четкие, недорогие рабочие лошадки
- обвязка, стоимость и скорость (!) для многих ролей важнее модели
- что происходит с китайскими моделями супер-важно, ресерчеры в корпоративных AI-центрах компетенций должны одновременно проверять флагманы американские, ризонинн-флагманы китайские (glm/kimi) и рванувшие по соотношениям скорость/качество/цена qwen/deepseek; и поэтому роутеры тоже рулят
- с локальными моделями всё пока плохо (дорого, медленно), но шаг по сравнению с тем что было полгода назад огромный, и там назревает бум: например, есть прикольный стартап с пересобранным движком для инференса и квеном (пока 3.6) который добивается скорости локальной генерации выше 100 токенов/сек на не-космических маках (называется Mirai Labs; ждем qwen 3.8).

Вот как-то так (и никак иначе). На ходу, конспективно, чуть позже распишу пункты подробнее.

Картинка стырена у Владимира Иванова.
  • 👍 17
  • 🔥 8
  • 🤔 2
Post #552 3.58K
Подарок $200 на доступ к нейросетям

Перевернули календарь, и снова горячее время для собесов!

Традиционно архитектурные секции и интервью по системному дизайну являются самими трудными. А в 2026-м году к требованиям и трудным темам добавился AI, ведь до сих пор с агентами разрабатывает очень небольшое число программистов.

Поэтому мы объявляем аукцыон неслыханной щедрости!

Только следующие 3 дня: всем новым клиентам, кто в течение следующих трех дней купит у Devhads участие в сентябрьском курсе по системному дизайну мы подарим наш API-ключ для доступа к нейросетям на $200 (около 18.000 рублей).

Вам будет доступно несколько сотен моделей, включая самые передовые открытые GLM 5.3, Kimi 3, DeepSeek 4 и конечно Qwen 3.8. Это максимально простой старт с агентами: не нужны ни иностранная карта, ни иностранный номер и почта, ни квн с постоянными переключениями.

Расскажем, как прописать ключ и как экономно пользоваться моделями - по нашей оценке ключа может хватить на месяцы использования агентов.

Интересно? Регистрируйтесь на курс и получите в подарок доступ к нейросетям на $200. Несколько последних мест, старт уже в понедельник, 7-го сентября.

И кстати, у нас нет этого инфоцыганского безумия эконом/стандарт/премиум, где доступ к ведущему только на максимальных тарифах, а по умолчанию вы просто получаете предзаписанные лекции. У нас по одной цене «живые» встречи, постоянные дискуссии, разборы, брейнштормы, демо/защиты в персональные слоты. Приходите сами, приводите коллег и друзей.
  • 👍 8
  • 🔥 6
Post #551 4.15K
Кто и зачем забанил Винни-Пуха?

Ребят, чумовая история. Гонял китайскую GLM 5.3 Flash и случайно увидел, что некоторые вендоры стали давать доступ к uncensored версии. Короче, решил проверить, правда ли GLM 5.3 Flash в «uncensored»-версии заметно отличается от обычной.

Погуглил, какие вопросы обычно используют как маркеры цензуры у китайских моделей. Набор ожидаемый: политика Китая, события конца 80-х, Тяньаньмэнь, Тибет, Далай-лама, Тайвань, роль компартии и всё такое.

И среди этого списка внезапно вижу прекрасное: «почему в Китае забанен Винни-Пух?».

Лолшто? Тут я, конечно, завис. А оказалось, история реальная: Винни-Пух в китайском интернете давно стал мемным образом, с которым сравнивали Уважаемого Председателя КНР. Власти юмор оценили примерно никак, и родной для нас персонаж постоянно попадает под ограничения: от блокировок мемов до проблем с прокатом.

А что тест? А тест вышел странным. Прогнал одни и те же вопросы через два роутера: один обещал «uncensored»-вариант GLM 5.3 Flash, второй — обычную модель. Ожидал увидеть разницу - а её почти не было. Ответы были примерно одинаковые: сглаженные, аккуратные, без резких оценок, но и без тупого «я не буду это обсуждать». Скорее умеренно нейтральные, чем откровенно цензурированные.

Пока не понял, что именно произошло: то ли роутеры ведут себя не так, как обещают, то ли «uncensored» в данном случае больше маркетинговая наклейка, то ли дефолтная GLM 5.3 сама по себе оказалась менее зажатой, чем я ожидал — но меня это вообще перестало интересовать. Винни-Пух затмил всё. Вышло как в гениальном «Фотоувеличении» Антониони: корневой факт, вокруг которого строится расследование, в процессе растворяется и абсолютно теряет значение 🙂 Посмотрите, если не видели этот фильм.

Обучение devhands.ru | что за Рыбак | Devhands AI Club | AI-буткемп

🔥верните виннипуха китайским детям
👍сегодня виннипухи — завтра революция
  • 🔥 40
  • 👍 24
  • 🤔 3
Post #550 4.01K
Что нового в PostgreSQL 19 - V

Каждую осень выходит очередная мажорная версия СУБД PostgreSQL. Что нам готовит 19я версия — рассказываем с нашим экспертом по СУБД и автором курса по архитектуре и тюнингу SQL в PostgreSQL (стартует 3-го сентября), Николаем Ихалайненом.

Параллельный автовакуум

В PostgreSQL 19 автоматическая очистка таблиц может выполняться параллельно. Ранее autovacuum обрабатывался одним потоком, что могло замедлять удаление устаревших версий строк даже при наличии свободных вычислительных ядер. Параллельная обработка позволяет эффективнее использовать ресурсы процессора и сокращать время обслуживания больших таблиц.

Пример настройки:


autovacuum_max_parallel_workers = 2;
ALTER TABLE big_orders SET (autovacuum_parallel_workers = 2);


А ещё в PostgreSQL 19 был изменён подход к выбору таблиц для автоматической очистки. Теперь система отдаёт приоритет не произвольной таблице, а той, которая в данный момент требует обслуживания в наибольшей степени. Для этого учитываются несколько факторов, включая близость к переполнению счётчика транзакций, количество строк, подлежащих очистке, и другие показатели нагрузки. Такой механизм делает autovacuum более предсказуемым и эффективным при работе с большими базами данных.

Нам лишь остается отметить, токмо справедливости ради и никак не флейма для, что в InnoDB параметр innodb_purge_threads был добавлен в MySQL 5.6 в 2013 году. Вот живите теперь с этим и продолжайте бояться ужасного Oracle.

Прошлые выпуски: PG19-I, PG19-II, PG19-III и PG19-IV
  • 👍 12
  • 🔥 9
  • 💯 3
Post #549 4.58K
PostgreSQL 19 IV: REPACK

Традиционно каждую осень выходит очередная мажорная версия СУБД PostgreSQL. Что нам готовит 19я версия — рассказываем с нашим экспертом по СУБД и автором курса по архитектуре и тюнингу SQL в PostgreSQL, Николаем Ихалайненом. В прошлых выпусках смотрели на нововведения для разработки, теперь настала очередь новинок для администрирования.

В PostgreSQL 19 появляется новая команда REPACK, которая предназначена для физической перепаковки таблиц. Она помогает устранить bloat, то есть избыточно занятое место, которое накапливается после большого количества операций UPDATE и DELETE.

REPACK не меняет сам принцип работы таких операций. PostgreSQL по-прежнему создает новую физическую копию таблицы, переносит в нее актуальные версии строк, пересоздает индексы, а затем заменяет старые файлы новыми. Именно за счет этого таблица становится компактнее, а неиспользуемое пространство может быть возвращено операционной системе.

Раньше похожие задачи решались с помощью команд VACUUM FULL и CLUSTER. VACUUM FULL использовался для освобождения места на диске, а CLUSTER — для физического упорядочивания строк таблицы по индексу. Однако обе операции требуют сильной блокировки таблицы, что особенно проблематично для крупных и активно используемых таблиц.

REPACK объединяет эти сценарии в одной команде. При обычном запуске он также блокирует таблицу, но при использовании опции CONCURRENTLY основная часть работы выполняется без длительной блокировки чтения и записи. Сильная блокировка все равно требуется, но обычно только на коротком финальном этапе, когда PostgreSQL заменяет старые файлы таблицы и индексов новыми.

Пример перепаковки таблицы в конкурентном режиме:


REPACK (CONCURRENTLY) orders;


В этом примере таблица orders переписывается в более компактном виде. Для пользователей и приложений это означает, что таблица в основном остается доступной во время операции, хотя кратковременная блокировка на финальном этапе все равно возможна.

Если необходимо не только убрать bloat, но и физически упорядочить строки таблицы по определенному индексу, можно использовать вариант с USING INDEX:


REPACK orders USING INDEX orders_order_date_idx;


Такой вариант близок по смыслу к CLUSTER: строки таблицы будут расположены в порядке, заданном индексом orders_order_date_idx, например по дате заказа.

После выполнения REPACK обычно нет необходимости дополнительно запускать VACUUM FULL или CLUSTER для той же таблицы. REPACK уже выполняет соответствующую физическую работу: уменьшает bloat, пересоздает индексы и, при использовании USING INDEX, упорядочивает строки по индексу.

Прошлые выпуски: PG19-I, PG19-II и PG19-III
  • 🔥 31
  • 👍 15
  • 💯 4
Post #548 4.38K
Плейбук AI-native SDLC от Anthropic

Антропик в последнее время выпускает много учебных материалов. На днях они выпустили супер-важный пост — очень простое, понятное описание базовых изменений, которые происходят в разработке. Для тех, кто уже работает с агентами, наверное, ничего нового, а кто только начинает — хорошее описание процесса разработки с агентами.

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

Anthropic предлагает перестроить все шесть стадий жизненного цикла:

1. Plan. Автор идеи брейнштормит с Claude и сразу получает intent.md — прото-спеку в своих словах, которая коммитится в git.

2. Design. Требования и дизайн схлопываются в одну сессию: Claude превращает intent.md в spec.md, применяя политики компании как skills. Продакт не пишет спеку, а ревьюит её и разбирает флаги.

3. Build. Старт всегда в plan mode: Claude читает код, не меняя его, инженер правит план, план коммитится как plan.md. Знания команды живут в CLAUDE.md и skills, жёсткие правила — в хуках. Один инженер ведёт 2–3 параллельные сессии в отдельных worktree.

4. Test. У каждой сессии должен быть способ проверить себя (тесты, билд, скриншот-диф) до того, как её увидит человек. Плюс evals в CI, которые прогоняются при изменении конфигурации агента — промптов, skills, хуков.

5. Deploy. Claude и ревьюит PR по REVIEW.md, и чинит замечания по тегу. Человек смотрит не на строки, а на намерение и риск. Ключевой принцип: агент делает всё вплоть до прод-гейта и ничего за ним.

6. Maintain. Специальное приложение следит за метриками, при алертах дёргает Claude, тот диагностирует и пишет новый intent.md — и цикл начинается заново без человека в точке запуска.

Сквозная идея — на каждой стадии коммитится артефакт, который читает следующая. Цепочка коммитов и есть артефакт на аудит, но более высокой “размерности” чем код: кто что попросил, что сгенерил агент, кто одобрил.

Подробный плейбук (англ): https://claude.com/blog/the-ai-native-sdlc-playbook

🔥 спасибо, подучил
👍 всё равно не доверяю я этим агентам

Обучение devhands.ru | что за Рыбак | Devhands AI Club | AI-буткемп
  • 🔥 61
  • 👍 38
  • 💯 6
  • 🤔 3
Post #547 3.3K
Что нового в PostgreSQL 19 - III

Традиционно каждую осень выходит очередная мажорная версия СУБД PostgreSQL. Что нам готовит 19я версия — рассказываем с нашим экспертом по СУБД и автором курса по архитектуре и тюнингу SQL в PostgreSQL, Николаем Ихалайненом.

Предыдущие посты в этой серии: Графы в SQL, Консистентные чтения с реплик WAIT FOR LSN.

Экспорт в JSON
Довольно легко написать программу, чтобы сохранить табличку в формате JSON.

В PostgreSQL уже есть похожая команда COPY которая возвращает данные в формате TSV (как csv, только с табами), появилась возможность менять этот формат на JSON:

COPY (SELECT id, name, price FROM products ORDER BY id)
TO '/tmp/products.json' (FORMAT JSON);

COPY (SELECT id, name FROM products)
TO STDOUT (FORMAT JSON, FORCE_ARRAY);



NULL вместо ошибок при импорте
Иногда файлы из которых мы загружаем данные содержат кривые данные, которые не проходят строгую валидацию PostgreSQL. Это происходит сплошь и рядом при разборе дат/времен, json-полей и многих других типов полей. И очень обидно после нескольких десятков гигабайт данных получить ошибку из-за одной строки.

А теперь можно просто заменять неправильные значения на NULL:

COPY people FROM '/tmp/people.csv'
(FORMAT csv, ON_ERROR set_null);


Оконные функции без NULL
Ещё интересное улучшение на уровне SQL касается оконных функций. Если вы уже давно анализируете данные в табличках вы можете удивиться, что этой отличной возможности не было.

Обычный lag(temp) смотрит строго на предыдущую строку. Если там NULL, он вернет NULL, даже если еще строкой выше было нормальное значение. А lag(temp) IGNORE NULLS пропускает пустые значения и находит последнее известное значение:


SELECT ts,
temp,
lag(temp) IGNORE NULLS OVER (ORDER BY ts) AS prev_non_null_temp
FROM sensor_readings;


🔥 PostgreSQL — наше всё!
🤔 разбухание bloat они исправят когда-нибудь?
💯 ну всё, мигрируем на 19й!
👍 нам и на PostgreSQL 12 хорошо
  • 🔥 39
  • 👍 25
  • 🤔 8
  • 💯 7
Older posts →

About this channel

How can I read @rybakalexey without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами have?
Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами (@rybakalexey) has 10.1K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Алексей Рыбак: системный дизайн, хайлоад, разработка с агентами know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →