
Новая глава в кодировании: как ИИ глубоко меняет практики программиста
7 августа 2025 г.Таблица ссылок
Аннотация и 1 введение
2. Предыдущие концептуализации интеллектуальной помощи для программистов
3. Краткий обзор больших языковых моделей для генерации кода
4. Коммерческие инструменты программирования, которые используют большие языковые модели
5. Надежность, безопасность и последствия безопасности моделей ИИ, генерирующих код,
6. Изузаение юзабилити и дизайна программирования A-ассистентного
7. Опыт отчетов и 7.1. Писать эффективные подсказки сложно
7.2 Активность программирования сдвигается в сторону проверки и незнакомой отладки
7.3. Эти инструменты полезны для шаблона и повторного использования кода
8. Неадекватность существующих метафор для программирования A-A-Advisted
8.1. Помощь ИИ в качестве поиска
8.2. Помощь ИИ в качестве компиляции
8.3. Помощь ИИ в качестве парного программирования
8.4. Отчетливый способ программирования
9. Проблемы с применением программирования конечного пользователя
9.1. Выпуск 1: Спецификация намерений, разложение проблемы и вычислительное мышление
9.2. Выпуск 2: Правильность кода, качество и (над) уверенность
9.3. Выпуск 3: Понимание и обслуживание кода
9.4. Выпуск 4: Последствия автоматизации в программировании конечных пользователей
9.5. Выпуск 5: Код без кода и дилемма прямого ответа
10. Заключение
A. Источники отчета о испытании
Ссылки
8.4. Отчетливый способ программирования
Помощь в программировании с помощью LLM приводит к поиску сходства: оба начинаются с подсказки, оба имеют информационную асимметрию, есть несколько результатов, с неточными решениями. Но есть различия: поиск-смешанная среда, тогда как помощь LLM является фиксированной. Поиск (часто) имеет происхождение, а языковые модели - нет.
Это также имеет сходство с компиляцией и программированием по спецификации. Оба включают программирование на «более высоком» уровне абстракции (для некоторого определения высшего). Тем не менее, в отличие от компиляторов, программист, использующий помощь искусственного интеллекта
Он также имеет поверхностное сходство с парным программированием, поскольку обещает позволить программисту взять роль «Навигатора», образуя высокоуровневые ментальные модели программы, одновременно делегируя роль «драйвера» в языковую модель. Но в отличие от парного программирования, человеческий навигатор часто должен запрыгнуть на сиденье водителя. И в отличие от парного программирования, программирование с помощью LLM не требует вербализации, и при этом оно не принуждает к большему фокусированию в отношении уважения к общему времени.
Таким образом, существующие метафоры не полностью отражают опыт программирования с помощью LLM. Это становится отличным способом программирования. Это не совсем поражает нас как отдельную практику программирования, так как этот термин был применен к сообществам программистов, объединенных с аналогичным духом и целями, такими как инженеры -разработчики предприятия, бриколеры, живые кодеры и кодовые изгибы; Но, как отмечают Bergström & Blackwell (2016), нет четких критериев, с помощью которых мы можем определить границы практики. Это также не затрагивает нас как новую деятельность программирования в соответствии с структурой когнитивных измерений, поскольку помощь ИИ явно ортогональна авторизации, транскрипции и модификации, применимо к каждому из этих действий и других, кроме. Тем не менее, как способ программирования, кажется, влияет
Опыт программиста более глубоко, чем такая функция, как автозаполнение, оказывая далеко идущее влияние на их отношение и практику авторизации, информацию о добыче информации, отладке, рефакторинге, тестировании, документации, обслуживании кода, обучении и многом другом.
Авторы:
(1) Advait Sarkar, Microsoft Research, Кембриджский университет (advait@microsoft.com);
(2) Эндрю Д. Гордон, Microsoft Research, Эдинбургский университет (adg@microsoft.com);
(3) Карина Негрину, Microsoft Research (cnegreanu@microsoft.com);
(4) Christian Poelitz, Microsoft Research (cpoelitz@microsoft.com);
(5) Sruti Srinivasa Ragavan, Microsoft Research (a-srutis@microsoft.com);
(6) Бен Зорн, Microsoft Research (ben.zorn@microsoft.com).
Эта статья есть
Оригинал