Ответы к посту
Как общаться с джунами
9

Ответ на пост «Как общаться с джунами»

Буквально на днях в качестве эксперимента задал алибабаевской бесплатной нейросетке Qwen 2.5 написать скрипт на Powershell (в крышесносном синтаксисе которого я ни в зуб ногой, всегда писал на никсах шелл-скрипты), который будет инкрементально бэкапить виндовую папку с БД через Restic в одну или несколько локальных бэкап-реп, плюс заливать базовый бэкап или инкремент в облако через Rclone, а при ошибках или предупреждениях - отправлять их в телегу в специальный бот.

С рабочей версией v0.1 он справился за 15 минут, а вот версия хотя бы, по прикидкам, v0.3, заняла уже двое суток - при попытке заставить его разбить всё на функции для следования DRY, вынести параметры в конфиг-файл, сохранять параметры окружения в шифрованном виде во вспомогательный файл, опционализировать некоторый функционал AI быстро терял контекст, волюнтаристски выкидывал функции, добавлял баги, неработающий код, в типа "исправленной" версии мог подсунуть текст, ничем не отличающийся от предыдущего и т.д. В общем, расслабляться не стоит, всё время глаз да глаз за ним, в промптах всё время в конце задавал перепроверить полноту измененного кода.

Зато в конце второго дня это был уже вполне юзабельный продукт, даже переписанный в объектно-ориентированной парадигме. Что понравилось - весь код выдается полностью прокомментированный, можно одним промптом запилить юнит-тесты, а анализ ошибок иногда выдавал крайне нетривиальную и при этом верную причину, до которой я бы сам вряд ли додумался (например, парсинг однострочного и многострочного вывода в Powershell несовместимы в плане реализации). Плюс я довольно быстро вник в специфику Powershell и теперь могу сносно понимать, что там происходит. Кстати, забавы ради попросил переписать скрипт на Python и Golang, что моментально было исполнено, но программы ожидаемо не заработали, хоть и основной функционал на первый взгляд сохранялся - нужно было допиливать специфические для каждого языка вещи, и я забил.

Резюмирую: AI - неплохой вспомогательный инструмент, чтобы быстро накидать элементарный MVP, написать небольшую функцию, откомментить код, обмазать функционал проверками на ошибки и т.д. В общем, не писать руками рутину, отвлекающую от реализации бизнес-логики. Но полностью доверить электронному ублюдку написание законченного продукта не получится - кожаный ублюдок должен обладать всеми компетенциями, чтобы отличить рабочий код от нейросетевого гонева.

P.S. Qwen 2.5 очень порадовал тем, что он бесплатен, есть несколько моделей на выбор с разным специалитетом и разным количеством параметров, у него нет ограничений на количество запросов, и он их исполняет в 99.9%. Хайповый DeepSeek же, навскидку, на 14 попыток обращения из 15 выдает "Server is busy". Хотя, когда работает, похожим образом выдает неплохого качества результат. С ChatGPT сотоварищи не хочу возиться из-за пердолинга с оплатой.

Показать полностью
Отличная работа, все прочитано!