📈 Экономика кодирования
Из чего складывается совокупная стоимость кодирования:
1. Стоимость написания кода
2. Стоимость добавления новых фич в существующий проект (вариация п1)
3. Стоимость поддержки
4. Стоимость вывода из эксплуатации
Оставим за скобками продактов, ТЗ и бесконечные согласования с бизнесом, говорим только про инженерию.
Стоимость написания - это единоразовый платёж.
Стоимость поддержки - это кредит, который оплачивается годами. С хорошим кодом проценты по кредиту маленькие, с плохим кодом обслуживание технического долга выходит очень дорогим.
Мы пишем чистый код, применяем SOLID принципы и т.п. чтобы бороться со сложностью и на этапе написания, и на этапе дальнейшей поддержки и развития проекта.
Отдельно хочется отметить стоимость вывода из эксплуатации, о чём иногда забывают. Если модуль А жестко привязан к модулю Б, вы не можете просто удалить Б, когда он устареет. Вам придется переписывать А - это налог на выход. High Coupling: хотите выбросить старый диван, но он приварен к несущей стене дома. Приходится оставлять диван и строить комнату вокруг него. Так рождается легаси.
💡 Код, который легко удалить - это самый чистый код.
🤖 И вот к нам приходят LLM и разработка с помощью ИИ-агентов.
Экономические стимулы остаются: мы всё ещё хотим получить минимальную совокупную стоимость, но коэффициенты в этом уравнении драматически поменялись.
📉 П1. Стоимость написания кода – сильно сократилась. Вместо кодирования мы теперь занимаемся «контекст инжинирингом» и code review – это кратно быстрее и дешевле ручного труда.
📉П2/П3: С поддержкой и добавлением новых фич у ИИ-агентов, кажется, всё немного сложнее.
ИИ-агенты - это рычаг или множитель. Если в проекте консистентный код, следующий определённой логике, шаблонам, архитектуре - то ИИ-агент будет повторять принятые в проекте подходы. Если в коде бардак - то с ИИ добавит ещё больше бардака и хаоса.
Я в ежедневной практике вижу, как ИИ-агенты отлично справляются и с поддержкой и с добавлением новых фич в хорошо структурированной кодовой базе. За человеком остаётся «контекст инжиниринг» и code review.
📉П4: вывод из эксплуатации при наличии ИИ-агентов тоже заиграл новыми красками. Раньше была дилемма: продолжаем поддерживать текущий код или выкидываем и переписываем. В рамках целого проекта «переписать с нуля» - чаще утопическая идея. Но полностью переписать функцию, класс, набор классов, объединённых в некий модуль или переписать микросервис на другом языке - это нормально, это мы любим!
С ИИ-агентом подход «напишу весь класс заново с сохранением интерфейса» или «напишу весь микросервис заново с сохранением контракта» становится максимально дешевым! Всё чаще вижу упоминание термина «Disposable Code» (одноразовый код).
Итого по всем 4 пунктам заметно снижается стоимость кодирования. Процесс написание кода заменяется на написание промптов и сбор контекста - для многих задач это быстрее, это дешевле и это позволяет больше времени уделить важным архитектурным моментам, повышает уровень абстракции.
Но, справедливости ради, может повыситься и стоимость Code Review. Тут определённо сказать нельзя, смотря с чем сравнивать. Если у вас была слабая команда разработчиков, то Code Review «человеческого кода» определённо требовал много внимания и сил. С другой стороны, читать код, написанный нечеловеческим интеллектом, который может галлюцинировать очень правдоподобно – тоже требует особого внимания.
💸 Вывод: если вы НЕ используете разработку с помощью ИИ-агентов, вы выбрасываете деньги на ветер. Написание кода «руками» может быть приятно лично вам, но это дорогой hand-made, как костюм индивидуального пошива. Переплатить за работу программиста, который пишет код руками без ИИ - это должен быть сознательный выбор заказчика.
Post #1484
3.61K
- 👎 31
- 🔥 16
- 🤔 13
- 💩 12
- 💯 9
- 👍 5
- ⚡ 1
- ✍ 1
- 🤣 1
- 👨💻 1