Skip to main content
2. febrúar 2023

Hver skrifaði þetta?

Frame 1104Ég byrjaði að forrita um miðjan tíunda áratuginn. Á þeim tíma var það forritunarmál sem best hentaði mínu umhverfi, Linux stýrikerfinu, C forritunarmálið. Ég og vinir mínir vorum ekki bara forritarar, við vorum C forritarar. Tungumálið skipti okkur öllu. Það var hæfilega flókið að komast inn í það og í gegnum ítranirnar við að skrifa forritunarsetningar, reyna að þýða þær og laga villur. Með því að skrifa komst tungumálið í puttana og varð hluti af okkar daglega orðaforða. Þær skorður sem tungumálið setti okkur stýrði því hvernig við leystum vandamál og mögulega hvaða vandamál við kusum að leysa.

Hjálpartæki
Það var strax ákveðin andstaða við það að prófa einfaldari þýdd tungumál eins og Perl, eða nota IDE (Integrated Development Environment) fyrir C forritunina sem gátu létt undir með að finna hausa eða forritasöfn og jafnvel klárað setningar fyrir okkur. Þrátt fyrir augljósan tímasparnað. Við höfðum haft fyrir því að læra C og C gat gert allt. Það eimir enn af þessari lífsskoðun jafnvel meðal kennara í faginu.

Á þessum tíma, um aldamótin, var ég farinn að vinna fyrir mér með forritun og hefði því þurft að borga leyfisgjöld fyrir IDE ritla sem voru auk þess hægir og gríðar minnisfrekir. Ég taldi mig ekki þurfa neitt umfram Vim sem er öflugur skipanalínu ritill og ókeypis. Smám saman komst ég þó í tæri við þessa hluti. Sá aðra gera eitthvað með minni fyrirhöfn en ég sjálfur. „Strengjavinnsla í Perl er mun þægilegri en í C,“ „Stakk IDE-inn þinn sjálfur upp á þessu?“ o.s.frv. Og forritun fer að snúast um það sem maður er að þróa, ekki tæknina sem maður notar. Fleiri verkfæri koma í kassann. Tungumálið dettur kannski aðeins úr puttunum, einhver fastatexti (e. boiler plate) sem maður kunni utan að kom núna með léttri vefleit sem skánaði mikið með tilkomu Google og umræðuborðum um forritun á vefnum.

Klippa og líma
Núna er að líkindum varla til sá forritari sem gúgglar ekki einföldustu hluti til að rifja þá upp. Jafnvel hluti sem þau notuðu síðast fyrir viku.

Vefsíður eins og Stack Overflow eru orðnar svo vinsælar að grínast er með að O’Reilly, sem gefur út vinsælan bókaflokk um forritun og tækni, ætti að gefa út bók um hvernig á að klippa og líma kóða þaðan [1] og þessi iðja hefur leitt af sér svið upplýsingaöryggis þar sem fylgst er með öryggisvillum sem eiga uppruna sinn í viðurkenndum svörum á slíkum síðum og hafa dreifst í ótrúlegasta hugbúnað [2].

Gervigreindin
Núna erum við víst í fjórðu iðnbyltingunni svokölluðu og hjálpartæki forritara eru orðin enn betri með hjálp gervigreindar og vélnáms. GitHub Co-pilot er til dæmis fáanlegur fyrir rétt um 1.400 kr. á mánuði. Það er byggt á Codex vélinni frá OpenAI og þjálfað á milljörðum lína af kóða úr opnum hugbúnaði á GitHub [3].

Núna getur forritari skrifað athugasemd eða lýsandi heiti á falli og Co-Pilot fyllir inn í og skilar kóða sem virkar oft án mikillar íhlutunar forritarans. Starfandi forritari getur losnað við að skrifa mikinn fastatexta í kringum mismunandi ákynja gagnalíkön með því að leyfa Co-Pilot að fylla inn í eyðurnar, sem dæmi, og getur því einbeitt sér meira að „kjötinu“ í verkefninu frekar en öllu auka umstanginu.

Með aukinni þróun er möguleiki að þetta komi til með að þýða að fólk geti þróað alls konar hugbúnað án þess að kunna mikið fyrir sér í forritun. Nóg verður að geta lýst því nokkurn veginn hvað hugbúnaðurinn á að gera og gervigreindarforritarinn býr til forritskóðann. Ákveðin lýðræðisvæðing í forritun og hið svokallaða „post-PC“ tímabil [4] sem ákveðinn tæknipáfi lýsti yfir byrjuninni á, samhliða útgáfu iPad tölvunnar, er að verða að veruleika.

Námsmat
En það er með Co-Pilot eins og IDE-ana sem ég þrjóskaðist við að nota um aldamótin. Þetta er ókeypis fyrir nemendur, því hugmyndin er sú að nemandinn verði háður umhverfinu og láti því vinnuveitanda sinn borga fyrir vöruna þegar út á vinnumarkaðinn er komið.

Nemendum stendur því til boða að nota tækni sem nánast forritar fyrir þau, frítt. Ef þau fá í hendurnar forrit þar sem vantar verkþætti og athugasemdir til staðar er jafnvel lítið að gera annað en að staðfesta það sem Co-Pilot stingur upp á. Jafnvel í heimaprófi.

