Nvidia říká, že AI zabije kódování, ale zde je 5 důvodů, proč je to špatné

Klíčové věci

  • Generální ředitel Nvidie tvrdí, že umělá inteligence nahradí lidské programování, takže už ji není třeba učit.
  • Umělá inteligence však není vždy dokonalá; lidský dohled je zásadní pro upřesnění a zlepšení kvality kódu.
  • Programátoři navíc nabízejí dovednosti pro řešení problémů a adaptabilitu, které AI postrádá, zatímco schopnosti reagovat na zpětnou vazbu od uživatelů a technologické trendy převažují nad efektivitou AI.

Generální ředitel společnosti Nvidia prohlásil, že bychom neměli učit děti programovat, protože AI za ně udělá všechnu těžkou práci. I když je pravda, že umělá inteligence může být nejlepším přítelem kodéra, lidé by se měli stále učit programovat, bez ohledu na to, kolik kódu generovaného umělou inteligencí nakonec použijí – a to z více než jednoho důvodu.

Co řekl generální ředitel Nvidie o AI a programování?

Na summitu světové vlády v Dubaji v roce 2024 generální ředitel Nvidia Jensen Huang prohlásil, že věří, že nemá smysl učit lidi kódovat, protože programování bude v blízké budoucnosti provádět AI:

  11 nejlepších programů doporučení pro růst vašich uživatelů a podnikání

Naším úkolem je vytvořit výpočetní technologii tak, aby ji nikdo nemusel programovat. A že programovací jazyk je lidský. Každý na světě je nyní programátorem. To je zázrak umělé inteligence.

I když umělá inteligence dokáže generovat funkční bloky kódu, existují argumenty, že lidé se nepotřebují učit základy programování, pokud chtějí vytvářet programy.

Jak dobrá je AI v programování?

Než budeme moci rozebrat Jensenovo prohlášení, musíme se nejprve podívat na to, co ho k tomu vedlo.

S programováním vám mohou pomoci modely umělé inteligence na internetu. Modely pro obecné použití, jako je ChatGPT, to umí, ale můžete použít speciální model, jako je CodeGPT, určený pro zpracování programovacích dotazů.

Denis Kuria/MakeUseOf

Obecně platí, že tyto modely umělé inteligence odvádějí skvělou práci při přeměně výzev na kód. Jeho hlavní silnou stránkou, o které se Jensen zmiňuje výše, je to, že ke generování kódu pomocí AI nepotřebujete znát programování. Řekněte mu, co chcete, v angličtině, zkopírujte a vložte výsledky a (v ideálním případě) budete mít bezchybný kód, který dělá to, co jste požadovali.

Proč se Nvidia mýlí, když děti neučí programovat

Gorodenkoff/Shutterstock

Huang to skvěle uvedl a jeho prohlášení je založeno na skutečných důkazech. Existuje však spousta důvodů, proč dál učit lidi, jak kódovat.

1. AI kód ​​stále vyžaduje znalosti pro kontrolu chyb

Kód AI může často běžet bez generování chyby, ale není to dokonalé. Když se naučíte kódovat, získáte znalosti potřebné k vylepšování a zdokonalování kódu, který AI vytváří. Jak uvádíme v našem výše uvedeném pokrytí CodeGPT:

  Nejlepší levné základní desky pro hraní her v roce 2024

Takže: CodeGPT může psát kód, ale měli byste být opatrní, protože ne vždy vám poskytne nejlepší výstup. To, co získáte, může být náchylné k chybám a nemusí dodržovat osvědčené postupy. Kdykoli používáte CodeGPT nebo jakýkoli jiný nástroj založený na umělé inteligenci k psaní kódu, snažte se nejprve porozumět tomu, co kód dělá. Nestačí jen kopírovat a vkládat.

Není to jen případ chyb; jde také o to, aby byl kód čitelný pro lidi a aby se řídil základními principy programování, které by měl znát každý programátor. Pokud slepě přidáte kód vygenerovaný umělou inteligencí, riskujete, že vytvoříte velký nepořádek kódu, který je těžké rozmotat, nebo v horším případě zranitelnosti ve vašem softwaru, webu nebo jinak.

2. Programátoři mohou použít zkušenosti k řešení problémů lépe než AI

Programátoři se nakonec snaží vyřešit problém. Ať už vytváří aplikaci pro sebe nebo pro klienta, musí najít nejlepší způsob, jak převést koncept do reality pomocí kódu.

Jak programátoři získávají zkušenosti s tvorbou aplikací, mohou si lépe představit, jak projekt přechází od kresby na papíře k fungujícímu programu. AI chatboti nemají stejnou úroveň školení, aby se mohli učit z předchozích projektů a aplikovat to, co se naučili, aby v budoucnu dělali lepší práci.

3. Programátoři mohou lépe vylepšit kód, aby vyhovoval požadavkům uživatelů

Pokud děláte program pro někoho jiného, ​​je velká šance, že bude mít nějakou zpětnou vazbu. Je to přirozená součást procesu tam a zpět, který zajišťuje, že klient dostane produkt, který chce.

  7 nejlepších nástrojů pro monitorování sítě bez agenta

Pokud aplikaci zakódoval člověk, může sám implementovat jakoukoli zpětnou vazbu a poslat druhou verzi, přičemž tento trend pokračuje, dokud to nebude tak, jak chce klient. Pokud však někdo uvízl u kódu generovaného umělou inteligencí, nejlepší, co může udělat, je požádat umělou inteligenci, aby provedla úpravy, a doufat, že umělá inteligence jejich požadavek zpracuje správně (a znovu, bez zavádění chyb, přepisování již užitečných částí kódu , zavádění zranitelností atd.).

Modely AI získávají své znalosti z již existujících dat. Díky tomu jsou opravdu dobří ve vytváření věcí z věcí, které už jsou na internetu, ale ne tak dobří v porozumění nejnovějším technologiím a trendům.

Programátoři se mohou vždy informovat o nejnovějším vývoji ve zvoleném jazyce a implementovat je do svého kódu. Rozumí také tomu, jaké jazyky nejlépe fungují s jakými úkoly, a mohou změnit používaný jazyk, když někdo upadne v nemilost.

5. Programátoři mohou reagovat na naléhavé požadavky na opravu rychleji než AI

A konečně, pokud se s kódem něco pokazí, vyžaduje to někoho se znalostmi programování, aby to opravil. V případě využití zero-day je čas rozhodující; problém je třeba identifikovat a vyřešit tak rychle, jak je to v lidských silách.

Nezáleží na tom, zda je kód napsaný člověkem nebo AI; oba jsou náchylní k chybám. Nicméně někdo, kdo rozumí kódu, bude snazší problém najít a pochopit. Někdo, kdo neví, jak kód funguje, nebude ani vědět, co požádat AI, aby udělala.

Výrok Jensena Huanga nebyl zavádějící. Umělá inteligence umožňuje lidem, kteří nikdy předtím neprogramovali, generovat a používat kód. Pokud však někdo chce vytvořit něco pro sebe nebo někoho jiného, ​​bude potřebovat základní znalosti programování, aby vše fungovalo hladce a efektivně.