Alan Kay: Nola irakatsiko nuke Informatika 101

"Benetan unibertsitatera joateko arrazoietako bat lanbide heziketa soiletik haratago joan eta ideia sakonagoak hartzea da".

Alan Kay: Nola irakatsiko nuke Informatika 101

Pentsa dezagun apur bat galdera honi buruz. Duela urte batzuk, Informatika sailek hainbat unibertsitatetan hitzaldiak ematera gonbidatu ninduten. Ia kasualitatez, graduko ikasleen, graduondoko ikasleen eta irakasleen lehen publikoari galdetu nion "Informatika Zientzien" definizioaz. Denek ingeniaritza definizio bat baino ezin izan zuten eman. Leku berri bakoitzean egin nuen hori, eta leku guztietan antzeko emaitzak zeuden.

Beste galdera bat izan zen: "Nor da Douglas Engelbart?" Hainbatek esan zuten: "Ez al zen ordenagailuko saguarekin zerikusirik?" (eta hau oso etsigarria izan zen niretzat, nire komunitate zientifikoak ahalegin handia egin baitzuen galdera honen erantzuna saguaren bi edo hiru klik eginez posible zela ziurtatzeko eta Engelbartek ordenagailuko saguarekin benetan zerikusirik zuela sinetsita) .

Arazoaren zati bat jakin-min eza zen, hein batean ikaskuntzarekin zerikusirik ez zuten helburu pertsonalen estutasuna, hein batean zientzia hori zer zen ulertzea eta abar.

Hainbat urte daramatzat lanaldi partzialean Kaliforniako Unibertsitateko informatika sailean (funtsean irakaslea naiz, baina ez dut zertan saileko bileretara joan). Noizean behin klaseak ematen ditut, batzuetan lehen mailako ikasleentzat. Urteen poderioz, informatikaren jakin-min maila baxua nabarmen jaitsi da (baina ospe maila ere hazi egin da, informatika ondo ordaindutako lan baterako bide gisa ikusten baita goi-mailako batetik kodetu eta ziurtagiria lortuz gero). 10 eskola). Horren arabera, ikasle bakar batek ere ez du inoiz kexatu Kaliforniako Unibertsitateko lehen hizkuntza C++ dela!

Iruditzen zait "Ordenagailua" eta "Zientzia" esanahiak kontzeptu ahul eta masiboek suntsitu dituzten egoera baten aurrean gaudela termino berri bat sortzeko - bakeroen etiketa moduko bat -, soinu ona dirudiena baina dena. nahiko hutsik. Era berean suntsitu den termino erlazionatutako bat "software ingeniaritza" da, eta, berriro ere, ez zituen "programazio" eta "ingeniaritza" ideiarik burutsuenak erabiltzen, baizik eta horiek konbinatu besterik ez zuen (hau nahita egin zen hirurogeiko hamarkadan, orduan asmatutako terminoa).

Benetan unibertsitatera joateko arrazoietako bat lanbide-heziketa soiletik haratago joan eta ideia sakonagoak hartzea da. Nahiko arrazoizkoa iruditzen zait espezialitate baten sarrera bat saiatzea β€”adibideen bidez ahal badaβ€” ikasleak bizitza errealeko arazoekin konprometitzen eta eremuan benetan interesgarria, garrantzitsua eta funtsezkoa dena ulertzen hastea.

Lehen mailako ikasleak poztu egiten dira beste erregela baten gainean nola gehitzeko makina bihurtzen den erakusten zaienean, eta horrekin 5. mailako haurrak zatikiak gehitzen irabazi ditzaten. Eta gero pozik hartuko dute parte gehitzeko makina hobetuen garapenean. Benetako ordenagailu bat ukitu zuten, hausnartzen laguntzen digun tresna fisiko eta mentala. Zenbakiak irudikatzeko modu benetan eraginkorra ikasi zuten - eskoletan irakasten dena baino eraginkorragoa!

"Gehitzeko" ideia "gehitzeko" zentzu komunarekin konbinatu ahal izan zuten propietate berri indartsuekin antzeko zerbaitekin. Hainbat arazo konpondu ahal izateko programatu zuten.