Ekki nóg með þetta heldur eru til aðrar gervigreindarvélar sem nýtast í aðra þætti náms, svo sem að skrifa ritgerðir um alls konar efni [5] og vélar sem geta tekið forritskóða og lýst honum á mannamáli[6].

Það er sitthvað að lesa kóða eftir aðra og skrifa hann upp á eigin spýtur. Freistingin að stöðva hugsanaferlið og fara í næsta atriði er of mikil. Þú nærð ekki að skilja ferilinn sem forritið mun fara til hlítar. Af hverju eitthvað virkar. Þess vegna er svo mikilvægt að fá dæmi, en leysa svo öðru vísi en hliðstætt verkefni og þurfa að skilja hvers vegna forritsbútur virkar ekki, bara meta
það hvort hann virki.

Forritunarkennsla fer fram með forritunarverkefnum og þar sem annað er skipulagsleg martröð, þá eru þau yfirleitt framkvæmd í fjarnámi og á búnaði nemenda. Nemendum er ýmist uppálagt að vinna í hópum eða einir og að ræða lausnir almennt en deila ekki kóða. Þrátt fyrir það koma reglulega upp vandamál þar sem líkindi milli forritskóða einstaklinga eða hópa eru metin fullmikil.

Ritgerðarspurningar eru jafnan notaðar til að meta hvort nemandi skilji málefni nógu vel til að geta útskýrt það fyrir öðrum, eða að nemandi hafi þróað tök á ritgerðarforminu sem slíku og heimildaöflun.

Ef það er ekki hægt að treysta því að nemandi hafi svarað spurningu, skrifað forrit eða ritgerð sjálfur, og ekki hægt að nema það með líkindum við önnur verkefni, hvað er þá hægt að gera umfram það að treysta á siðferði og sannsögli?

Krossapróf eru alltaf möguleiki, en ansi takmarkaður í tilfelli forritunarnáms. Munnleg próf eru annar möguleiki en rannsóknir sýna að hlutdrægni prófdómara og persónubundið mat á viðmælandanum getur vegið þungt í einkunnagjöf [7], auk þess sem það hallar á fólk sem á erfitt með tjáningu vegna ýmissa raskana. Paraforritun með leiðbeinanda ýmist í persónu eða yfir vefinn gæti virkað en væri ansi tímafrek.

Hvað er þá til ráða?

Ég er svo sem ekki búinn að rannsaka þetta efni nægjanlega til að geta svarað þessu til hlítar en ég velti því upp hvort við þurfum eitthvað blint ferli þar sem nemandi er við stýrðar aðstæður í samtali við prófdómara sem leggur fyrir spurningar og reynir að finna gloppur í þekkingu. Jafnvel er möguleiki á að gervigreind nýtist við þetta. Þá yrði þetta í reynd öfugt Turing próf þar sem tölva metur hvort viðmælandinn er manneskja.

Höfundur: Henrý Þór Baldursson, forritari og nemandi við Háskólann í Reykjavík

Heimildir:

[1] The Practical Developer. Essential Copying and Pasting From Stack Overflow. url: https://tra38.gitbooks.io/essential-copying-and-pasting-from-stack-overflow/content/.

[2] Morteza Verdi o.fl. An Empirical Study of C++ Vulnerabilities in Crowd-Sourced Code Examples. 2019. doi: 10.48550/ARXIV.1910.01321. url: https://arxiv.org/abs/1910.01321.

[3] Bartosz Zaczyński. GitHub Copilot: Fly With Python at the Speed of Thought GitHub Copilot: Fly With Python at the Speed of Thought. Realpython.com. Ágú. 2022. url: https://realpython.com/github-copilot-python/

[4] Wikipedia. Post-PC era — Wikipedia, The Free Encyclopedia. http://en.wikipedia.org/w/index.php?title=Post-PC%20era&oldid=1078944869. [Online; accessed 27-September-2022]. 2022.

[5] [Urdadgirl69]. Artifical Intelligence allows me to get straight A’s [Spjallborðs færsla]. Reddit. url: https://www.reddit.com/r/OpenAI/comments/xlvygv/artifical_intelligence_allows_me_to_get_straight/.

[6] OpenAI. OpenAI Cookbook - Explain code. Github. url: https://github.com/openai/openai-cookbook#2-explain-code.

[7] Richard Michael Furr. Psychometrics. 4. útg. Thousand Oaks, CA: SAGE Publications, júl. 2021.

Skoðað: 412 sinnum

Blaðið Tölvumál

Forsíða Tölvumála

Leita í vefútgáfu Tölvumála

Um Tölvumál

Tölvumál - tímarit Skýrslutæknifélags Íslands er óháð tímarit um tölvutækni og hefur verið gefið út frá árinu 1976.

Vefútgáfa Tölvumála birtir vikulega nýja grein á vef Ský og árlega er gefið út veglegt prentað tímarit undir nafninu "Tölvumál" þar sem fjallað er um tölvutækni frá ýmsum sjónarhornum og er þema blaðsins jafnan valið snemma árs og útgáfa að hausti.

Ritnefnd Ský sér um að afla efni í Tölvumál og geta allir sem áhuga hafa sent inn efni.

Um ritnefnd Tölvumála