Це вільний переклад (без використання ШІ) статті “AI is Creating a Generation of Illiterate Programmers” від Namanyay Goel, опублікованої тут. Наприкінці статті я також додав свою думку з цього приводу._
Кілька днів тому Cursor перестав працювати через падіння ChatGPT.
Я подивився на свій термінал і побачив ці червоні повідомлення про помилки, які я так ненавиджу. Помилка AWS дивилася на мене у відповідь. Я не хотів розбиратися без допомоги ШІ.
Після 12 років програмування я якимось чином став гіршим у своїй професії. І це не гіпербола, це нова реальність для розробників програмного забезпечення.
Спад
Це підкралося до мене непомітно.
Спочатку я перестав читати документацію. Навіщо турбуватися, коли ШІ може миттєво пояснити все?
Потім мої навички налагодження зазнали удару. Stack trace здавались непідйомними без ШІ. Я вже не читаю повідомлення про помилки, просто копіюю їх і вставляю.
Я став людським буфером обміну, простим посередником між моїм кодом і LLM.
Раніше кожне повідомлення про помилку навчало мене чогось. А тепер? Рішення з’являються магічно, і я нічого не вчуся. Удар дофаміну від миттєвих рішень замінив задоволення від справжнього розуміння.
Після цього постраждало й глибоке розуміння. Ти пам’ятаєш, як годинами намагався зрозуміти, чому працює рішення? Тепер я просто впроваджую пропозиції ШІ. Якщо вони не працюють, покращую контекст і запитую знову. Це цикл зростаючої залежності.
Потім з’явилися емоційні зміни. Раніше радість від програмування полягала в тому, щоб вирішувати нові проблеми. Тепер я розчаровуюсь, якщо ШІ не дає рішення за 5 хвилин.
Частина, яка мене найбільше лякає? Я створюю інструмент для розробки на основі ШІ, але не можу позбутися відчуття, що я сприяю тому самому проблемі, що еродує наші колективні навички.
План реабілітації
Я не пропоную нічого радикального, наприклад, зовсім припинити використовувати ШІ, це нереалістично. Натомість я почав із “Днів без ШІ”. Один день на тиждень, коли:
- Читаю кожне повідомлення про помилку повністю
- Знову використовую справжні інструменти налагодження
- Пишу код з нуля
- Читаю вихідний код, а не питаю ШІ
Не буду брехати, це жахливо. Я почуваюся повільніше, дурніше і більш розчарованим.
Але я також відчуваю різницю. Відчуваю міцніший зв’язок зі своїм кодом і почуття належності, яке поступово зникло через ШІ. Крім того, я вчуся набагато більше.
(Незручна) Правда
Ми не стаємо розробниками “10x” завдяки ШІ.
Ми стаємо в 10 разів залежнішими від ШІ. Є різниця.
Щоразу, коли ми дозволяємо ШІ вирішити проблему, яку могли б вирішити самі, ми обмінюємо довгострокове розуміння на короткострокову продуктивність. Ми оптимізуємо для коміту дня за рахунок навичок на завтра.
Я не пропоную відмовлятися від інструментів ШІ, цей корабель вже пішов. Але нам потрібні правила гри. Ось кілька ідей:
- Не використовуйте ШІ для вирішення проблем, які ви спочатку не намагалися зрозуміти
- Читайте та розумійте всі рішення, запропоновані ШІ
- Регулярні періоди програмування без допомоги ШІ
- Зосереджуйтеся на патернах навчання, а не тільки на вирішенні негайних проблем
Так, не буду брехати, я не думаю, що зможу дотримуватись цих правил завжди. Але це початок, і я твердо вірю, що будь-хто, хто новий у світі програмування, повинен обов’язково дотримуватися всіх цих правил.
Зараз десь новий розробник вчить програмування. Вони ніколи не дізнаються, як це — насправді вирішувати проблеми самостійно.
Ніколи не відчують глибоке розуміння, яке приходить після годинної боротьби з багом.
Ми створюємо покоління розробників, які можуть ставити правильні запитання ШІ, але не можуть зрозуміти відповіді. Кожного разу, коли ШІ виходить з ладу, ми стаємо все більш беззахисними. Зараз ШІ ще не здатне повністю замінити програмістів, але ситуація лише погіршуватиметься, оскільки він продовжує розвиватися. Справжнє питання полягає не в тому, чи замінить ШІ програмістів, а в тому, чи заміняємо ми самі себе.
Спробуйте програмувати без ШІ хоча б один день. Результати можуть вас здивувати.
Моя думка
Мем, що відображає нашу стійкість (плач у dev)
Окрім того, що я повністю погоджуюсь з автором, я вважаю, що треба орієнтуватися на прийняття мислення, яке дозволить нам продовжувати розв’язувати проблеми.
Не так давно я натрапила на публікацію Caro Lagos, яка змусила мене замислитися над цією темою, і насправді, 1. я визнаю, що часто покладаюсь на ШІ для виконання певних задач, які могла б вирішити сама, і 2. це справді тривожно, що ціле покоління нових розробників втрачає навчання та глибоке розуміння в обмін на миттєву винагороду, яку дає ШІ у вирішенні багів і проблем.
Крім того, ця ситуація небезпечно поєднується з іншим явищем: розробники вже не ставлять запитань на StackOverflow, як показує Felipe Catalán: кількість відвідувань нашої колишньої біблії програмування та багів значно знизилася між січнем 2022 року та липнем 2023 року. Хоча це не панацея, багато разів подібна відповідь на StackOverflow допомагала вирішити проблему під час налагодження багів.
Як і в усьому, я вважаю, що зусилля дають свої плоди, і навпаки. Будьмо розумними у використанні ШІ і не ставимо палиці в колеса: продовжуймо думати і програмувати відповідально для себе.
Якщо вам сподобалася ця стаття, не забудьте поділитися нею з іншими розробниками. Це частина моєї роботи як розробника вCoding Chickens 🐥💻. Також нас можна знайти на LinkedIn і Instagram, де ми ділимося мемами та іншими статтями для навчання, які можуть вам сподобатися 🫶
WebDevelopment #Rails #React #JavaScript #Programming #TechInnovation #WebDev
Перекладено з: La IA está creando una generación de programadores iletrados