Zabaldu ere egin zuten. Eta abar. Hau ez da ordenagailu digital bat. Eta hau ez da memorizatutako programa duen ordenagailu bat. Baina hori da ordenagailuaren funtsa. En bezala,-en moduan,-en gisan antikythera mekanismoa - Hau da, oro har, ordenagailuaren eta informatikaren funtsa.

Alan Kay: Nola irakatsiko nuke Informatika 101

Antikythera Mekanismoa

Noraino irits gaitezke eta zenbat egin dezakegu gauzak eskuetatik joan baino lehen eta abstrakzioetan galdu baino lehen? Karakterizazioaren alde beti izan naiz Alan Perlis - lehen Turing sariaren irabazlea, "Informatika Zientzia" terminoa asmatu zuenak - 60ko hamarkadan esan zuena: "Informatika prozesuen zientzia da". Prozesu guztiak.

Quoraren mesedetan, ez gaitezen saiatu hau gehiago bultzatzen edo dogma erlijioso bihurtzen. Erabili dezagun ideia pozik Ala Perlisagure alorrean hobeto pentsatzeko. Eta batez ere nola irakatsi. Orain "zientziaren" esanahi modernoa aztertu behar dugu, eta Perlis nahiko ziur zegoen ez zela esanahi zaharragoekin (adibidez, "ezagutza-bilduma") eta erabilerekin (esaterako, "liburutegien zientzia" edo are zientziak") "). "Zientziaz" fenomeno bat ulertzen saiatu zen fenomenoak erakusten, "jarraitzen" eta iragartzen saiatzen diren eredu/mapak sortuz.

Alan Kay: Nola irakatsiko nuke Informatika 101

Hainbat elkarrizketa egin ditut mapa eta modelo onenak kamiseta bati nola egokitzen zaizkion askotan, Maxwell-en ekuazioak eta beste batzuk egiten duten moduan. Analogia da "zubien zientzia" dagoela, nahiz eta zubi gehienak gizakiak eginak izan. Baina behin zubi bat eraikita, zientzialariek azter ditzaketen fenomenoak adierazten ditu, zubiak mota askotako ereduak egiteko erabil daitezke eta "zubi-teoria" integral eta erabilgarriak osatzeko. Dibertigarria da zubi berriak diseinatu eta eraiki ditzakezula (lehen aipatu dut ez dagoela ia ezer dibertigarriagoa zientzialari eta ingeniariek elkarrekin lan egiten duten arazo handiak eta garrantzitsuak konpontzeko!)

Alan Kay: Nola irakatsiko nuke Informatika 101

Herbert Simonek, Turing sari eta Nobel saridunak, "artifizialaren zientzia" deitu zion guztiari (eta liburu bikain bat idatzi zuen izenburu berdinarekin).

Alan Kay: Nola irakatsiko nuke Informatika 101

Adibide bat jartzen dizut. 50eko hamarkadan, enpresek eta unibertsitateek memoria-ordenagailuak eraiki zituzten eta programatzen hasi ziren -eta une berezi bat izan zen Fortran 1956an atera zenean-, ez zen goi-mailako lehen lengoaia izan, baina beharbada lehena hain ondo egin zuena non izan zen. hainbat arlotan erabiltzen da, lehen makina-lengoaian soilik egiten ziren askotan barne.

Horrek guztiak β€œfenomenoak” sortu zituen.

Alan Kay: Nola irakatsiko nuke Informatika 101

John McCarthy

Lispen historia konplexuagoa da, baina John McCarthyri interesatu zitzaion Β«konputazioaren teoria matematiko batΒ» aurkitzen saiatzeko eta dena primeran funtzionatzeko erabakia hartu zuen. Lisp interpretatzen duen eval funtzioa erraz kamiseta batean sar liteke! "Programazio sistema" batekin alderatuta, hau hutsala da. Are garrantzitsuagoa dena, "konputazioaren teoria" hau Fortran baino kontzeptu indartsuagoa zen! Hau izan zen zubi ideiarik onena!

