Mõelge ise, kas soovite, et AI õpetaks teile kodeerima

Mõelge ise, kas soovite, et AI õpetaks teile kodeerima

Allikasõlm: 3087147

tunnusjoon AI abil on programmeerimise õppimine ehk nüüd lihtsam kui kunagi varem, kuigi tööriistu, mis soovitavad või genereerivad lähtekoodi, tuleb kasutada targalt. 

Programmeerimine nõuab kannatlikkust ja püsivust, eriti õppeprotsessi alguses, kui millelgi pole erilist mõtet. Koodi kirjutamise reeglid tunduvad segased. Seal on igasuguseid kirjavahemärke ja sümboleid, mida tuleb hoolikalt kasutada. Käärsoole või koma puudumine või taande segamine võib olenevalt kasutatavast keelest põhjustada vigu. Aja jooksul, piisava harjutamisega, klõpsab see paigale.

Nagu enamik algajaid, kes õpivad veebis kodeerima, alustasin õpetuste vaatamisest ja probleemide lahendamisest programmeerimisharjutuste komplektides. Kui ma mõne probleemiga jänni jäin, oli väga ahvatlev pöörduda ChatGPT poole, mis aitas mul hõlpsalt õige lahenduseni jõuda. Seda tüüpi assistendid oskavad hästi lihtsat koodi genereerida ja mõned neist võivad anda teile isegi täieliku vastuse täpselt nii, nagu te seda kirjeldate.

Mõistsin seda konkreetse funktsiooni rakendamisega maadeldes ja lülitasin Visual Studio Code'is GitHub Copiloti automaatse täitmise funktsiooni välja, et vältida enda petmist.

Ärge lihtsalt kopeerige ja kleepige

David Malan, Harvardi ülikooli arvutiteaduse professor, kes õpetab populaarset arvutiteaduse sissejuhatavat kursust CS50 (saab tasuta läbida Internetis), nõustus, et AI võib mõnikord olla liiga abiks. 

Et veenda õpilasi kasutamast selliseid tööriistu nagu OpenAI ChatGPT või Google'i Bard, pakkusid õpetajad neile alternatiivi: virtuaalset kummiparti. CS50 duck on kodeeriv vestlusbot, mida toidab GPT-4, kuid sellel on kaitsepiirded, mis takistavad õpilastel petmine.

Kummipardi silumine, nagu te ehk teate, on asi tarkvaraarenduses: kui olete mõne koodiga ummikus, võib mõne mänguasja või muu elutu objektiga seotud probleemist rääkimine aidata teil ise lahenduse välja mõelda. See on üsna tõhus.

CS50 pardisiluja on austusavaldus sellele: robot on loodud sõbralikuks ja toetavaks, see vastab ainult kursusega seotud päringutele ega anna vastuseid kodutööde probleemidele, ütles Malan. Register

„Meie poliitika kursuse alguses on, et õpilased ei tohi kasutada kolmanda osapoole tarkvara, nagu ChatGPT ja Copilot; nad kipuvad lihtsalt olema liiga abivalmid, liigagi valmis pakkuma õpilastele otseseid lahendusi, selle asemel, et neid nende poole suunata, nagu hea õpetaja võiks. Kuid õpilastel on lubatud ja julgustatakse kasutama CS50 enda AI-põhist tarkvara, millel on need pedagoogilised kaitsepiirded paigas, ”ütles ta.

CS50 part võeti kasutusele eelmisel aastal ning tagasiside on olnud valdavalt positiivne. Kui teil on käepärast virtuaalne juhendaja, saavad õpilased abi küsida igal ajal, kui nad soovivad. Kuid nagu kõik AI mudelid, võib see teha vigu ega ole alati täpne. Esialgsed testid näitasid, et see suutis õigesti vastata umbes 88 protsendile õppekavaga seotud küsimustest. 

Kodeerimisbot on kasulik ka juhendajatele; see annab neile rohkem aega õpilaste abistamiseks muudes valdkondades peale kodutööde. Uurimistöös [pDF] pardi siluri mõju analüüsides ütlesid Harvardi õpetajad, et nende eksperiment virtuaalse AI kodeerimisassistendi loomisel on end ära tasunud. Nad usuvad, et "generatiivne AI [võib] õpilaste õppimist toetada, mitte ainult häirida" ja otsivad võimalusi, kuidas seda tehnoloogiat teistes ainetes rakendada.

Säästke aega vähema guugeldamisega

Minu akadeemiline taust on füüsika ja teadusajakirjanduse, mitte arvutiteaduse alal. Hakkasin kodeerimist õppima vahetult enne uusima põlvkonna vestlusrobotite levikut. Varem püüdsin mõista tarkvarakontseptsioone või parandada vigu, lugedes sarnaselt paljude inimestega ajaveebi postitusi või otsides sarnase koodi näiteid sellistelt saitidelt nagu Stack Overflow. AI võimaldab mul selle protsessi otsetee teha.

