Ask HN: Комфортно ли вам признавать, что вы используете ИИ?

Ask HN: Do you feel comfortable admitting that you use AI?

Ask HN: Комфортно ли вам признавать, что вы используете ИИ?

ИИ захватил индустрию, и это вызывает сопротивление. Я замечаю, что те, кто отказывается использовать ИИ, чувствуют превосходство, а те, кто использует, испытывают стыд. Я использую ИИ и чувствую себя продуктивнее, но мне стыдно в этом признаваться. Мне интересно, используют ли другие разработчики ИИ и комфортно ли им об этом говорить.

Я лично люблю использовать ИИ. Это делает мое программирование более продуктивным, чем когда-либо. Что касается проблемы сгенерированного ИИ мусора, честно говоря, инструмент, который я использую, безупречен - вы можете найти его на Github. Он превращает ваш типичный ИИ-мусор в нечто красивое. Лично мне очень комфортно признавать, что я использую ИИ - это просто кажется лучшим способом делать дела!
В моей работе есть люди на разных уровнях внедрения ИИ. С одной стороны, один старший инженер потратил месяц на то, чтобы ИИ написал ему тысячи строк кода для функции. ИИ написал миллион тестов, инструменты для визуализации данных и все такое. Но он до сих пор не сдал код в основной репозиторий, потому что знает, что никто не будет проверять тот беспорядок, который написал ИИ, и он сам не может его понять, чтобы защитить на ревью. Я, с другой стороны, не прошу ИИ писать код, но прошу его объяснять концепции, искать баги, ревьюить мои патчи и т.д. Иногда он показывает мне формат патча, но я предпочитаю, чтобы он не трогал мою файловую систему. Я отношусь к нему как к старшему сотруднику, чья задача - быть рядом и помогать мне. Это отлично работает. Я определенно стал продуктивнее, пишу код быстрее, и это устойчиво для будущего. Если бы он писал код за меня, это было бы быстрее, но я хочу использовать ИИ как инструмент, чтобы научить меня, что делать, а не делать это за меня.
Почему стыдно? Более актуальный вопрос должен быть об уровне вовлеченности/экспертизы пользователя LLM в создание/улучшение программного обеспечения. Они проработали все проектные решения, подходы, ограничения, или позволили LLM действовать без контроля? Мне совершенно не интересны TDD, кодинг и другие аспекты (так как я многое делал и мне это больше не интересно), однако я контролирую каждый аспект процесса разработки ПО, качество, производительность и интеграционные процессы, чтобы создавать качественное ПО. То, что кто-то другой пишет код поддерживаемым способом, не меняет для меня ответ.
После более чем 2 лет использования LLM-агентов для написания кода мне пришлось возвращать свои инженерные навыки. Было так легко создать 50+ проектов с красивым интерфейсом, но я не мог объяснить ни один из них. Было проще начать новый проект с нуля, чем разбираться в коде, чтобы понять, что происходит. Худшая часть была, когда заканчивались токены, моя продуктивность падала до нуля. Я даже не был инженером, а просто прославившимся промптером. В последнее время я изменил подход: я все еще использую ИИ, но как модный автокомплит, отладчик, я заставляю его черновик, а затем допрашиваю его, заставляю обосновывать каждую строку кода, пока не пойму код сам настолько, что смогу написать его, если захочу. Ребята, послушайте меня: создание целой функции одним махом может показаться 10-кратной продуктивностью, но как только сгенерированный код становится сложным, даже агент не может справиться со сложностью, которую сам создал. Большие LLM-компании продают продукт как 'кодинг закончен, просто станьте промптером и платите нам'. Раньше нам платили за написание кода, теперь мы платим за написание кода.
Конечно, я просто беру на себя ответственность за результат. Я читаю все и вношу изменения перед отправкой, но это экономит мне много времени на изучение исходников и поиск точек входа, и я не вижу, чтобы я когда-либо вернулся к старому способу.