Про очередной хайп, как суперинтеллект якобы решил 700 сложных математических проблем, я прочитал уже в десятках каналов, причём подчас весьма авторитетных, и что интересно, практически нигде не увидел и крупицы критического мышления, что честно говоря весьма удивительно. Сплошные прям восторги.
Ну, во-первых, из 700 только около 300 имеют какую-никакую формализацию на лине (которая сама по себе тоже далеко не стопроцентная гарантия правильности).
Во-вторых, академическое математическое сообщество к этому отнеслось весьма негативно: от откровенно прохладно до крайнего неприятия. Да, небольшой процент прикормленных штрейкбрехеров конечно нашелся, но и всё. А так, вот например Энрико Фатигенти, математик из Римского университета пишет:
"Они просто опубликовали несколько статей объемом более 100 страниц, в которых утверждается, что они решили ту или иную проблему, часто с избыточными аргументами, неясной логической структурой, множеством тупиковых ситуаций и странной или вызывающей беспокойство терминологией - другими словами, с нейрослопом. И затем ожидается, что мы пройдемся по пейперу, проверим, очистим, упростим и объясним, что происходит на самом деле."
(тут можно предположить, что ув. Фатигенти возмущается скорее тем, что "мы пройдемся по пейперу" бесплатно, ну ok:)
В-третьих, значимость самих проблем сильно преувеличена. Да, над ними работают годами или десятилетиями, но или в одиночку или совсем маленькими коллективами. А в программировании нередки проекты на десятки миллионов строк кода и тысячи человеко-лет, где логическая сложность создания/"решения" превосходит тот же Навье-Стокс на порядки. Просто тут есть хорошее финансирование, а в математике увы нет.
Если бы например лет 10 назад прилетели инопланетяне и заявили: либо вы за год решите проблему Навье-Стокса, либо мы уничтожим всю Землю, ну разве бы человечество не справилось? Был бы организован всемирный проект, вложены все имеющиеся ресурсы, и 100% планета была бы спасена, и тоже касается практически всех остальных мировых математических проблем по сути.
А вот если например задача была поставлена формально верифицировать дистрибутив arch linux, или за год сделать GTA VII, нууу, далеко не факт, что человечество справилось бы :) Даже и сегодня с помощью суперинтеллекта.
Ну, во-первых, из 700 только около 300 имеют какую-никакую формализацию на лине (которая сама по себе тоже далеко не стопроцентная гарантия правильности).
Во-вторых, академическое математическое сообщество к этому отнеслось весьма негативно: от откровенно прохладно до крайнего неприятия. Да, небольшой процент прикормленных штрейкбрехеров конечно нашелся, но и всё. А так, вот например Энрико Фатигенти, математик из Римского университета пишет:
"Они просто опубликовали несколько статей объемом более 100 страниц, в которых утверждается, что они решили ту или иную проблему, часто с избыточными аргументами, неясной логической структурой, множеством тупиковых ситуаций и странной или вызывающей беспокойство терминологией - другими словами, с нейрослопом. И затем ожидается, что мы пройдемся по пейперу, проверим, очистим, упростим и объясним, что происходит на самом деле."
(тут можно предположить, что ув. Фатигенти возмущается скорее тем, что "мы пройдемся по пейперу" бесплатно, ну ok:)
В-третьих, значимость самих проблем сильно преувеличена. Да, над ними работают годами или десятилетиями, но или в одиночку или совсем маленькими коллективами. А в программировании нередки проекты на десятки миллионов строк кода и тысячи человеко-лет, где логическая сложность создания/"решения" превосходит тот же Навье-Стокс на порядки. Просто тут есть хорошее финансирование, а в математике увы нет.
Если бы например лет 10 назад прилетели инопланетяне и заявили: либо вы за год решите проблему Навье-Стокса, либо мы уничтожим всю Землю, ну разве бы человечество не справилось? Был бы организован всемирный проект, вложены все имеющиеся ресурсы, и 100% планета была бы спасена, и тоже касается практически всех остальных мировых математических проблем по сути.
А вот если например задача была поставлена формально верифицировать дистрибутив arch linux, или за год сделать GTA VII, нууу, далеко не факт, что человечество справилось бы :) Даже и сегодня с помощью суперинтеллекта.
2❤31👍6👌3
Ладно, вот серебряная пуля всей инженерии агентов: декомпозиция. Темка, которую святые computer science развивают лет 70. Всё те же пресловутые low coupling + high cohesion, по которой спрашивают на собесах наверное каждого миддла.
Паттерны проектирования, GRASP, вот это вот всё.
Да, но почему тогда в мэйнстриме бесконечно длится "весь этот горький катаклизм, который я здесь наблюдаю, и Владимир Николаевич тоже"? :)
Ведь казалось бы, всё легко и просто: пообщались с заказчиками, подготовили какое-то неформальное ТЗ, декомпозировали его в более-менее чёткие спецификации/тикеты, затем эти спеки декомпозируем в абстракции (паттерны, модули, типы, классы, функции), забрасываем в жпт, профит!
Ведь факт, что уже даже средние нейронки сегодня способны реализовывать абстрактные задачи (по сути, чистые функции) на уровне олимпийских чемпионов по программированию.
Ключевая засада тут - в композиции, в синтезе. Декомпозировать текстовое описание например в классы Гном, Крепость, Оружие - элементарно, да вот только как их собрать в целостную работающую систему? С помощью каких инструментов (паттернов...)? И главное, как?
Вот это чистый Software Design и есть. Вся вторая часть Лаборатории по сути именно этому и посвящена. Объектно-ориентированный анализ и проектирование, функциональное проектирование/функциональные архитектуры и т.д.
Но, признаю, явный акцент на декомпозиции я стал делать только в последнее время, с развитием AI, когда это стало ключевым по сути. И нейронки тут пока слабы, и не факт что усилятся - просто потому, что нету подходящих датасетов, и уже никогда не будет.
С этой засадой -- хрупким синтезом - и связан поток тысяч статей и библиотек по инженерии агентов, харнессам-шмарнесам и прочей малополезной ереси, которые пытаются решить её различными инженерными приляпками.
Вот что я имею в виду: бешеная скорость генерации кода нейронками повышает ценность качественной модульной архитектуры, потому что стремительно накапливается связанность/запутанность, и big ball of mud раздувается прямо на глазах :)
С другой стороны, дешевеющая переделка нейронками снижает ценность архитектурных вложений, потому что переписать становится дешевле, чем заранее грамотно проектировать. Но это ненадолго: такая переделка быстро перестаёт быть дешёвой, когда локальное изменение требует понимания, проверки и модификации всё более значительной части системы. Понадобилось подправить одну функцию, и агент попутно перефигачил 128 файлов, где она использовалась, и наверняка что-то поломал в логике (на "Неявных механизмах логики" разбираю многие десятки таких побочек, и что с этим делать).
Теперь агент молниеносно превращает неоднозначность в большой объём кода, а то и спецификаций, и вроде бы всё смотрится согласованными. Ошибочное допущение успевает распространиться в проекте быстрее, нежели человек его заметит, а внешняя стройность и успешные тесты часто создают ложную уверенность что всё норм.
Короче, декомпозиция -- это не про "разбить на побольше маленьких задачек", а про то, как выбирать границы, внутри которых можно независимо понимать, проверять и реализовывать спеки, и как синтезировать из маленьких артефактов корректно работающую систему без потери общего смысла. Не принципиально новая проблема, но прежние подходы оказались слишком хрупкими -- ломаются под невиданным ранее темпом кодогенерации.
То есть когда декомпозиция проводится без сохранения целостности, это никакое не решение проблемы, а карго-культ. Сложность просто переносится на интеграцию, которая исходно не присутствовала в модели вообще!
Так вот мой подход: "ТЗ декомпозировали в более-менее чёткие спецификации/тикеты, затем эти спеки декомпозируем в абстракции (паттерны, модули, типы, классы, функции)" - добавляется промежуточный шаг, декомпозируем в абстракции, но не сразу в типы и функции, а в паттерны теории категорий (Last Principles Framework), и вот тогда уже появляется и явный синтез, и автоматическая сборка, и математически абсолютный Software Design.
Но, да, думать при этом придётся существенно больше и существенно тяжелее :) И нейронкам особо не делегируешь. Но зато и профит несравнимый.
Паттерны проектирования, GRASP, вот это вот всё.
Да, но почему тогда в мэйнстриме бесконечно длится "весь этот горький катаклизм, который я здесь наблюдаю, и Владимир Николаевич тоже"? :)
Ведь казалось бы, всё легко и просто: пообщались с заказчиками, подготовили какое-то неформальное ТЗ, декомпозировали его в более-менее чёткие спецификации/тикеты, затем эти спеки декомпозируем в абстракции (паттерны, модули, типы, классы, функции), забрасываем в жпт, профит!
Ведь факт, что уже даже средние нейронки сегодня способны реализовывать абстрактные задачи (по сути, чистые функции) на уровне олимпийских чемпионов по программированию.
Ключевая засада тут - в композиции, в синтезе. Декомпозировать текстовое описание например в классы Гном, Крепость, Оружие - элементарно, да вот только как их собрать в целостную работающую систему? С помощью каких инструментов (паттернов...)? И главное, как?
Вот это чистый Software Design и есть. Вся вторая часть Лаборатории по сути именно этому и посвящена. Объектно-ориентированный анализ и проектирование, функциональное проектирование/функциональные архитектуры и т.д.
Но, признаю, явный акцент на декомпозиции я стал делать только в последнее время, с развитием AI, когда это стало ключевым по сути. И нейронки тут пока слабы, и не факт что усилятся - просто потому, что нету подходящих датасетов, и уже никогда не будет.
С этой засадой -- хрупким синтезом - и связан поток тысяч статей и библиотек по инженерии агентов, харнессам-шмарнесам и прочей малополезной ереси, которые пытаются решить её различными инженерными приляпками.
Вот что я имею в виду: бешеная скорость генерации кода нейронками повышает ценность качественной модульной архитектуры, потому что стремительно накапливается связанность/запутанность, и big ball of mud раздувается прямо на глазах :)
С другой стороны, дешевеющая переделка нейронками снижает ценность архитектурных вложений, потому что переписать становится дешевле, чем заранее грамотно проектировать. Но это ненадолго: такая переделка быстро перестаёт быть дешёвой, когда локальное изменение требует понимания, проверки и модификации всё более значительной части системы. Понадобилось подправить одну функцию, и агент попутно перефигачил 128 файлов, где она использовалась, и наверняка что-то поломал в логике (на "Неявных механизмах логики" разбираю многие десятки таких побочек, и что с этим делать).
Теперь агент молниеносно превращает неоднозначность в большой объём кода, а то и спецификаций, и вроде бы всё смотрится согласованными. Ошибочное допущение успевает распространиться в проекте быстрее, нежели человек его заметит, а внешняя стройность и успешные тесты часто создают ложную уверенность что всё норм.
Короче, декомпозиция -- это не про "разбить на побольше маленьких задачек", а про то, как выбирать границы, внутри которых можно независимо понимать, проверять и реализовывать спеки, и как синтезировать из маленьких артефактов корректно работающую систему без потери общего смысла. Не принципиально новая проблема, но прежние подходы оказались слишком хрупкими -- ломаются под невиданным ранее темпом кодогенерации.
То есть когда декомпозиция проводится без сохранения целостности, это никакое не решение проблемы, а карго-культ. Сложность просто переносится на интеграцию, которая исходно не присутствовала в модели вообще!
Так вот мой подход: "ТЗ декомпозировали в более-менее чёткие спецификации/тикеты, затем эти спеки декомпозируем в абстракции (паттерны, модули, типы, классы, функции)" - добавляется промежуточный шаг, декомпозируем в абстракции, но не сразу в типы и функции, а в паттерны теории категорий (Last Principles Framework), и вот тогда уже появляется и явный синтез, и автоматическая сборка, и математически абсолютный Software Design.
Но, да, думать при этом придётся существенно больше и существенно тяжелее :) И нейронкам особо не делегируешь. Но зато и профит несравнимый.
👍33❤11✍3🙏3
Продолжаю работу с ментатами 🤓
Буквально в сентябре потратил 2 недели впустую. Работал не по каноничному SDD, по самопальному, но тем не менее.
Затеял миграцию слоя-обвязки БД, максимально покрыл тестами, и красными в том числе, которые должны после миграции были заработать. И BDD-сценарии написал. Расписал кучу adr, и md файликов, и планы сделал -- и глобальный, и на каждый день. Все вычитал за ии.
В итоге получился уродливый кентавр из нового и старого кода. Довольно быстро понял, что все идет не по плану, но из любопытства решил довести до конца. Очень быстро терялся контекст, что подлежит замене, что нет. Агент просто стремился сделать все тесты зелеными. И они зеленые, только при этом старые проблемы были хитро спрятаны, слои "протекали" друг в друга, на границах слоев были абсолютно хрупкие и безликие конструкции на словарях и кортежах, которые только прятали реальные проблемы под ковер. Классический big ball of mud...
Вчерашнее как раз было про это.
...С фабриками впервые в реальном использовании столкнулся на прошлой работе, в гошном коде, причем активно их использовал только бывший джавист, перенял это у него.
Вообще, заметил, что среди «коренных» гошников и питонистов очень мало кто использует паттерны, в основном это люди с джавы и шарпов.
Классический пример, что мы разбираем в "33 стилях программирования" -- хипстерство/говнокод (кто в академиях/лабораториях не обучались:). Какое там мышление паттернами! (которое само по себе первый шаг в профессиональную разработку, потом абстракции, потом полноценная computer science...) Детский сад штаны на лямках. Недаром кстати года три назад в гошку генерики добавили.
Понравилась идея с полиморфной конситентностью, с тем что работаем с абстрактными каналами, а они сами решают внутри себя, работать им синхронно или нет.
Далее, про интерфейсы и функторы, очень понравилось изложение на этом модуле.
Изначально, не очень понял идею, код выглядел тяжелым для восприятия и визуально шумным, в блоке про очищение зависимостей бойлерплейт выглядел жутко.
А потом дальше текст предвосхитил мои возмущения, словами что тут не нужно вообще думать, нужно это один раз грокнуть, и дальше как по маслу...
Словил вау-эффект. Сидел в lazygit, читал pull request, без подсветки синтаксиса. Раньше я думал что это какое-то снобство, как отключение подсветки может помочь продуктивности. Оказывается, без нее мозг перестает пропускать "мусорные" подсвеченные блоки кода, весь код становится равнозначно важным, и это как ни странно способствует большему погружению и что еще более удивительно - большему удовольствию от код ревью, которое мне никогда не нравилось делать.
Еще лет 5 назад я писал про это, ну ведь книги, в т.ч. сложнейшие учебные, мы же читаем чёрно-белые, а цветные это только для малышей.
...В целом про ФА и math, я его как отдельный модуль уже изучал, в первый раз было со всем тяжело с пониманием, много страшных «математических» слов, но толи я с тех пор терминологический аппарат подтянул, толи просто регулярное чтение ваших постов незаметно для меня же начало формировать понимание)
...Насчет чистых функций, согласен на 1000% - качество кода остается неплохим, когда даешь установку "писать в функциональном стиле" + общая декомпозиция системы, как это было показано в "Функциональных архитектурах" + установка на снижение цикломатической сложности. В итоге, по моему опыту, получившийся код воспринимать и понимать гораздо легче.
(правда, рассчитать цикломатическую сложность для функционального кода куда сложнее :)
Всё время прихожу к тому, что для эффективного применения ИИ в работе, нужна хорошая рефлексия и осознанность по тому, как эта самая работа происходит...
К своему великому удивлению, благодаря дипломному проекту я оказался знаком с большей частью обсуждаемых тем ("Стачка"). Пошел на асинхронщину — там объясняли то, с чем я уже сталкивался. Рассказывали в общих чертах про backpressure — а я уже это проходил. Grafana, OpenTelemetry, Pydantic, DTO — оказалось, что благодаря курсам я вполне в теме современной айтишки))) Это ощущение дорого стоит, поскольку шел туда с ощущением лютейшего самозванства.
На секции по управлению слушал мотивационного спикера, который рассказывал про «помидорки», и оказался одним из немногих, кто поднял руку на вопрос, кто их использует. У другого спикера даже услышал знакомые по Telegram-каналу понятия «моноид» и «функтор», что дало еще одну отсылку к SkillSmart.
Основной нарратив многих спикеров: если не пользуешься ИИ с максимальной отдачей, рискуешь сильно отстать от рынка и стать невостребованным.
ИИ - это хорошо, но нужно развивать архитектурные навыки и вообще знать язык программирования (!!!!).
...Кстати, я тут сменил работу и на новом месте нет оплаченного ИИ, поэтому все нюансы я теперь познаю на своем кошельке :) И тут очень пригодился агент, которого вы рекомендовали для изучения ранее - [...]
...Yazi нормально заменяет проводник, когда надо зайти в каталог и глянуть файл в превью, но внутри него файл нельзя править, если проваливаешься в код, то там vim автоматически открывается:)
...Слышал про [...] до этого, но не ожидал такого прироста по точности исполнения моих запросов к нейронке. Более того, я и сам начал более сфокусированно думать спецификациями. Смотреть на систему на третьем уровне в связке с этим фреймворком получается гораздо проще и, в некотором смысле, естественнее. Кажется, что дальнейшая интеграция может поспособствовать ускоренному формированию и оттачиванию группы навыков, связанных с архитектурой и дизайном систем. И это, пожалуй, самое приятное, потому что субъективно сложнее всего на текущем этапе развития именно приучить себя думать на третьем уровне заранее и на постоянной основе.
Попробую внедрить в пайплайн разработки в подкоманде, коллеги вроде не против...
...Вот буквально сейчас в стартапе написал тимлид и позвал на созвон через 5 минут с ним и продукт овнером. Сказали, что я самый эффективный сотрудник в плане продуктивности AI-фикации разработки и решили оставлять только меня, с остальными бэкендерами расстаются.
Спасибо, Сергей Игоревич, за бесценные знания и опыт))
(это после моих принудительных рекомендаций по AI:)
Коль скоро начнут показываться помыслы, что вы хороши... знайте, что вы сбиваетесь с дороги...
Свт. Феофан Затворник
Буквально в сентябре потратил 2 недели впустую. Работал не по каноничному SDD, по самопальному, но тем не менее.
Затеял миграцию слоя-обвязки БД, максимально покрыл тестами, и красными в том числе, которые должны после миграции были заработать. И BDD-сценарии написал. Расписал кучу adr, и md файликов, и планы сделал -- и глобальный, и на каждый день. Все вычитал за ии.
В итоге получился уродливый кентавр из нового и старого кода. Довольно быстро понял, что все идет не по плану, но из любопытства решил довести до конца. Очень быстро терялся контекст, что подлежит замене, что нет. Агент просто стремился сделать все тесты зелеными. И они зеленые, только при этом старые проблемы были хитро спрятаны, слои "протекали" друг в друга, на границах слоев были абсолютно хрупкие и безликие конструкции на словарях и кортежах, которые только прятали реальные проблемы под ковер. Классический big ball of mud...
Вчерашнее как раз было про это.
...С фабриками впервые в реальном использовании столкнулся на прошлой работе, в гошном коде, причем активно их использовал только бывший джавист, перенял это у него.
Вообще, заметил, что среди «коренных» гошников и питонистов очень мало кто использует паттерны, в основном это люди с джавы и шарпов.
Классический пример, что мы разбираем в "33 стилях программирования" -- хипстерство/говнокод (кто в академиях/лабораториях не обучались:). Какое там мышление паттернами! (которое само по себе первый шаг в профессиональную разработку, потом абстракции, потом полноценная computer science...) Детский сад штаны на лямках. Недаром кстати года три назад в гошку генерики добавили.
Понравилась идея с полиморфной конситентностью, с тем что работаем с абстрактными каналами, а они сами решают внутри себя, работать им синхронно или нет.
Далее, про интерфейсы и функторы, очень понравилось изложение на этом модуле.
Изначально, не очень понял идею, код выглядел тяжелым для восприятия и визуально шумным, в блоке про очищение зависимостей бойлерплейт выглядел жутко.
А потом дальше текст предвосхитил мои возмущения, словами что тут не нужно вообще думать, нужно это один раз грокнуть, и дальше как по маслу...
Словил вау-эффект. Сидел в lazygit, читал pull request, без подсветки синтаксиса. Раньше я думал что это какое-то снобство, как отключение подсветки может помочь продуктивности. Оказывается, без нее мозг перестает пропускать "мусорные" подсвеченные блоки кода, весь код становится равнозначно важным, и это как ни странно способствует большему погружению и что еще более удивительно - большему удовольствию от код ревью, которое мне никогда не нравилось делать.
Еще лет 5 назад я писал про это, ну ведь книги, в т.ч. сложнейшие учебные, мы же читаем чёрно-белые, а цветные это только для малышей.
...В целом про ФА и math, я его как отдельный модуль уже изучал, в первый раз было со всем тяжело с пониманием, много страшных «математических» слов, но толи я с тех пор терминологический аппарат подтянул, толи просто регулярное чтение ваших постов незаметно для меня же начало формировать понимание)
...Насчет чистых функций, согласен на 1000% - качество кода остается неплохим, когда даешь установку "писать в функциональном стиле" + общая декомпозиция системы, как это было показано в "Функциональных архитектурах" + установка на снижение цикломатической сложности. В итоге, по моему опыту, получившийся код воспринимать и понимать гораздо легче.
(правда, рассчитать цикломатическую сложность для функционального кода куда сложнее :)
Всё время прихожу к тому, что для эффективного применения ИИ в работе, нужна хорошая рефлексия и осознанность по тому, как эта самая работа происходит...
К своему великому удивлению, благодаря дипломному проекту я оказался знаком с большей частью обсуждаемых тем ("Стачка"). Пошел на асинхронщину — там объясняли то, с чем я уже сталкивался. Рассказывали в общих чертах про backpressure — а я уже это проходил. Grafana, OpenTelemetry, Pydantic, DTO — оказалось, что благодаря курсам я вполне в теме современной айтишки))) Это ощущение дорого стоит, поскольку шел туда с ощущением лютейшего самозванства.
На секции по управлению слушал мотивационного спикера, который рассказывал про «помидорки», и оказался одним из немногих, кто поднял руку на вопрос, кто их использует. У другого спикера даже услышал знакомые по Telegram-каналу понятия «моноид» и «функтор», что дало еще одну отсылку к SkillSmart.
Основной нарратив многих спикеров: если не пользуешься ИИ с максимальной отдачей, рискуешь сильно отстать от рынка и стать невостребованным.
ИИ - это хорошо, но нужно развивать архитектурные навыки и вообще знать язык программирования (!!!!).
...Кстати, я тут сменил работу и на новом месте нет оплаченного ИИ, поэтому все нюансы я теперь познаю на своем кошельке :) И тут очень пригодился агент, которого вы рекомендовали для изучения ранее - [...]
...Yazi нормально заменяет проводник, когда надо зайти в каталог и глянуть файл в превью, но внутри него файл нельзя править, если проваливаешься в код, то там vim автоматически открывается:)
...Слышал про [...] до этого, но не ожидал такого прироста по точности исполнения моих запросов к нейронке. Более того, я и сам начал более сфокусированно думать спецификациями. Смотреть на систему на третьем уровне в связке с этим фреймворком получается гораздо проще и, в некотором смысле, естественнее. Кажется, что дальнейшая интеграция может поспособствовать ускоренному формированию и оттачиванию группы навыков, связанных с архитектурой и дизайном систем. И это, пожалуй, самое приятное, потому что субъективно сложнее всего на текущем этапе развития именно приучить себя думать на третьем уровне заранее и на постоянной основе.
Попробую внедрить в пайплайн разработки в подкоманде, коллеги вроде не против...
...Вот буквально сейчас в стартапе написал тимлид и позвал на созвон через 5 минут с ним и продукт овнером. Сказали, что я самый эффективный сотрудник в плане продуктивности AI-фикации разработки и решили оставлять только меня, с остальными бэкендерами расстаются.
Спасибо, Сергей Игоревич, за бесценные знания и опыт))
(это после моих принудительных рекомендаций по AI:)
Коль скоро начнут показываться помыслы, что вы хороши... знайте, что вы сбиваетесь с дороги...
Свт. Феофан Затворник
❤29✍9👍3
Если бы вы направили всю энергию, которую тратите на беспокойство о потере работы из-за искусственного интеллекта, на обучение продуктивной работе с искусственным интеллектом на уровне сеньора/техдира, вам никогда бы не пришлось больше беспокоиться о потере работы вообще по любым причинам.
3🫡38💯9👏6🤓5
Я такой:
- вот эта фича позволит реализовывать популярный класс твоих задачек в 2,7 раза быстрее.
Они такие:
- супер! здорово! спасибо! только сейчас нету времени это изучать.
ну штош :)
- вот эта фича позволит реализовывать популярный класс твоих задачек в 2,7 раза быстрее.
Они такие:
- супер! здорово! спасибо! только сейчас нету времени это изучать.
ну штош :)
🫡28😁20✍5🐳3💯1
Современные разработчики практически больше не имеют возможности получить следующий профессиональный опыт:
- набор кода с клавиатуры;
- изучение кода методом пристального взгляда;
- вдумчивое чтение документации;
- мерж конфликтов;
- проверка кода другим человеком;
- парное программирование;
- отладка;
- обдумывание архитектуры и системного дизайна;
- в т.ч. рукописными заметками в бумажном блокноте;
- мышление;
- радость от успешно реализованной задачи.
Особенно печально, что некоторым разработчикам уже никогда не выпадет удовольствия быть разнесёнными в пух и прах во время ревью их кода сеньором.
Помните, когда для решения сложных задачек или проблем с багами требовалось думать? Хорошие были времена.
- набор кода с клавиатуры;
- изучение кода методом пристального взгляда;
- вдумчивое чтение документации;
- мерж конфликтов;
- проверка кода другим человеком;
- парное программирование;
- отладка;
- обдумывание архитектуры и системного дизайна;
- в т.ч. рукописными заметками в бумажном блокноте;
- мышление;
- радость от успешно реализованной задачи.
Особенно печально, что некоторым разработчикам уже никогда не выпадет удовольствия быть разнесёнными в пух и прах во время ревью их кода сеньором.
Помните, когда для решения сложных задачек или проблем с багами требовалось думать? Хорошие были времена.
3🫡34💯20🐳5❤4🤯3
.
Облако драгоценностей за неделю.
Вроде бы академические темки "кабанчика" (по highload у нас целый трек уже много лет) на неделе внезапно стали более чем актуальными :)
Так же и computer science + math в айтишке, вот увидите, с развитием сверхинтеллекта станут критической информационной инфрой, и изо всех онлайн-школ полезут тематические курсы, как сегодня по AI. Но с 24-го вообще любые новые онлайн-курсы теперь везде чистый нейрослоп, а у меня есть абсолютное конкурентное преимущество: я занимаюсь cs и теорией типов много лет, и у меня мегабайты честного человеческого контента.
Приватный клуб.
Перегрузил свой эндпоинт побочными эффектами? Вот как правильно =>
Добавляйте как можно меньше кода в алгоритм планировщика, сводите его к анемичной модели. В идеале, всё что должно быть внутри scheduleTask(task), это только queue.push(task) :) Ну и лог.
Соответственно, сама идеальная таска ...
Для донов-начинающих:
Сейчас в интернете без проблем можно найти сотни бесплатных курсов и учебников, да и AI неплохо (вроде бы) подсказывает, особенно на уровне начинающих...
Тут есть простой объективный критерий успешности самообучения: пообщайтесь с любым миддлом, и он по вашим "знаниям" порвёт вас как грелку в мелкие клочья :)
(логрид) Одно из самых больших изменений, внесённых AI в разработку, заключается в том, что непосредственно кодинг больше не сложная задача.
...Вдобавок, чтобы извлечь максимальную пользу от искусственного интеллекта, надо работать с большой кодовой базой (десятки, сотни тысяч строк кода) быстро, что подразумевает также хорошие скиллы проектирования и архитекторства. Всему этому я тоже учу давно, и очень радуюсь, что наконец-то взрослые темы стали реально востребованы, а те, кто много лет тянули даже с базовым уровнем, сегодня окончательно остаются за бортом.
Для донов-неначинающих:
Четвёртый квартал начался на днях. Примерно через 90 дней закончится 2026-й год.
Может показаться, что этого времени у вас предостаточно. Кроме того, оно достаточно короткое, чтобы быстро исчезнуть, если вы начнёте этот квартал, не решив, что нужно сделать для вашей цели.
Вы же выполнили ежеквартальный обзор и планирование своей карьеры?
...Без этих решений новый квартал просто повторит предыдущий. Все те же срочные рутинные задачи продолжают вас побеждать....
Продолжаю выкладывать для донов материалы СильныхИдей.
110. Интерфейсы vs Контракты vs Абстракции
Общепринятое понимание интерфейса такое, что это коллекция абстрактных методов, которые задают некоторый "контракт" для класса, который он должен реализовать. Почему это не совсем так?
109. Почему функциональные языки (например, Haskell) так плохо работают в продакшене
При разработке бизнес-логики формирование хороших типов предметной области действительно означает весьма точное её определение.
Но домен и бизнес-логика -- это ещё далеко не всё приложение. Гораздо чаще в кодовых базах бизнес-логика представляет собой небольшую часть прочей функциональности, которую необходимо запрограммировать, чтобы всё работало...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлен 148-й материал "Инди-хакерство 2026 - 4".
Если вы сильно хотите чего-то в жизни, и действительно сосредоточены на достижении, вы практически всегда можете этого добиться. Если вы в это верите и готовы работать достаточно долго и упорно, чтобы в конечном итоге достичь цели, то самой важной задачей становится именно ...
=
"Функциональные архитектуры" 179(+1) топиков.
Тесты как исполняемые спецификации.
LPF закончен, куда и как дальше => (Meta)Principles Framework (сделано 0% :)
=
"ЛаМПовое":
линукс как макось
=
it's a privilege to do things that are hard. 💪🏻
=
Он шёл впереди своих учителей, схватывая на лету то, о чём не должен был даже догадываться. Он делал это с потрясающей скоростью. Это тревожный знак.
Интересно, каким он стал сейчас?
"Еретики Дюны"
Облако драгоценностей за неделю.
Вроде бы академические темки "кабанчика" (по highload у нас целый трек уже много лет) на неделе внезапно стали более чем актуальными :)
Так же и computer science + math в айтишке, вот увидите, с развитием сверхинтеллекта станут критической информационной инфрой, и изо всех онлайн-школ полезут тематические курсы, как сегодня по AI. Но с 24-го вообще любые новые онлайн-курсы теперь везде чистый нейрослоп, а у меня есть абсолютное конкурентное преимущество: я занимаюсь cs и теорией типов много лет, и у меня мегабайты честного человеческого контента.
Приватный клуб.
Перегрузил свой эндпоинт побочными эффектами? Вот как правильно =>
Добавляйте как можно меньше кода в алгоритм планировщика, сводите его к анемичной модели. В идеале, всё что должно быть внутри scheduleTask(task), это только queue.push(task) :) Ну и лог.
Соответственно, сама идеальная таска ...
Для донов-начинающих:
Сейчас в интернете без проблем можно найти сотни бесплатных курсов и учебников, да и AI неплохо (вроде бы) подсказывает, особенно на уровне начинающих...
Тут есть простой объективный критерий успешности самообучения: пообщайтесь с любым миддлом, и он по вашим "знаниям" порвёт вас как грелку в мелкие клочья :)
(логрид) Одно из самых больших изменений, внесённых AI в разработку, заключается в том, что непосредственно кодинг больше не сложная задача.
...Вдобавок, чтобы извлечь максимальную пользу от искусственного интеллекта, надо работать с большой кодовой базой (десятки, сотни тысяч строк кода) быстро, что подразумевает также хорошие скиллы проектирования и архитекторства. Всему этому я тоже учу давно, и очень радуюсь, что наконец-то взрослые темы стали реально востребованы, а те, кто много лет тянули даже с базовым уровнем, сегодня окончательно остаются за бортом.
Для донов-неначинающих:
Четвёртый квартал начался на днях. Примерно через 90 дней закончится 2026-й год.
Может показаться, что этого времени у вас предостаточно. Кроме того, оно достаточно короткое, чтобы быстро исчезнуть, если вы начнёте этот квартал, не решив, что нужно сделать для вашей цели.
Вы же выполнили ежеквартальный обзор и планирование своей карьеры?
...Без этих решений новый квартал просто повторит предыдущий. Все те же срочные рутинные задачи продолжают вас побеждать....
Продолжаю выкладывать для донов материалы СильныхИдей.
110. Интерфейсы vs Контракты vs Абстракции
Общепринятое понимание интерфейса такое, что это коллекция абстрактных методов, которые задают некоторый "контракт" для класса, который он должен реализовать. Почему это не совсем так?
109. Почему функциональные языки (например, Haskell) так плохо работают в продакшене
При разработке бизнес-логики формирование хороших типов предметной области действительно означает весьма точное её определение.
Но домен и бизнес-логика -- это ещё далеко не всё приложение. Гораздо чаще в кодовых базах бизнес-логика представляет собой небольшую часть прочей функциональности, которую необходимо запрограммировать, чтобы всё работало...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлен 148-й материал "Инди-хакерство 2026 - 4".
Если вы сильно хотите чего-то в жизни, и действительно сосредоточены на достижении, вы практически всегда можете этого добиться. Если вы в это верите и готовы работать достаточно долго и упорно, чтобы в конечном итоге достичь цели, то самой важной задачей становится именно ...
=
"Функциональные архитектуры" 179(+1) топиков.
Тесты как исполняемые спецификации.
LPF закончен, куда и как дальше => (Meta)Principles Framework (сделано 0% :)
=
"ЛаМПовое":
линукс как макось
=
it's a privilege to do things that are hard. 💪🏻
=
Он шёл впереди своих учителей, схватывая на лету то, о чём не должен был даже догадываться. Он делал это с потрясающей скоростью. Это тревожный знак.
Интересно, каким он стал сейчас?
"Еретики Дюны"
1❤27✍8👍1
Один из ментатов попросился на работе вот на эту конфу => AI Native Conf 20 окт
типа оплатите билетик, и ему отказали 🙈
Для физика кстати билет стоит 20 тыс, а для юрика 50 тыс.
Ладно, потусоваться за корпоративный счёт норм,
а остальным дам всю эту конфу бесплатно, чётко по заявленным выступлениям.
1. "Архитектура данных будущего: что такое данные в эпоху ИИ"
Данные -- это абсолютно важная темка вообще в любую эпоху в ИТ, а в контексте AI это датасеты, которые актуальны лишь для тех, кто занимается обучением моделей, и если ты не из этих, то это тебе и не нужно.
2. "Экономика ИИ без иллюзий: как отличить эффект от самообмана"
Никак :) С одной стороны, безумная скорость кодогенерации, с другой стороны, куда большая куча проблем просто сдвигается на чуть попозже, но менеджерам это невозможно объяснить. Познать это можно только через собственную боль :)
3. "Почему сотрудники не используют AI: организационные барьеры и ошибки внедрения"
Ровно потому, что тупые/трусливые начальники, и ничего с этим снизу не поделать.
4. "AI Agent Design Canvas: как оценить идею AI‑агента и собрать требования"
Пока в организации нету чёткого и детально прописанного рабочего процесса для каждой роли,скрипач агент вообще не нужен.
А когда такой процесс есть (от силы в 2% организаций), всё становится очевидным само собой.
зашлите сотку баксов.
(продожение следует)
типа оплатите билетик, и ему отказали 🙈
Для физика кстати билет стоит 20 тыс, а для юрика 50 тыс.
Ладно, потусоваться за корпоративный счёт норм,
а остальным дам всю эту конфу бесплатно, чётко по заявленным выступлениям.
1. "Архитектура данных будущего: что такое данные в эпоху ИИ"
Данные -- это абсолютно важная темка вообще в любую эпоху в ИТ, а в контексте AI это датасеты, которые актуальны лишь для тех, кто занимается обучением моделей, и если ты не из этих, то это тебе и не нужно.
2. "Экономика ИИ без иллюзий: как отличить эффект от самообмана"
Никак :) С одной стороны, безумная скорость кодогенерации, с другой стороны, куда большая куча проблем просто сдвигается на чуть попозже, но менеджерам это невозможно объяснить. Познать это можно только через собственную боль :)
3. "Почему сотрудники не используют AI: организационные барьеры и ошибки внедрения"
Ровно потому, что тупые/трусливые начальники, и ничего с этим снизу не поделать.
4. "AI Agent Design Canvas: как оценить идею AI‑агента и собрать требования"
Пока в организации нету чёткого и детально прописанного рабочего процесса для каждой роли,
А когда такой процесс есть (от силы в 2% организаций), всё становится очевидным само собой.
зашлите сотку баксов.
(продожение следует)
1😁37👍6❤4
Продолжаем прохождение конфы AI Native Conf 20 окт
(в программном комитете обнаружен экс-ментат 🔥)
"Когда Delivery перестаёт быть узким местом: агентная архитектура продуктовой работы"
Когда наймёте хорошего девопса, а не самозванца-сисадмина за 2 копейки.
"Карта AI-инструментов разработки: от GPU до агентики, без слепых зон"
Отправь этот промпт в дипсик :)
"ИИ в аналитике — отчеты уже не будут прежними"
💯, теперь будут отстойные нейрослопы, где 20% правдивых цифр будут смешаны с выдумками.
"Эволюция агентной разработки в Сбере"
Про гигачад по инсайдерским отзывам ребят кто там работает, могу много рассказать, но лучше не буду :)
"Агенты как часть штата с первого дня: роли, найм и управление при запуске продукта"
Кстати да, ну я давно уже говорю, что где собственно сервис "AI-Джуниор" хотя бы, которого можно было посадить вместо кожаного джуна, и он начал бы фигачить тикеты 24/7 как минимум не хуже, и сжигая токенов не более чем на 50 тыс рублей в месяц?
А нету и не будет, только развод гоев на "ai-помощники", польза от которых весьма мутная, а обходятся дорого.
"Миграция с Pega силами ИИ: реверс-инжиниринг логики и агентная разработка"
no comments
"Из идеи в продажу: работающая методология AI RnD"
В продажу курсов? ;)
"Не ускорять старую организацию, а построить новую: опыт AI-native трансформации бизнес-юнита"
На самом деле, с таким подходом очень даже согласен.
"Дизайн в агентном SDLC: разработку ускорили — упёрлись в дизайн"
Ну как бы да, база :) об этом пишу всё время.
"Кто сломал прод? Как граф зависимостей сокращает путь от алерта к причине"
Ok, графы и другую аналитику конечно всячески поддерживаем.
В СильныхИдеях об этом в частности "156) First principle для внедрения AI в проект"
А прод сломал джун, 100%
(перерыв на обед)
(в программном комитете обнаружен экс-ментат 🔥)
"Когда Delivery перестаёт быть узким местом: агентная архитектура продуктовой работы"
Когда наймёте хорошего девопса, а не самозванца-сисадмина за 2 копейки.
"Карта AI-инструментов разработки: от GPU до агентики, без слепых зон"
Отправь этот промпт в дипсик :)
"ИИ в аналитике — отчеты уже не будут прежними"
💯, теперь будут отстойные нейрослопы, где 20% правдивых цифр будут смешаны с выдумками.
"Эволюция агентной разработки в Сбере"
Про гигачад по инсайдерским отзывам ребят кто там работает, могу много рассказать, но лучше не буду :)
"Агенты как часть штата с первого дня: роли, найм и управление при запуске продукта"
Кстати да, ну я давно уже говорю, что где собственно сервис "AI-Джуниор" хотя бы, которого можно было посадить вместо кожаного джуна, и он начал бы фигачить тикеты 24/7 как минимум не хуже, и сжигая токенов не более чем на 50 тыс рублей в месяц?
А нету и не будет, только развод гоев на "ai-помощники", польза от которых весьма мутная, а обходятся дорого.
"Миграция с Pega силами ИИ: реверс-инжиниринг логики и агентная разработка"
no comments
"Из идеи в продажу: работающая методология AI RnD"
В продажу курсов? ;)
"Не ускорять старую организацию, а построить новую: опыт AI-native трансформации бизнес-юнита"
На самом деле, с таким подходом очень даже согласен.
"Дизайн в агентном SDLC: разработку ускорили — упёрлись в дизайн"
Ну как бы да, база :) об этом пишу всё время.
"Кто сломал прод? Как граф зависимостей сокращает путь от алерта к причине"
Ok, графы и другую аналитику конечно всячески поддерживаем.
В СильныхИдеях об этом в частности "156) First principle для внедрения AI в проект"
А прод сломал джун, 100%
(перерыв на обед)
😁31✍6🐳4
Завершаем прохождение конфы AI Native Conf 20 окт
"Опыт внедрения агентской разработки в Avito" / "опыт внедрения AI First парадигмы"
ок, но я лично вообще против AI First.
"Как переехать на ИИ в 17-летней продуктовой технологической компании"
Полноценно переезжать на ИИ крайне не рекомендую на самом деле. Тут скорее стоит пообсуждать, а вообще "зачем 17-летней продуктовой технологической компании переезжать на ИИ?"
тоже кстати "За 3 месяца всё перевернулось и мы перешли на AI-first"
Да, но "Дизайн в агентном SDLC: разработку ускорили — упёрлись в дизайн".
"Как освободить себе два дня в неделю с помощью ИИ, если ты менеджер"
Волчара детектед?? :)
"C-Level Клуб ЗАКРЫТАЯ ВСТРЕЧА" приватный эскорт для випов? :)
"Продуктовый инженер, кто это и откуда их брать?"
Норм тема. Вообще, прокачка своих инженеров в продуктовые темы, и внедрение их в компанию заказчика на помощь по AI очень приветствую.
"Мы открыли продукт для prompt injection, и это круто"
Кликбейт; наверное имеется в виду prompt injection как механизм управления агентами?
"как заменил весь GUI продакшн-сервиса одним чатом на агенте OpenClaw, не тронув бэкенд" - а, ок. Одобряем :)
"Проблема сопротивления сотрудников внедрению AI: почему AI-трансформация буксует"
Только кнут (с) :)
Помню ещё из 90-х, постоянно обсуждали "Проблема сопротивления сотрудников внедрению ERP: почему ERP-трансформация буксует"
Тогда, точнее, была ещё в основном MRP(2), но обсуждения, почему сотрудники автоматизацию массово саботируют, можно буквально копировать из статей того времени. Вечная темка :)
=
Первые 90% вашего работающего прототипа с помощью AI получить несложно. Важны остальные 190%.
С вас 50,000 рубликов.
"Опыт внедрения агентской разработки в Avito" / "опыт внедрения AI First парадигмы"
ок, но я лично вообще против AI First.
"Как переехать на ИИ в 17-летней продуктовой технологической компании"
Полноценно переезжать на ИИ крайне не рекомендую на самом деле. Тут скорее стоит пообсуждать, а вообще "зачем 17-летней продуктовой технологической компании переезжать на ИИ?"
тоже кстати "За 3 месяца всё перевернулось и мы перешли на AI-first"
Да, но "Дизайн в агентном SDLC: разработку ускорили — упёрлись в дизайн".
"Как освободить себе два дня в неделю с помощью ИИ, если ты менеджер"
Волчара детектед?? :)
"C-Level Клуб ЗАКРЫТАЯ ВСТРЕЧА" приватный эскорт для випов? :)
"Продуктовый инженер, кто это и откуда их брать?"
Норм тема. Вообще, прокачка своих инженеров в продуктовые темы, и внедрение их в компанию заказчика на помощь по AI очень приветствую.
"Мы открыли продукт для prompt injection, и это круто"
Кликбейт; наверное имеется в виду prompt injection как механизм управления агентами?
"как заменил весь GUI продакшн-сервиса одним чатом на агенте OpenClaw, не тронув бэкенд" - а, ок. Одобряем :)
"Проблема сопротивления сотрудников внедрению AI: почему AI-трансформация буксует"
Только кнут (с) :)
Помню ещё из 90-х, постоянно обсуждали "Проблема сопротивления сотрудников внедрению ERP: почему ERP-трансформация буксует"
Тогда, точнее, была ещё в основном MRP(2), но обсуждения, почему сотрудники автоматизацию массово саботируют, можно буквально копировать из статей того времени. Вечная темка :)
=
Первые 90% вашего работающего прототипа с помощью AI получить несложно. Важны остальные 190%.
С вас 50,000 рубликов.
😁25✍8❤4💯4👌3
Прекрасное: вся музыкальная индустрия перешла на цифру и стриминг, но музыкальная экономика движется ровно в противоположном направлении: назад к живой музыке и непосредственному контакту с аудиторией.
Видно, что доля потребительских расходов, связанных с покупкой билетов на концерты, стремительно растёт! А доходы, приносимые цифровой музыкой, тем временем сильно упали и не демонстрируют никаких признаков восстановления.
Теперь наглядно видно, насколько глупыми оказались крупнейшие звукозаписывающие лейблы: они фактически разрушили всю финансовую структуру, которая поддерживала индустрию звукозаписи. Это когда человек ведёт себя как животное, которое гадит в своё собственное гнездо...
Мир, к счастью, явно оборачивается к аналоговым формам, а тотальный негатив к AI этот тренд заметно усиливает.
Видно, что доля потребительских расходов, связанных с покупкой билетов на концерты, стремительно растёт! А доходы, приносимые цифровой музыкой, тем временем сильно упали и не демонстрируют никаких признаков восстановления.
Теперь наглядно видно, насколько глупыми оказались крупнейшие звукозаписывающие лейблы: они фактически разрушили всю финансовую структуру, которая поддерживала индустрию звукозаписи. Это когда человек ведёт себя как животное, которое гадит в своё собственное гнездо...
Мир, к счастью, явно оборачивается к аналоговым формам, а тотальный негатив к AI этот тренд заметно усиливает.
👍29🐳6❤3
Этот отчёт ментата заслуживает быть приведённым полностью =>
Итоги. Часов 8 "одним подходом", около 2 тыс. руб. и оно работает) Пришлось потом пару мест поправить, но это я некорректно описал эти места.
Выводы и впечатления.
1. Общее эмоциональное.
Нахожусь "под впечатлением" от такого способа разработки.
С одной стороны - в "один подход" часов за 8 (и около 2 тыс. рублей) с нуля сделан проект. Ещё и актуальная документация при проекте. И "вау!" ощущение от возможностей. AI же в SDD не просто прописывает спеки и код, но и уточняет мутное, напоминает забытое, проверяет согласованность требований. При этом работа ощущается очень плотная, но это не программирование, а именно формулирование требований, принятие решений. При обычной работе такое получается не так плотно, а "размазано". Можно пописать требования, потом код какой-то сделать, потом вернуться к требованиям. И больше кода, чем требований.
С другой стороны - нет вот этого ощущения "магии кода", когда что-то творишь, создаёшь, какие-то сложности преодолеваешь. И вдруг оно заработало! Вместо этого много ревью, а это так не вдохновляет, как писательство. Также самостоятельное написание кода даёт какое-то ощущение уверенности в нём что ли: код пишешь сам, тесты сам (ошибки тоже сам :) ) и всю структуру детально представляешь.
2. Размышляя над предыдущим пунктом появились следующие тезисы.
1) Вопрос не только в AI. Я стокнулся с коллективной работой, которая мне не так привычна. Мне привычна "self" работа, когда если и разбираешься, то, в основном, в своём коде. А здесь масса новых решений, хотя бы просто применение функций, которыми не пользуюсь. И это хорошо, это развитие и некоторая возможность почувствовать себя внутри команды, даже не общаясь при этом с людьми)
2) Добавило сложности недостаток практики в английском. Спеки на английском. Понимаю их, конечно, но читать получается намного медленнее, чем на русском. И вроде как можно язык поменять (находил в документации как настраивать). Но в английском есть чёткость и, думаю, лишние конвертации между языками не будут на пользу (как с точки зрения точности, так и просто расходов токенов моделью).
3. Получился не big конечно, но "small ball of mud". Большая связность модулей, переменные, которые "протаскиваются" насквозь через кучу функций, хотя вроде как файлы отдельные и некоторое архитектурное разбиение присутствует: вот конфигурация, вот преобразование, вот выгрузка и т.д. Но такой результат ожидаем, так как проект я задавал в основном"декларативно". Прописывал именно требования к проекту, но почти ничего про реализацию (не считая предпочтений по библиотекам, базе данных и какие константы использовать). Поэтому AI делало по своему усмотрению. И если спеки мне понятны, то модули их связность были оставлены "на усмотрение" AI. Благо, проект небольшой всё достаточно понятно, но некоторые связи уже долго отслеживать. Вывод - нужно над архитектурой проекта работать самостоятельно, не давая на откуп AI и прописывать в требования.
4. Более узкие моменты.
4.1.Пока не полностью понял логику где что должно быть - поищу ещё в документации. Сейчас весь "architecture-skeleton" отправлен как финальная стадия в архив, который в папке changes (там и proposal .md и design .md). То есть самый верхнеуровневый взгляд в архиве. А в спеках (то, что не в архиве) только сами исполненные спеки - но это же более низкий уровень представления. То ли так и должно быть, то ли я что-то не так сделал. Поразбираюсь.
4.2. LLM конечно деньги тратит очень бодро. И мелкие правки рождают много движения (например, в сводном отчёте в одном поле изменил на его значение на разность того, что было, и соседнего поля - сразу масса обращений к LLM). Сначала моделью выбрал привычную Claude Sonnet 5. Потом решил экономить и заменил на дешёвый Deepseek v4.1 flash, но он слишком косноязычный оказался. А Deepseek V4 Pro получилась вполне подходящим компромиссом. Также, думаю, нужно работать меньшими задачами. Я, по сути, весь проект сразу делал. И AI для проверок все документы перечитывала. Также, возможно, для больших проектов стоит добавлять RAG и/или graphify.
P.S. Немного о эмоциях в процессе. Восхищение магией AI и вместе с тем некоторый лёгкий страх касательно трансформации мира в целом в связи с AI) Понятно, что LLM, что просто некоторый подбор очередных самых подходящих слов (токенов). Но когда машина тебе пишет "Сами правила конвертации, проверок и формирования строки отчёта вы опишете отдельно." (в изначальном задании писал, конечно, что позже напишу). Или аккуратно уточняет мутные формулировки "Это разные направления, и они оба выглядят правдоподобно, но я не хочу угадывать. Из вашей фразы «превышение второй суммы допустимо» я читаю именно ваши исходные формулы:". Или написал правила конвертации, а также дал пример исходного файла и результата - а оно взялось проверять правила на этом примере. Плюс чёткое подтверждение действий, перепроверки (со спеками, тесты). Появляется внутренний вопрос, а точно ли это компьютер и он неодушевлённый?) Короче, я его иногда боюсь))
Итоги. Часов 8 "одним подходом", около 2 тыс. руб. и оно работает) Пришлось потом пару мест поправить, но это я некорректно описал эти места.
Выводы и впечатления.
1. Общее эмоциональное.
Нахожусь "под впечатлением" от такого способа разработки.
С одной стороны - в "один подход" часов за 8 (и около 2 тыс. рублей) с нуля сделан проект. Ещё и актуальная документация при проекте. И "вау!" ощущение от возможностей. AI же в SDD не просто прописывает спеки и код, но и уточняет мутное, напоминает забытое, проверяет согласованность требований. При этом работа ощущается очень плотная, но это не программирование, а именно формулирование требований, принятие решений. При обычной работе такое получается не так плотно, а "размазано". Можно пописать требования, потом код какой-то сделать, потом вернуться к требованиям. И больше кода, чем требований.
С другой стороны - нет вот этого ощущения "магии кода", когда что-то творишь, создаёшь, какие-то сложности преодолеваешь. И вдруг оно заработало! Вместо этого много ревью, а это так не вдохновляет, как писательство. Также самостоятельное написание кода даёт какое-то ощущение уверенности в нём что ли: код пишешь сам, тесты сам (ошибки тоже сам :) ) и всю структуру детально представляешь.
2. Размышляя над предыдущим пунктом появились следующие тезисы.
1) Вопрос не только в AI. Я стокнулся с коллективной работой, которая мне не так привычна. Мне привычна "self" работа, когда если и разбираешься, то, в основном, в своём коде. А здесь масса новых решений, хотя бы просто применение функций, которыми не пользуюсь. И это хорошо, это развитие и некоторая возможность почувствовать себя внутри команды, даже не общаясь при этом с людьми)
2) Добавило сложности недостаток практики в английском. Спеки на английском. Понимаю их, конечно, но читать получается намного медленнее, чем на русском. И вроде как можно язык поменять (находил в документации как настраивать). Но в английском есть чёткость и, думаю, лишние конвертации между языками не будут на пользу (как с точки зрения точности, так и просто расходов токенов моделью).
3. Получился не big конечно, но "small ball of mud". Большая связность модулей, переменные, которые "протаскиваются" насквозь через кучу функций, хотя вроде как файлы отдельные и некоторое архитектурное разбиение присутствует: вот конфигурация, вот преобразование, вот выгрузка и т.д. Но такой результат ожидаем, так как проект я задавал в основном"декларативно". Прописывал именно требования к проекту, но почти ничего про реализацию (не считая предпочтений по библиотекам, базе данных и какие константы использовать). Поэтому AI делало по своему усмотрению. И если спеки мне понятны, то модули их связность были оставлены "на усмотрение" AI. Благо, проект небольшой всё достаточно понятно, но некоторые связи уже долго отслеживать. Вывод - нужно над архитектурой проекта работать самостоятельно, не давая на откуп AI и прописывать в требования.
4. Более узкие моменты.
4.1.Пока не полностью понял логику где что должно быть - поищу ещё в документации. Сейчас весь "architecture-skeleton" отправлен как финальная стадия в архив, который в папке changes (там и proposal .md и design .md). То есть самый верхнеуровневый взгляд в архиве. А в спеках (то, что не в архиве) только сами исполненные спеки - но это же более низкий уровень представления. То ли так и должно быть, то ли я что-то не так сделал. Поразбираюсь.
4.2. LLM конечно деньги тратит очень бодро. И мелкие правки рождают много движения (например, в сводном отчёте в одном поле изменил на его значение на разность того, что было, и соседнего поля - сразу масса обращений к LLM). Сначала моделью выбрал привычную Claude Sonnet 5. Потом решил экономить и заменил на дешёвый Deepseek v4.1 flash, но он слишком косноязычный оказался. А Deepseek V4 Pro получилась вполне подходящим компромиссом. Также, думаю, нужно работать меньшими задачами. Я, по сути, весь проект сразу делал. И AI для проверок все документы перечитывала. Также, возможно, для больших проектов стоит добавлять RAG и/или graphify.
P.S. Немного о эмоциях в процессе. Восхищение магией AI и вместе с тем некоторый лёгкий страх касательно трансформации мира в целом в связи с AI) Понятно, что LLM, что просто некоторый подбор очередных самых подходящих слов (токенов). Но когда машина тебе пишет "Сами правила конвертации, проверок и формирования строки отчёта вы опишете отдельно." (в изначальном задании писал, конечно, что позже напишу). Или аккуратно уточняет мутные формулировки "Это разные направления, и они оба выглядят правдоподобно, но я не хочу угадывать. Из вашей фразы «превышение второй суммы допустимо» я читаю именно ваши исходные формулы:". Или написал правила конвертации, а также дал пример исходного файла и результата - а оно взялось проверять правила на этом примере. Плюс чёткое подтверждение действий, перепроверки (со спеками, тесты). Появляется внутренний вопрос, а точно ли это компьютер и он неодушевлённый?) Короче, я его иногда боюсь))
❤19✍10🤓6🐳1