Lisp-en miniaturazko izaerari esker, programazioaren ideia osoa klik pare batean atzematea maila sakonago batean eta artefaktu erraldoiak ikusten dituzunean ezinezkoa dirudien mailan pentsa daiteke (hau da arrazoietako bat zergatik zientzialariei gustatzen zaie matematika trinkoa eta indartsua izatea). Hemen erabiltzen den matematika matematika berria da, "aurretik" eta "ondoren" bezalako kontzeptuak onartzen dituelako eta honek "logika aldakorra" dakar, eta horrek menpekotasun funtzionala eta pentsamenduaren fluxu logikoa gordetzea ahalbidetzen du, posizioa eta pasabidea ere ahalbidetzen dituena. denboraren. (Hau oraindik ez da ulertzen gure garaian egoera programazioaren mundu krudelean).

Lisp, bere teoria propioa irudika dezakeen programazio-lengoaia eta metalengoaia indartsu gisa, benetako informatikaren adibide bat da. Hori eta antzeko beste gauza batzuk ikasten badituzu, sakonago pentsatu eta zure patuaren ardura handiagoa izango duzu Fortranen edo bere baliokide modernoetan programatzen ikasiko bazenu baino (... programatzaileengana hurbildu zaitezke! ).

Askoz gehiago ikasiko duzu informatikan behar diren diseinu mota bereziei buruz (adibidez, normalean ez da aintzat hartzen informatikak sarritan informatika-ingurunetik kanpo joatea eskatzen duenean: biltegiratutako informatika bigunaren ezaugarri berezietako bat da ez dela soilik. programarako materiala, baina ordenagailu guztiz berri baterako materiala).

Perlis-en definizioa aukeratzeko beste arrazoi bat da, oro har, informatika askoz gehiago arduratzen dela mota askotako sistemen sorreraz algoritmoekin, "datu-egiturekin" edota programazioarekin bera baino. Adibidez, ordenagailua sistema bat da, informatika sistema bat, sare lokal bat eta Internet sistemak dira, eta programa gehienek sistema hobeak izan beharko lukete baino (50eko hamarkadako programazio estilo zaharrak iraun zuen programazioa izan behar zela ematen zuen arte). honela - ezer ez dago egiatik urrunago).

Internet adibide ona da -gaur egun software gehiena ez bezala, Internet ez da ezer konpondu edo hobetzeko gelditu behar -sistema biologiko baten antza gehiago da -gure asmoarekin-, gehienek sistema informatikotzat jotzen dutena baino. Eta gaur egun eskuragarri dauden ia software-sistema guztiak baino askoz eskalagarriagoa eta fidagarriagoa da. Hau benetan pentsatzea merezi du programatzaile berriei kontzeptu indartsuak ez direnak irakatsi aurretik!

Beraz, lehen mailako Informatika-ikastaro batean egin behar duguna zera da: ikasleek hasieran zer egin dezaketen kontuan hartzea, eta, ondoren, haien "karga kognitiboa"ren barruan mantentzen saiatzea benetan garrantzitsua dena lortzen laguntzeko. Garrantzitsua da "benetakoa geratzea" eta intelektualki zintzoak eta egokiak diren moduak aurkitzea hasi berri direnentzat. (Mesedez, ez irakatsi ideia txarrak apur bat sinpleagoak diruditelako; ideia txar asko errazagoak dira benetan!).

Ikasleek hemen eztabaidatu ditudan ezaugarri garrantzitsu asko dituen zerbait sortzen hasi beharko lukete. Dinamikoki elkarreraginean dauden hainbat zatiz osatutako sistema izan behar du, eta abar. Zein programazio-lengoaia erabili erabakitzeko modu ona da elkarreraginean milaka zati dituen zerbait egitea besterik ez! Hala ez bada, bat aurkitu beharko zenuke. Egin dezakezun gauzarik txarrena ikasleak erraztasun gutxiko bide batean jartzea da, eta horrek ideia handiak asko mugatuko lituzke. Hiltzen ditu, eta hazi nahi ditugu, ez hil.

GoTo School-i buruz

Alan Kay: Nola irakatsiko nuke Informatika 101

Iturria: www.habr.com