Письменник та розробник Брет Кемерон з Лондона розповів про те, як використання штучного інтелекту при створенні коду може вбити основні навички розробника.
Пропонуємо вам переклад його його авторського блогу від нашої редакції. Далі — слово автору.
З огляду на велику кількість перебільшених заголовків, важко чітко зрозуміти, наскільки інструменти кодування на основі штучного інтелекту, такі як ChatGPT, GitHub Copilot і Cursor, сприяють підвищенню продуктивності.
На роботі я керую командою інженерів-програмістів (і досі активно пишу код), і, за моїми приблизними оцінками, ці інструменти ШІ забезпечують підвищення продуктивності ближче до 10%, а не в 10 разів, як стверджують деякі (наприклад: тут, тут, тут, тут і тут). Дослідження Google ближче до моїх оцінок, оцінюючи середнє підвищення продуктивності розробників, які використовують ШІ, на 21%.
Я не належу до табору затятих противників штучного інтелекту. Насправді, я вважаю, що він зробив мене та інших членів моєї команди — більшість з яких є старшими інженерами-програмістами — більш продуктивними. Але водночас я почав турбуватися про довгострокові наслідки надмірної залежності від інструментів ШІ. Чи не зробить це нас гіршими у написанні програмного забезпечення в довгостроковій перспективі? Чи не позбавить це нас практики, змусивши нас вчитися повільніше?
Ми не знаємо відповіді напевно, але дослідження з написання есеїв свідчить, що, можливо, існує ризик, що надмірна залежність від ШІ може призвести до атрофії наших навичок. У проекті статті, опублікованому на початку цього місяця MIT, йдеться про те, що під час написання есе ті, хто використовував ChatGPT, «постійно показували гірші результати» порівняно з тими, хто використовував пошукову систему або не використовував нічого, і «значно гірші результати», коли їх попросили процитувати написане есе.
Загалом, ті, хто не використовував ChatGPT, «залучали більш розгалужену мережу мозкових зв’язків»; не дивно, що мозок учасників групи, яка не використовувала ШІ, працював інтенсивніше. Написання коду настільки відрізняється від написання есе, що не варто робити надто поспішних висновків на основі цього дослідження, але це є приводом для занепокоєння.
Звичайно, те, як ми використовуємо інструменти ШІ, має велике значення. Можна припустити, що якщо ми переконані, що розуміємо кожен рядок коду, який для нас генерується, ми робимо це краще, ніж ті, хто сліпо довіряє тому, що генерують для них інструменти. Учасники дослідження, які використовували ШІ для написання есе, здавалося, делегували більшу частину мислення ChatGPT, але ми не зобов’язані використовувати інструменти ШІ таким чином.
Проте, коли ми приймаємо пропозиції від ШІ, ми стаємо більше схожими на рецензентів коду, а не на активних творців. Чи має це значення? Я не знайшов жодного дослідження, яке б намагалося відповісти на це конкретне питання, але я підозрюю, що, хоча рецензування коду, безсумнівно, чогось навчає рецензента, це навчання навряд чи буде таким глибоким, як якщо б ми писали код самостійно.
З іншого боку, інструменти ШІ можуть значно заощадити час.
Раніше я, ймовірно, звернувся б до StackOverflow, щоб знайти хорошу реалізацію функції debounce
, оскільки, ймовірно, знайшов би щось краще, ніж те, що міг би придумати сам. Зараз Cursor автоматично доповнює її за мене. (І, для довідки, я вважаю, що це нормально: не обов’язково мати в пам’яті ідеальну функцію debounce
, щоб бути хорошим інженером-програмістом).
Іноді я довіряю Cursor більш складні завдання, такі як написання модульних тестів для певного фрагмента коду. Результат майже завжди потребує доопрацювання, але якщо я можу навести приклад чогось подібного, результат зазвичай є непоганою відправною точкою і економить мені час, який я витратив би на написання шаблонного коду або доопрацювання існуючого тестового файлу під нові цілі.
Для професійних програмістів важлива продуктивність, і, особливо якщо ми є старшими спеціалістами, нас оцінюють як за якістю, так і за кількістю нашої роботи. Але навчання теж важливе. Незалежно від того, чи зупиниться розвиток кодувальних здібностей LLM, чи продовжить зростати, я вірю, що завжди буде попит на людей, які глибоко розуміють код. Якщо ми хочемо бути (або залишатися) такими людьми, ми повинні ретельно продумати, яку частину свого мислення ми делегуємо AI.
Як і в багатьох інших випадках, найкращим підходом, ймовірно, є баланс. Повна відмова від інструментів ШІ може принести більше шкоди, ніж користі, особливо на ринку праці, де «навички роботи з ШІ» часто є пріоритетними. Але важливо знати, коли і як їх використовувати: не делегуйте занадто багато важливих завдань.
Блогер та розробник Джозеф Круз розповів кілька історій про внутрішню конкуренцію в ІТ-командах й поділився…
Остерігатись треба не штучного інтелекту. Бо роботу у вас, найімовірніше, забере не він, а людина,…
Криптовалюта вже перестала бути чимось екзотичним — сьогодні нею можна розраховуватись у магазинах, оплачувати послуги…
Блогер та розробник Джозеф Круз розповів, якими є п'ять найкритичніших помилок, через які програміста можуть…
Для мене медитація — це далеко не тільки «10 хв ні про що не думати».…
Можна скільки завгодно читати тредів у X про «золоті зарплати в Web3», але коли ти…