Yes, and
🇬🇧 English
Carson Gross, a computer science professor at Montana State University, is often asked whether students should still pursue computer programming now that AI can generate code. His answer is "Yes, and..." Programming is fundamentally about solving problems with computers and controlling the complexity of those solutions, skills he expects to remain valuable even as AI tools spread.
Gross warns that AI is especially dangerous for junior programmers. If students simply generate code instead of writing it, they miss the hands-on understanding that comes from working in the trenches. He tells his students, "Yes, AI can generate the code for this assignment. Don't let it. You have to write the code." Without that experience, they cannot reliably read code, and the ability to read code may become even more valuable in an AI-based future. Otherwise, they risk falling into the Sorcerer's Apprentice Trap, building systems they neither understand nor control.
Gross also disagrees with comparing the shift to AI-generated code with the move from assembly to high-level languages. Compilers are largely deterministic, while LLM output is not. High-level languages removed much accidental complexity, but LLM-generated code often adds accidental complexity through poor approaches and shortcuts. Reading code critically requires having written it.
Gross encourages students to use AI as a teaching assistant rather than a code generator. Getting stuck on accidental complexity, such as unfamiliar tool chains, can waste time and drive people out of computer science. Used well, AI can help students get past these roadblocks and deepen their understanding.
🇸🇦 العربية
htmx: هل ما زال يجب تعلم البرمجة في عصر الذكاء الاصطناعي؟
يُسأل Carson Gross، أستاذ علوم الحاسوب في جامعة ولاية مونتانا، كثيرًا عمّا إذا كان ينبغي للطلاب أن يواصلوا دراسة البرمجة الآن بعد أن أصبح الذكاء الاصطناعي قادرًا على توليد الشيفرة. وجوابه هو "نعم، و..." فالبرمجة في جوهرها تتعلق بحل المشكلات باستخدام الحواسيب والسيطرة على تعقيد تلك الحلول، وهي مهارات يتوقع أن تبقى ذات قيمة حتى مع انتشار أدوات الذكاء الاصطناعي.
ويحذر Gross من أن الذكاء الاصطناعي خطير بشكل خاص على المبرمجين المبتدئين. فإذا اكتفى الطلاب بتوليد الشيفرة بدلًا من كتابتها، فإنهم يفوّتون الفهم العملي الذي لا يأتي إلا من العمل في الميدان. ويقول لطلابه: "نعم، يستطيع الذكاء الاصطناعي توليد الشيفرة لهذا الواجب. لا تدعه يفعل ذلك. يجب أن تكتب الشيفرة بنفسك." ومن دون هذه الخبرة، لن يتمكنوا من قراءة الشيفرة بموثوقية، وقد تصبح القدرة على قراءتها أكثر قيمة في مستقبل يقوم على الذكاء الاصطناعي. وإلا فقد يقعون في "فخ متدرب الساحر"، فيبنون أنظمة لا يفهمونها ولا يستطيعون التحكم بها.
كما يختلف Gross مع مقارنة التحول إلى الشيفرة المولّدة بالذكاء الاصطناعي بالانتقال من لغة التجميع إلى لغات البرمجة عالية المستوى. فالمترجمات حتمية إلى حد كبير، بينما مخرجات النماذج اللغوية الكبيرة ليست كذلك. وقد أزالت اللغات عالية المستوى قدرًا كبيرًا من التعقيد العرضي، لكن الشيفرة المولدة بالنماذج اللغوية غالبًا ما تضيف تعقيدًا عرضيًا عبر مناهج ضعيفة واختصارات. ولقراءة الشيفرة بنقد، يلزم أولًا أن تكون قد كتبتها.
ويشجع Gross الطلاب على استخدام الذكاء الاصطناعي كمساعد تدريس لا كمولّد للشيفرة. فالتعثر أمام التعقيد العرضي، مثل سلاسل الأدوات غير المألوفة، قد يضيع الوقت ويدفع الناس إلى ترك علوم الحاسوب. وإذا استُخدم جيدًا، فيمكن للذكاء الاصطناعي أن يساعد الطلاب على تجاوز هذه العقبات وتعميق فهمهم.
هل يجب أن أصبح مبرمجًا رغم وجود الذكاء الاصطناعي؟
نعم، بحسب Carson Gross. فحل المشكلات بالحواسيب والسيطرة على التعقيد ما زالا مهارتين قيّمتين، لكن على المبتدئين أن يكتبوا شيفرتهم بأنفسهم بدلًا من الاعتماد على توليد الذكاء الاصطناعي، حتى يتمكنوا من قراءة ما ينتجه الذكاء الاصطناعي وتقييمه بنقد.
🇧🇩 বাংলা
htmx: AI যুগেও কি প্রোগ্রামিং শেখা উচিত?
মন্টানা স্টেট বিশ্ববিদ্যালয়ের কম্পিউটার বিজ্ঞানের অধ্যাপক Carson Gross-কে প্রায়ই জিজ্ঞেস করা হয়, AI যখন কোড তৈরি করতে পারে, তখন শিক্ষার্থীদের কি এখনও কম্পিউটার প্রোগ্রামিং শেখা উচিত? তাঁর উত্তর "হ্যাঁ, এবং..." প্রোগ্রামিং মূলত কম্পিউটার দিয়ে সমস্যা সমাধান এবং সেই সমাধানের জটিলতা নিয়ন্ত্রণ করার বিষয়। তাঁর মতে, AI টুলের প্রসার ঘটলেও এই দক্ষতাগুলো মূল্যবান থাকবে।
Gross সতর্ক করেন যে জুনিয়র প্রোগ্রামারদের জন্য AI বিশেষভাবে বিপজ্জনক। শিক্ষার্থীরা যদি নিজে কোড লেখার বদলে শুধু AI দিয়ে তৈরি করে, তবে তারা সেই হাতেকলমে বোঝার সুযোগ হারায়, যা কাজের ভেতর থেকেই আসে। তিনি তাঁর শিক্ষার্থীদের বলেন, "হ্যাঁ, এই অ্যাসাইনমেন্টের কোড AI লিখে দিতে পারে। কিন্তু তাকে সেটা করতে দিও না। তোমাকে নিজে কোড লিখতেই হবে।" এই অভিজ্ঞতা ছাড়া তারা কোড নির্ভরযোগ্যভাবে পড়তে পারবে না, অথচ AI-নির্ভর ভবিষ্যতে কোড পড়ার দক্ষতা আরও বেশি মূল্যবান হতে পারে। নইলে তারা "Sorcerer's Apprentice Trap"-এ পড়ার ঝুঁকিতে থাকবে, অর্থাৎ এমন সিস্টেম বানাবে যা তারা বোঝে না এবং নিয়ন্ত্রণও করতে পারে না।
Gross আরও বলেন, AI-জনিত কোডের দিকে যাওয়াকে অ্যাসেম্বলি থেকে হাই-লেভেল ভাষায় যাওয়ার সঙ্গে তুলনা করা তিনি ঠিক মনে করেন না। কম্পাইলার বেশির ভাগ ক্ষেত্রেই ডিটারমিনিস্টিক, অর্থাৎ নির্দিষ্ট ইনপুটে নির্দিষ্ট ফল দেয়, কিন্তু LLM-এর আউটপুট সেরকম নয়। হাই-লেভেল ভাষা অনেক আকস্মিক জটিলতা দূর করেছে, অথচ LLM-এর তৈরি কোড প্রায়ই দুর্বল পদ্ধতি ও শর্টকাটের মাধ্যমে আকস্মিক জটিলতা বাড়িয়ে দেয়। কোড সমালোচনামূলকভাবে পড়তে হলে আগে সেটি লেখা থাকা দরকার।
Gross শিক্ষার্থীদের AI-কে কোড জেনারেটর নয়, শিক্ষণ সহকারী হিসেবে ব্যবহার করতে উৎসাহিত করেন। অপরিচিত টুল চেইনের মতো আকস্মিক জটিলতায় আটকে গেলে সময় নষ্ট হয় এবং মানুষ কম্পিউটার বিজ্ঞান ছেড়ে দিতেও পারে। সঠিকভাবে ব্যবহার করলে AI শিক্ষার্থীদের এই বাধাগুলো পেরোতে এবং তাদের বোঝাপড়া গভীর করতে সাহায্য করতে পারে।
AI থাকা সত্ত্বেও কি আমার প্রোগ্রামার হওয়া উচিত?
Carson Gross-এর মতে, হ্যাঁ। কম্পিউটার দিয়ে সমস্যা সমাধান এবং জটিলতা নিয়ন্ত্রণ এখনও মূল্যবান দক্ষতা, তবে শিক্ষানবিশদের উচিত AI-এর উপর নির্ভর না করে নিজের কোড লেখা, যাতে তারা AI-এর আউটপুট পড়ে সমালোচনামূলকভাবে যাচাই করতে পারে।
🇩🇪 Deutsch
htmx: Lohnt es sich im KI-Zeitalter noch, Programmieren zu lernen?
Carson Gross, Professor für Informatik an der Montana State University, wird häufig gefragt, ob Studierende angesichts der Fähigkeit von KI, Code zu erzeugen, überhaupt noch Programmierer werden sollten. Seine Antwort lautet: „Ja, und …“ Programmieren bedeutet im Kern, mit Computern Probleme zu lösen und die Komplexität dieser Lösungen zu beherrschen. Diese Fähigkeiten, so erwartet er, werden auch dann wertvoll bleiben, wenn KI-Werkzeuge sich weiter verbreiten.
Gross warnt, dass KI für Junior-Programmierer besonders gefährlich ist. Wenn Studierende Code nur generieren, statt ihn selbst zu schreiben, entgeht ihnen das praktische Verständnis, das man nur durch Arbeit „im Schützengraben“ erwirbt. Er sagt seinen Studierenden: „Ja, KI kann den Code für diese Aufgabe erzeugen. Lassen Sie es nicht zu. Sie müssen den Code selbst schreiben.“ Ohne diese Erfahrung können sie Code nicht zuverlässig lesen, und gerade diese Fähigkeit könnte in einer KI-basierten Zukunft noch wertvoller werden. Andernfalls droht die „Falle des Zauberlehrlings“: Man baut Systeme, die man weder versteht noch kontrollieren kann.
Gross widerspricht auch dem Vergleich des Übergangs zu KI-generiertem Code mit dem Wechsel von Assembler zu höheren Programmiersprachen. Compiler sind weitgehend deterministisch, LLM-Ausgaben hingegen nicht. Höhere Programmiersprachen haben viel zufällige Komplexität beseitigt, während LLM-generierter Code oft durch ungeeignete Ansätze und Abkürzungen zusätzliche zufällige Komplexität einbringt. Kritisch Code zu lesen setzt voraus, dass man ihn selbst geschrieben hat.
Gross ermutigt Studierende, KI als Lehrassistenten statt als Code-Generator zu nutzen. Sich an zufälliger Komplexität festzubeißen, etwa an unbekannten Toolketten, kann viel Zeit kosten und Menschen aus der Informatik vertreiben. Richtig eingesetzt kann KI Studierenden helfen, solche Hindernisse zu überwinden und ihr Verständnis zu vertiefen.
Soll ich trotz KI noch Programmierer werden?
Ja, sagt Carson Gross. Probleme mit Computern zu lösen und Komplexität zu beherrschen bleibt eine wertvolle Fähigkeit. Anfänger sollten jedoch ihren Code selbst schreiben, statt sich auf KI-Generierung zu verlassen, damit sie das Ergebnis der KI lesen und kritisch bewerten können.
🇪🇸 Español
htmx: ¿Sigue valiendo la pena aprender programación en la era de la IA?
Carson Gross, profesor de ciencias de la computación en Montana State University, suele recibir la pregunta de si los estudiantes deberían seguir dedicándose a la programación ahora que la IA puede generar código. Su respuesta es "Sí, y..." La programación consiste, en esencia, en resolver problemas con computadoras y controlar la complejidad de esas soluciones, habilidades que, según él, seguirán siendo valiosas aunque las herramientas de IA se extiendan.
Gross advierte que la IA es especialmente peligrosa para los programadores junior. Si los estudiantes se limitan a generar código en lugar de escribirlo, pierden la comprensión práctica que solo se adquiere trabajando en las trincheras. Él les dice a sus alumnos: "Sí, la IA puede generar el código para esta tarea. No la dejes hacerlo. Tienes que escribir el código tú mismo." Sin esa experiencia, no podrán leer el código de forma fiable, y la capacidad de leer código podría volverse aún más valiosa en un futuro basado en IA. De lo contrario, corren el riesgo de caer en la Trampa del Aprendiz de Brujo, creando sistemas que no entienden ni pueden controlar.
Gross también discrepa de comparar el cambio hacia el código generado por IA con el paso del ensamblador a los lenguajes de alto nivel. Los compiladores son en gran medida deterministas, mientras que la salida de un LLM no lo es. Los lenguajes de alto nivel eliminaron gran parte de la complejidad accidental, pero el código generado por LLM a menudo añade complejidad accidental mediante enfoques deficientes y atajos. Leer el código de forma crítica exige haberlo escrito antes.
Gross anima a los estudiantes a usar la IA como asistente docente y no como generador de código. Quedarse atascado en complejidad accidental, como cadenas de herramientas desconocidas, puede desperdiciar tiempo y alejar a las personas de la ciencia de la computación. Bien utilizada, la IA puede ayudar a los estudiantes a superar esos obstáculos y profundizar en su comprensión.
Con la IA, ¿sigo debiendo hacerme programador?
Sí, según Carson Gross. Resolver problemas con computadoras y controlar la complejidad siguen siendo habilidades valiosas, pero los principiantes deben escribir su propio código en lugar de depender de la generación por IA, para poder leer y evaluar críticamente lo que produce la IA.
🇫🇷 Français
htmx : faut-il encore apprendre la programmation à l'ère de l'IA ?
Carson Gross, professeur d'informatique à la Montana State University, se voit souvent demander si les étudiants devraient encore se lancer dans la programmation, maintenant que l'IA peut générer du code. Sa réponse est « Oui, et... » La programmation consiste fondamentalement à résoudre des problèmes avec des ordinateurs et à maîtriser la complexité de ces solutions, des compétences qui, selon lui, resteront précieuses même si les outils d'IA se répandent.
Gross met en garde contre le danger particulier que représente l'IA pour les programmeurs débutants. Si les étudiants se contentent de générer du code au lieu de l'écrire, ils passent à côté de la compréhension concrète qui ne vient qu'en travaillant sur le terrain. Il dit à ses étudiants : « Oui, l'IA peut générer le code de ce devoir. Ne la laissez pas faire. Vous devez écrire le code vous-mêmes. » Sans cette expérience, ils ne pourront pas lire le code de manière fiable, et cette capacité pourrait devenir encore plus précieuse dans un avenir fondé sur l'IA. Sinon, ils risquent de tomber dans le piège de l'apprenti sorcier, en créant des systèmes qu'ils ne comprennent ni ne maîtrisent.
Gross n'est pas non plus d'accord avec la comparaison entre le passage au code généré par IA et le passage de l'assembleur aux langages de haut niveau. Les compilateurs sont en grande partie déterministes, ce qui n'est pas le cas des sorties d'un LLM. Les langages de haut niveau ont éliminé une grande partie de la complexité accidentelle, alors que le code généré par un LLM ajoute souvent de la complexité accidentelle, à cause d'approches inadaptées et de raccourcis. Pour lire un code de manière critique, il faut l'avoir écrit soi-même.
Gross encourage les étudiants à utiliser l'IA comme assistant pédagogique plutôt que comme générateur de code. Rester bloqué sur une complexité accidentelle, comme une chaîne d'outils inconnue, peut faire perdre du temps et pousser des personnes à abandonner l'informatique. Bien utilisée, l'IA peut aider les étudiants à franchir ces obstacles et à approfondir leur compréhension.
Dois-je quand même devenir programmeur à l'ère de l'IA ?
Oui, selon Carson Gross. Résoudre des problèmes avec des ordinateurs et maîtriser la complexité restent des compétences précieuses, mais les débutants doivent écrire leur propre code plutôt que de dépendre de la génération par IA, afin de pouvoir lire et évaluer de façon critique ce que produit l'IA.
🇮🇳 हिन्दी
htmx: AI युग में क्या अभी भी प्रोग्रामिंग सीखनी चाहिए?
मोंटाना स्टेट यूनिवर्सिटी के कंप्यूटर विज्ञान प्रोफेसर Carson Gross से अक्सर पूछा जाता है कि जब AI कोड बना सकता है, तो क्या छात्रों को अब भी कंप्यूटर प्रोग्रामिंग अपनानी चाहिए। उनका जवाब है, "हाँ, और..." प्रोग्रामिंग मूल रूप से कंप्यूटर से समस्याएँ हल करने और उन समाधानों की जटिलता को नियंत्रित करने के बारे में है। उनका मानना है कि AI टूल्स के फैलने के बावजूद ये कौशल मूल्यवान बने रहेंगे।
Gross चेतावनी देते हैं कि जूनियर प्रोग्रामरों के लिए AI विशेष रूप से खतरनाक है। यदि छात्र कोड खुद लिखने के बजाय केवल AI से बनवा लेते हैं, तो वे उस व्यावहारिक समझ से वंचित रह जाते हैं जो असल काम में उतरने से आती है। वे अपने छात्रों से कहते हैं, "हाँ, AI इस असाइनमेंट का कोड बना सकता है। उसे ऐसा मत करने दो। तुम्हें कोड खुद लिखना होगा।" इस अनुभव के बिना वे कोड को भरोसेमंद तरीके से नहीं पढ़ सकेंगे, और AI-आधारित भविष्य में कोड पढ़ने की क्षमता और भी अधिक मूल्यवान हो सकती है। अन्यथा वे "Sorcerer's Apprentice Trap" में फँस सकते हैं, यानी ऐसे सिस्टम बना लेंगे जिन्हें वे न समझते हैं और न नियंत्रित कर पाते हैं।
Gross उस तुलना से भी असहमत हैं जिसमें AI-जनित कोड की ओर बदलाव को असेंबली से हाई-लेवल भाषाओं की ओर जाने के समान बताया जाता है। कंपाइलर काफी हद तक निर्धारक (deterministic) होते हैं, जबकि LLM का आउटपुट वैसा नहीं होता। हाई-लेवल भाषाओं ने बहुत सी आकस्मिक जटिलता (accidental complexity) हटा दी, पर LLM-जनित कोड अक्सर कमज़ोर तरीकों और शॉर्टकट के कारण आकस्मिक जटिलता बढ़ा देता है। कोड को आलोचनात्मक दृष्टि से पढ़ने के लिए पहले उसे लिखना ज़रूरी है।
Gross छात्रों को AI को कोड जनरेटर के बजाय शिक्षण सहायक के रूप में उपयोग करने के लिए प्रोत्साहित करते हैं। अपरिचित टूल चेन जैसी आकस्मिक जटिलताओं में अटकना समय बर्बाद कर सकता है और लोगों को कंप्यूटर विज्ञान से दूर भी कर सकता है। सही तरीके से इस्तेमाल किया जाए तो AI छात्रों को ऐसी बाधाओं से पार पाने और उनकी समझ गहरी करने में मदद कर सकता है।
क्या AI के होते हुए भी मुझे प्रोग्रामर बनना चाहिए?
Carson Gross के अनुसार, हाँ। कंप्यूटर से समस्याएँ हल करना और जटिलता को नियंत्रित करना अब भी मूल्यवान कौशल हैं, लेकिन शुरुआती लोगों को AI से कोड बनवाने पर निर्भर रहने के बजाय अपना कोड खुद लिखना चाहिए, ताकि वे AI के आउटपुट को पढ़ और आलोचनात्मक रूप से परख सकें।
🇮🇩 Bahasa Indonesia
htmx: Masih Perlukah Belajar Pemrograman di Era AI?
Carson Gross, profesor ilmu komputer di Montana State University, sering ditanya apakah mahasiswa sebaiknya tetap menekuni pemrograman sekarang setelah AI dapat menghasilkan kode. Jawabannya adalah "Ya, dan..." Pemrograman pada dasarnya adalah tentang memecahkan masalah dengan komputer dan mengendalikan kompleksitas solusi tersebut. Ia meyakini keterampilan ini akan tetap berharga meskipun alat AI semakin tersebar.
Gross memperingatkan bahwa AI sangat berbahaya bagi programmer junior. Jika mahasiswa hanya menghasilkan kode alih-alih menulisnya sendiri, mereka kehilangan pemahaman praktis yang hanya didapat dari terjun langsung ke lapangan. Ia berkata kepada mahasiswanya, "Ya, AI bisa menghasilkan kode untuk tugas ini. Jangan biarkan itu terjadi. Kalian harus menulis kodenya sendiri." Tanpa pengalaman itu, mereka tidak akan dapat membaca kode dengan andal, padahal kemampuan membaca kode mungkin menjadi semakin berharga di masa depan yang berbasis AI. Jika tidak, mereka berisiko terjebak dalam "Sorcerer's Apprentice Trap", membangun sistem yang tidak mereka pahami dan tidak bisa mereka kendalikan.
Gross juga tidak setuju bahwa peralihan ke kode buatan AI dapat disamakan dengan peralihan dari bahasa assembly ke bahasa tingkat tinggi. Compiler sebagian besar bersifat deterministik, sedangkan keluaran LLM tidak. Bahasa tingkat tinggi menghilangkan banyak kompleksitas aksidental, tetapi kode yang dihasilkan LLM sering menambahkan kompleksitas aksidental melalui pendekatan yang kurang tepat dan jalan pintas. Membaca kode secara kritis mengharuskan seseorang pernah menulis kode.
Gross mendorong mahasiswa untuk memakai AI sebagai asisten pengajar, bukan sekadar generator kode. Terjebak pada kompleksitas aksidental, seperti rantai alat yang belum dikenal, dapat membuang waktu dan membuat orang meninggalkan ilmu komputer. Jika digunakan dengan baik, AI dapat membantu mahasiswa melewati hambatan tersebut dan memperdalam pemahaman mereka.
Apakah saya tetap sebaiknya menjadi programmer meski ada AI?
Ya, menurut Carson Gross. Memecahkan masalah dengan komputer dan mengendalikan kompleksitas tetap merupakan keterampilan yang berharga, tetapi pemula sebaiknya menulis kodenya sendiri, bukan hanya mengandalkan generasi AI, agar mereka dapat membaca dan menilai secara kritis apa yang dihasilkan AI.
🇯🇵 日本語
htmx:AI時代にプログラミングを学ぶべきか?
モンタナ州立大学でコンピュータサイエンスを教えるCarson Gross教授は、AIがコードを生成できる今、学生はまだプログラマーを目指すべきかとよく尋ねられます。彼の答えは「はい、そして……」です。プログラミングの本質は、コンピュータで問題を解決し、その解決策の複雑さを制御することにあります。AIツールが広がっても、こうしたスキルは価値を持ち続けると彼は考えています。
Gross教授は、AIが特に若手プログラマーにとって危険だと警告します。学生がコードを自分で書かず、ただ生成させてしまうと、現場で手を動かすことで得られる実践的な理解を逃してしまいます。彼は学生にこう伝えています。「はい、AIはこの課題のコードを生成できます。でも、やらせてはいけません。自分でコードを書かなければならないのです。」そうした経験がなければ、コードを確実に読むことはできません。そしてAIが中心となる未来では、コードを読む力こそ一層価値を持つかもしれません。さもなければ、「魔法使いの弟子の罠」に陥り、理解も制御もできないシステムを作ってしまうおそれがあります。
また、Gross教授はAIによるコード生成への移行を、アセンブリから高水準言語への移行にたとえる見方には同意していません。コンパイラは概ね決定的な動作をしますが、LLMの出力はそうではないからです。高水準言語は多くの偶発的な複雑さを取り除きましたが、LLMが生成したコードは、不適切なアプローチや近道によって偶発的な複雑さをむしろ増やすことが少なくありません。コードを批判的に読むには、まず自分で書いた経験が必要なのです。
Gross教授は、学生にAIをコード生成器ではなく、学習を助けるティーチングアシスタントとして使うよう勧めています。見慣れないツールチェーンのような偶発的な複雑さで立ち往生すると、時間を浪費し、コンピュータサイエンスから離れてしまうこともあります。うまく使えば、AIはそうした障壁を乗り越え、理解を深める助けになるのです。
AIがある今でも、プログラマーを目指すべきでしょうか?
Carson Gross教授によれば、はいです。コンピュータで問題を解決し複雑さを制御する能力は今も価値があります。ただし初心者は、AIの生成に頼るのではなく自分でコードを書くべきです。そうすることで、AIの出力を読んで批判的に評価できるようになります。
🇧🇷 Português
htmx: Ainda vale a pena aprender programação na era da IA?
Carson Gross, professor de ciência da computação na Montana State University, costuma ser questionado se os estudantes ainda devem seguir carreira em programação agora que a IA consegue gerar código. Sua resposta é "Sim, e..." Programar é, fundamentalmente, resolver problemas com computadores e controlar a complexidade dessas soluções, habilidades que, segundo ele, continuarão valiosas mesmo com a expansão das ferramentas de IA.
Gross alerta que a IA é especialmente perigosa para programadores júnior. Se os estudantes apenas geram código em vez de escrevê-lo, perdem a compreensão prática que só se adquire trabalhando na linha de frente. Ele diz aos alunos: "Sim, a IA pode gerar o código desta tarefa. Não deixe que ela faça isso. Você tem que escrever o código." Sem essa experiência, eles não conseguirão ler código com confiança, e a capacidade de ler código pode se tornar ainda mais valiosa em um futuro baseado em IA. Caso contrário, correm o risco de cair na Armadilha do Aprendiz de Feiticeiro, criando sistemas que não entendem nem conseguem controlar.
Gross também discorda da comparação entre a mudança para código gerado por IA e a passagem do assembly para linguagens de alto nível. Os compiladores são, em grande parte, determinísticos, ao contrário da saída de um LLM. As linguagens de alto nível eliminaram grande parte da complexidade acidental, enquanto o código gerado por LLMs frequentemente adiciona complexidade acidental por meio de abordagens inadequadas e atalhos. Ler código criticamente exige ter escrito código antes.
Gross incentiva os estudantes a usar a IA como assistente de ensino, e não como gerador de código. Ficar travado em complexidade acidental, como cadeias de ferramentas desconhecidas, pode desperdiçar tempo e afastar pessoas da ciência da computação. Bem utilizada, a IA pode ajudar os estudantes a superar esses obstáculos e aprofundar sua compreensão.
Mesmo com a IA, devo me tornar programador?
Sim, segundo Carson Gross. Resolver problemas com computadores e controlar a complexidade continuam sendo habilidades valiosas, mas iniciantes devem escrever o próprio código, em vez de depender da geração por IA, para conseguir ler e avaliar criticamente o que a IA produz.
🇷🇺 Русский
htmx: стоит ли учить программирование в эпоху ИИ?
Carson Gross, профессор информатики Университета штата Монтана, часто слышит вопрос: стоит ли студентам по-прежнему заниматься программированием, если ИИ умеет генерировать код? Его ответ: «Да, и...» Программирование по сути сводится к решению задач с помощью компьютеров и контролю сложности этих решений. Он считает, что эти навыки сохранят ценность и при распространении ИИ-инструментов.
Gross предупреждает, что ИИ особенно опасен для начинающих программистов. Если студенты просто генерируют код вместо того, чтобы писать его, они упускают практическое понимание, которое приходит только в процессе работы «в окопах». Он говорит своим студентам: «Да, ИИ может сгенерировать код для этого задания. Не позволяйте ему этого. Код вы должны написать сами». Без такого опыта они не смогут надёжно читать код, а умение читать код может стать ещё ценнее в будущем, основанном на ИИ. В противном случае им грозит «ловушка ученика чародея»: создание систем, которые они не понимают и не могут контролировать.
Gross также не согласен со сравнением перехода к коду, генерируемому ИИ, с переходом от ассемблера к языкам высокого уровня. Компиляторы в основном детерминированы, тогда как результаты LLM таковыми не являются. Языки высокого уровня устранили многие случайные сложности, а код, созданный LLM, часто добавляет их из-за неудачных подходов и обходных путей. Чтобы критически читать код, нужно сначала научиться его писать.
Gross призывает студентов использовать ИИ как помощника в обучении, а не как генератор кода. Застревание на случайной сложности, например на незнакомых инструментальных цепочках, может отнимать время и отвращать людей от информатики. При разумном использовании ИИ может помочь студентам преодолевать такие препятствия и углублять понимание.
Стоит ли мне стать программистом, учитывая ИИ?
Да, по мнению Carson Gross. Решение задач с помощью компьютеров и контроль сложности остаются ценными навыками, но начинающим стоит писать код самостоятельно, а не полагаться на генерацию ИИ, чтобы уметь читать и критически оценивать то, что создаёт ИИ.
🇨🇳 简体中文
htmx:AI时代还应该学习编程吗?
蒙大拿州立大学的计算机科学教授Carson Gross经常被问到,既然AI可以生成代码,学生是否还应该学习编程。他的回答是"是的,而且……"编程从根本上讲是用计算机解决问题,并控制这些解决方案的复杂性。他认为,即使AI工具日益普及,这些技能仍将保持价值。
Gross警告说,对初级程序员而言,AI尤其危险。如果学生只是生成代码而不亲自编写,就会失去只有亲身投入实战才能获得的动手理解。他告诉学生:"是的,AI可以为这项作业生成代码。不要让它这么做。你必须自己写代码。"没有这种经验,他们就无法可靠地阅读代码,而在AI主导的未来,阅读代码的能力可能变得更加宝贵。否则,他们就有可能陷入"魔法师学徒陷阱",构建出自己既不理解也无法掌控的系统。
Gross还不同意将向AI生成代码的转变类比为从汇编语言到高级语言的转变。编译器大体上是确定性的,而大语言模型的输出则不然。高级语言消除了大量偶然复杂性,而大语言模型生成的代码则常常因方法欠佳和走捷径而增加偶然复杂性。要批判性地阅读代码,就必须先亲自写过代码。
Gross鼓励学生把AI当作助教而非代码生成器来使用。在不熟悉的工具链等偶然复杂性上卡住,可能会浪费时间,甚至让人离开计算机科学领域。如果使用得当,AI可以帮助学生越过这些障碍,加深理解。
既然有了AI,我还应该成为一名程序员吗?
据Carson Gross的看法,应该。用计算机解决问题和控制复杂性仍是宝贵的技能,但初学者应亲自编写代码,而不是依赖AI生成,这样才能读懂并批判性地评估AI的产出。