Кључне ствари које треба запамтити
- Извршни директор компаније Nvidia сматра да ће вештачка интелигенција (AI) заменити људско кодирање, чиме се укида потреба за његовим учењем.
- Међутим, AI није увек савршен, па је људски надзор неопходан за прецизирање и побољшање квалитета кода.
- Програмери нуде вештине решавања проблема и прилагодљивост које недостају вештачкој интелигенцији, а њихова способност да одговоре на повратне информације корисника и технологијске трендове надмашује ефикасност AI-a.
Шеф компаније Nvidia је изјавио да не би требало учити децу да кодирају, јер ће вештачка интелигенција преузети тај посао. Иако је тачно да AI може бити од велике помоћи програмерима, људи би требало да наставе са учењем програмирања, без обзира на то колико кода генерисаног AI-ом користе – и то из више разлога.
Шта је извршни директор компаније Nvidia рекао о AI-у и програмирању?
На Светском владином самиту 2024. у Дубаију, извршни директор компаније Nvidia, Јенсен Хуанг, изразио је уверење да нема потребе учити људе програмирању јер ће вештачка интелигенција преузети ту улогу у блиској будућности:
„Наш задатак је да развијемо рачунарску технологију тако да програмирање више не буде потребно. Програмски језик постаје људски језик. Сви на свету сада постају програмери. То је чудо AI-a.“
Иако AI може да генерише употребљиве делове кода, постоје разлози зашто људи не би требало да одустану од учења основа програмирања, чак и ако желе да стварају програме.
Колико је AI добар у програмирању?
Пре него што анализирамо Хуангову изјаву, морамо разумети шта га је навело да је изнесе.
AI модели доступни на интернету могу вам помоћи у процесу програмирања. Модели опште намене, као што је ChatGPT, могу да то учине, али можете користити и специјализоване моделе попут CodeGPT-а, који су намењени за обраду програмских упита.
Денис Куриа/МакеУсеОф
Генерално, ови AI модели су веома ефикасни у претварању упита у код. Њихова главна предност, коју је Хуанг поменуо, је да не морате поседовати знање о програмирању да бисте генерисали код помоћу AI-a. Једноставно му кажете шта желите на енглеском, копирате и налепите резултате, и (у идеалним условима) добићете беспрекоран код који ради оно што сте тражили.
Зашто Nvidia греши што не саветује да деца не уче програмирање
Городенкоф/Схуттерстоцк
Хуангова изјава је добро образложена и заснована на реалним чињеницама. Ипак, постоји много аргумената зашто би требало наставити са учењем програмирања.
1. AI код и даље захтева знање за проверу грешака
AI код може често радити без грешке, али није савршен. Учење програмирања вам омогућава да стекнете потребно знање за прецизирање и побољшање кода који генерише AI. Као што смо навели у нашем претходном чланку о CodeGPT-у:
„CodeGPT може да пише код, али треба бити опрезан, јер неће увек пружити најбоље резултате. Код који добијете може имати грешке и не може пратити најбоље праксе. Када користите CodeGPT или било који други AI алат за писање кода, прво покушајте да разумете шта тај код ради. Немојте га само копирати и налепити.“
Не ради се само о грешкама; ради се и о томе да код буде читљив за људе и да се обезбеди да следи основне принципе програмирања које сваки програмер треба да зна. Ако слепо додајете код који генерише AI, ризикујете да створите велику збрку кода који је тешко разумети, или, што је још горе, да унесете рањивости у ваш софтвер, веб-сајт или нешто друго.
2. Програмери користе искуство да боље решавају проблеме од AI-a
Програмери у суштини покушавају да реше проблем. Без обзира да ли праве апликацију за себе или за клијента, они морају да пронађу најбољи начин да претворе концепт у стварност користећи код.
Како програмери стичу искуство у креирању апликација, они боље могу да замисле како пројекат напредује од скице до функционалног програма. AI чат-ботови немају исти ниво обуке, па не могу да уче из претходних пројеката и да примене то знање како би боље обавили посао у будућности.
3. Програмери могу ефикасније да побољшају код како би одговорили на захтеве корисника
Ако правите програм за неког другог, велика је вероватноћа да ће он имати повратне информације. То је нормалан део процеса који осигурава да клијент добије производ какав жели.
Ако је човек кодирао апликацију, он може самостално да угради повратне информације и да пошаље нову верзију, понављајући овај процес све док апликација не буде онаква какву је клијент замислио. Међутим, ако неко користи код који је генерисао AI, највише што може да уради је да тражи од AI-a да унесе измене и да се нада да ће AI тачно обрадити његов захтев (и да притом не унесе грешке, не препише већ употребљиве делове кода, не уведе рањивости итд.).
4. Програмери се могу брже прилагодити променљивим технолошким трендовима од AI-a
AI модели добијају знање из постојећих података. То их чини веома добрим у рекреирању ствари које већ постоје на интернету, али не толико добрим у разумевању најновијих технологија и трендова.
Програмери увек могу да буду у току са најновијим достигнућима у језику који су изабрали и да их примене у свом коду. Такође, они разумеју који језици најбоље функционишу са одређеним задацима и могу да промене језик када неки од њих више не буде у употреби.
5. Програмери могу брже да одговоре на хитне захтеве за закрпе од AI-a
На крају, ако нешто крене наопако са кодом, потребна је особа са знањем програмирања да то поправи. У случају експлоатације нултог дана, време је од кључне важности; проблем треба идентификовати и отклонити што је пре могуће.
Није важно да ли је код писао човек или AI; обе варијанте су подложне грешкама. Међутим, неко ко разуме код ће лакше пронаћи и разумети проблем. Особа која не зна како код функционише, неће знати ни шта да тражи од AI-a.
Изјава Јенсена Хуанга није погрешна. AI омогућава људима који никада пре нису програмирали да генеришу и користе код. Међутим, ако неко жели да створи нешто за себе или неког другог, биће му потребно основно знање о програмирању како би обезбедио да све тече глатко и ефикасно.