Selle asemel, et oma probleemile kõige paremini sobivate lahenduste leidmiseks palju teavet läbi sõeluda, võin nüüd pöörduda otsese abi saamiseks suure keelemudeli poole. Õpin, et saaksin paremini aru tehnoloogiatest, mida teised kasutavad; need digitaalsed assistendid viivad mind kiiremini tööle, kui lugeda läbi mitu artiklit näiteks lõikude ja massiivide kohta või lehitseda teiste inimeste tarkvaraprojekte.

Masina kirjutatud kood ei ole aga alati kasulik ja saab seda teha madalama kvaliteediga koodibaasist. Kui ma kopeerisin ja kleepisin oma allikasse tehisintellekti assistendi väljundi, tooks see sageli kaasa uusi vigu, kuna see ei sobinud mu ülejäänud programmiga. Nende vigade parandamine võib olla keeruline, eriti kui te ei saa aru, mis on loodud. Algajana ei olnud alati selge, kas vead olid lihtsalt vale koodi tõttu või kasutati seda vales kontekstis.

"Ma arvan, et kui keegi soovib õppida kodeerima [kasutades praegust] tehisintellekti tööriistu, peaks ta sellele lähenema kahe eesmärgiga: võtke aega kodeerimise õppimiseks, et teada saada, mida tööriist genereerib. [Ja] võta omaks „koodiülevaataja” roll ning uuri, kuidas tuvastada ja parandada halba koodi,” ütles tarkvaraarendaja ja raamatu autor Zed Shaw. Õppige Pythoni rasket teed, rääkis Register

Programmeerijad peaksid suutma masinaga valmistatud koodis vigu tuvastada ega tohiks roboteid täielikult usaldada. "Asjaolu, et ChatGPT pakub kiiremaid lahendusi, mis on mähitud rahustavatesse fraasidesse nagu "Ma arvan, et see peaks teie probleemi lahendama...", muudab selle nii, et lülitame oma kriitilise mõtlemise välja ja me ei sea selle lahendusi nii hoolikalt kahtluse alla kui peaks," ütles Charles. Severance, Michigani ülikooli infokooli arvutiteaduse professor, kellel on vabastatud tasuta kodeerimiskursused veebis.

„Oletage alati, et ChatGPT on teiega võrreldes vähem kvalifitseeritud programmeerija. Ainus ohutu viis tehisintellekti tööriistu kasutada on siis, kui olete kindel, et selle lahendus on õige," lisas ta. 

Sa pead teadma, mida sa teed

Nende tööriistade tõhusaks kasutamiseks peate oma probleemist aru saama ja seda oma juhises selgelt selgitama. Väljundis tagastatava koodi kvaliteet sõltub sellest, kuidas te oma küsimusi sisendis kujundate, ütles GitHubi tootejuht Inbal Shani. Register.

Kasutajad peaksid suhtlema GitHubi koopia nagu räägiksid nad kolleegiga, soovitas ta. "Mida üksikasjalikumalt annate teie kõrval istuvale assistendile teie kavatsused ja lahendused, seda parema vastuse saate, sest tehisintellekt saab rohkem konteksti. Ta teab, kuidas teha täpsemat otsingut, et leida õige koodijupp või soovitada teie jaoks õiget testimise infrastruktuuri, ”ütles ta. 

Meie kasutatavad programmeerimiskeeled on muutunud inimkeelega paremini vastavusse; vestlustööriistad on selle evolutsiooni järgmine samm

Phillip Compeau, Carnegie Melloni ülikooli õppejõu assistent, kes lõi Rosalind platvorm ja Programmeerimine armastajatele õpetus inimestele, kes on huvitatud arvutusbioloogiast, nõus.

Kui ta õpetab õpilasi, kes hakkavad kodeerima, julgustab ta neid tehisintellektist eemale hoidma. Kuid edasijõudnutele, kes teavad põhitõdesid, õpetab ta tehnoloogiat kasutama, et olla oma töös produktiivsem ja tõhusam.

„Üks asi, mida ma õpilastele näitan, on see, et parim viis puhta ja õige vastuse saamiseks AI-tööriista koodi genereerivalt on see, kui suudad selgelt ja õigesti määrata, mida arvuti täpselt tegema peab. See on arvuti programmeerimise definitsioon ja aja jooksul on meie kasutatavad programmeerimiskeeled muutunud inimkeelega rohkem vastavusse; vestlustööriistad on selle evolutsiooni järgmine samm," ütles ta Register

Kodeerimisel on oluline välja selgitada, mida soovite oma programmiga teha, kuidas see peaks töötama ja kus see valesti läks. Õppijad saavad neid põhioskusi aja jooksul arendada ainult järjepideva harjutamisega. Kui soovite olla pädev tarkvaraarendaja, ei saa te seda protsessi vahele jätta, kui loote tehisintellektile. Kuid kui kasutate seda targalt, saate kiiresti areneda ja saada heaks programmeerijaks – ja võib-olla on see isegi lõbus. ®

Ajatempel:

Veel alates Register