„Üks põhjus, miks tegelikult ülikooli astuda, on see, et ületada lihtsalt ametialane ettevalmistus ja haarata hoopis sügavamaid ideid.”

Mõelgem sellele natuke. Mõni aasta tagasi kutsusid mind Computer Science osakonnad mitmetes ülikoolides loengute pidamiseks. Peaaegu juhuslikult küsisin oma esimeselt auditooriumilt, kuhu kuulusid vanemad üliõpilased, doktorandid ja professorid, nende mõisted „Computer Science”. Kõik suutsid anda ainult inseneritehnilise definitsiooni. Olen seda igas uues kohas teinud ja igal pool on olnud sarnased tulemused.
Teine küsimus oli: „Kes on Douglas Engelbart?” Mõned inimesed ütlesid: „Kas ta ei olnud kuidagi seotud arvutihiirega?” (ja see pettis mind väga, sest minu teaduslik kogukond on teinud palju tööd, et sellele küsimusele vastamine oleks võimalik pärast paari kliki hiirega ning veenduda, et Engelbart oli tõesti arvutihiirega kuidagi seotud).
Osa probleemist oli seotud uudishimu puudumisega, osa aga isiklike eesmärkide kitsaskohaga, mis ei olnud seotud õppimisega, ja osa – arusaamatusega, mis see teadus endast kujutab jne.
Olen töötanud California ülikooli arvutitehnika instituudis osalise tööajaga juba mitu aastat (tegelikult olen professor, kuid mul ei ole vaja osaleda osakonna koosolekutel). Aeg-ajalt õpetan ma ka esmakursuslasi. Nende aastate jooksul on juba niigi madal uudishimu arvutiteaduse vastu veelgi vähenenud (aga populaarsus on tõusnud, kuna arvutitehnika nähakse kui teed hästi tasustatud tööni, kui oskad programmeerida ja oled lõpetanud parima 10 kooli). Seetõttu ei ole ükski üliõpilane veel kaebanud, et California ülikoolis on algkeeleks C++!
Mul on tunne, et oleme olukorras, kus mõlemad mõisted 'Computer' ja 'Science' on kahjustatud madala kvaliteediga kontseptsioonide tõttu, et luua uus termin — omamoodi sildistamine teksastele — mis kõlab hästi, kuid on piisavalt tühi. Seonduv mõisted, mis on samuti kahjustatud, on 'programmeerimise inseneriteadus', mis taas ei kasutanud kõige nutikamaid ideid 'programmeerimisest' ja 'inseneriteadusest', vaid lihtsalt kombineeris need (see tehti teadlikult kuuekümnendatel, kui termin loodi).
Üks põhjus, miks tõeliselt ülikooli minna, on ulatuda kaugemale lihtsalt ametialasest ettevalmistusest ja hoopis haarata sügavamate ideede külge. Tundub üsna mõistlik üritada, kui võimalik, näidete abil, et õppijad tegeleksid reaalsete probleemidega ja hakkaksid mõistma, mis on selles valdkonnas tõeliselt huvitav, oluline ja keskne.
Esimese klassi õpilased rõõmustavad, kui neile näidatakse, kuidas joonlaud teise joonlaua peale asetades muutub arvutiks, millega nad saavad viiendike poisid ületada, kui nad lisavad murdarvu. Seejärel on nad õnnelikud osalema täiustatud arvutite arendamisel. Nad puutuvad kokku tõelise arvutiga — füüsilise ja vaimse tööriistaga, mis aitab meil mõelda. Nad on õppinud tõeliselt tõhusat viisi numbrite esitamiseks — efektiivsem, kui õpetatakse koolides!
Nad suutsid ühendada oma selge idee «lisamisest» kui «kogumisest» millegi analooge uute võimsate omadustega. Nad programmeerisid selle nii, et see oleks võimeline lahendama erinevaid probleeme.
Nad laiendasid seda ka. Ja nii edasi. See ei ole digitaalne arvuti. Ja see ei ole mäluprogrammiga arvuti. Aga see on arvuti olemus. Just nagu — see on üldiselt arvuti ja arvutamise olemus.

Antikythera mehhanism
Kui kaugele me saame minna ja kui palju teha, enne kui kõik läheb sõna otseses mõttes hulluks ning me kaotame end abstraktsioonides? Ma olen alati olnud huvitatud iseloomustest. — esimene Turingi auhinna laureaat, kes võib-olla väljakutsus mõiste „Arvutiteadus“ — kes 60ndatel ütles: „Arvutiteadus on protsesside teadus“. Kõikide protsesside.
Quora ettevõtte nimel püüame mitte liialdada või muuta seda religioosseks dogmaks. Lihtsalt kasutagem seda mõtet rõõmuga. , et paremini mõelda meie valdkonna üle. Eriti selle üle, kuidas seda õpetada. Praegu peame vaatama teaduse kaasaegset tähendust, ja Perlis oli üsna kindel, et see ei tohiks segada vanade tähendustega (näiteks „teadmiste kogumisega“) ja kasutustega (näiteks „raamatukogu teadus“ või isegi „sotsiaalteadused“). Alltähendusega „teadus“ püüdis ta mõista nähtust, luues mudeleid/kaarte, mis üritavad näidata, „jälgida“ ja prognoosida nähtusi.

Olen andnud mitmeid intervjuusid selle kohta, kuidas parimad kaardid ja mudelid võivad sageli sobida T-särgi jaoks, just nagu Maxwelli võrrandid ja teised. Analoogia seisneb selles, et on olemas "sildade teadus", kuigi enamik sildu on inimeste loodud. Kuid kui sild on ehitatud, peegeldab see nähtusi, mida teadlased saavad uurida; sildadest on võimalik luua mitmesuguseid mudeleid ja välja töötada põhjalikke ja kasulikke "sildade teooriaid". Lust on see, et seejärel on võimalik projekteerida ja ehitada uusi sildu (olen juba maininud, et kahtlemata ei ole midagi lõbusamat kui teadlaste ja inseneride koostöö suurte ja oluliste probleemide lahendamiseks!)

Herbert Simon, TÜuringi auhinna ja Nobeli preemia laureaat, nimetas seda kõike "tehisest teaduseks" (ja kirjutas suurepärase raamatu sama nimega).

Olgu ma toon ühe näite. 50ndatel aastatel hakkasid ettevõtted ja ülikoolid ehitama programmiga varustatud arvuteid ja neid programmeerima — ning 1956. aastal tuli eriti oluline hetk, kui ilmus Fortran — mis ei olnud esimene kõrgtaseme keel, kuid ilmselt esimene, mis oli tehtud nii hästi, et seda kasutati paljudes erinevates valdkondades, sealhulgas paljutes, mis varem olid tehtud ainult masinakeeles.
See kõik andis tõuke „fenomenide“ tekkimisele.

John McCarthy
Lisp'i ajalugu on keerulisem, kuid John McCarthy huvitas katse leida „matemaatiline arvutusteooria“ ja ta oli kindel, et kõik peab töötama täiuslikult. Eval-funktsioon, mis tõlgendab Lisp'i, mahub kergelt T-särgile! Võrreldes „programmeerimissüsteemiga“ — on see tühine. Mis veelgi tähtsam, see „arvutusteooria“ sisaldas võimsamat kontseptsiooni kui Fortran! See oli parim sildide idee!
Lisp'i kompaktne natuur võimaldab programmeerimise ideed haarata paari kliki kaudu sügaval tasemel ning mõelda sellele viisil, mis näib olevat täiesti võimatu, kui vaatad suuri artefakte (see on üks põhjuseid, miks teadlased eelistavad, et matemaatika oleks kompaktne ja võimas). Siin kasutatud matemaatika on uus matemaatika, kuna ta lubab selliseid mõisteid nagu "enne" ja "pärast", mis viib "muutuva suuruse loogikani", mis võimaldab säilitada nii funktsionaalset sõltuvust kui ka loogilist mõtlemist, võimaldades samas positsiooni ja ajakäiku. (See pole endiselt meie ajal arusaadav karmis situatsioonilise programmeerimise maailmas).
Lisp, olles võimas programmeerimiskeel ja meta-keel, mis suudab esindada omaenda teooriat, on tõeline arvutiteaduse näide. Kui õpite seda ja teisi sarnaseid asju, suudate mõelda sügavamalt ja vastutada oma saatuse eest rohkem kui siis, kui õpite lihtsalt Fortranit või selle kaasaegseid ekvivalente (... nii suudate läheneda programmeerijatele!).
Te saate palju rohkem teada spetsiaalsetest disainivormidest, mis on arvutustes vajalikud (näiteks ei hinnata tavaliselt, kui arvutused nõuavad sageli väljapanekut arvutuskeskkonnast väljaspool: üks hälbiva programmi omadustest on see, et see pole lihtsalt programmimaterjal, vaid täiesti uue arvuti materjal).
Teine põhjus, miks Perlissi määratud mõisted on populaarsed, seisneb selles, et arvutamine on üldiselt palju tihedamalt seotud mitmesuguste süsteemide loomisega kui algoritmide, 'andmestruktuuride' või isegi programmeerimisega endaga. Näiteks arvuti on süsteem, arvutused on süsteemid, lokaalne võrk ja internet on süsteemid ning enamiku rakenduste puhul peaksid need olema paremad süsteemid kui need, millised nad praegu on (vana stiili programmeerimine 50ndatest püsib ikka veel, mistõttu tundub, et programmeerimine peab olema selline — tõest on kaugel midagi muud).
Internet on hea näide — erinevalt enamikest tänapäeva programmidest ei pea internetti peatama, et midagi parandada või täiustada — see sarnaneb rohkem bioloogilise süsteemiga, mitte sellele, mida enamik inimesi arvab arvutisüsteemist. Ja see on palju skaleeritavam ja usaldusväärsem kui peaaegu kõik programmid, mis tänapäeval olemas on. See on tõeliselt mõtlemapanev enne, kui õpetada algajaid programmeerimisele vähem tõhusate kontseptsioonide kaudu!
Nii et meie esimese arvutiteaduse kursuse eesmärk on arvestada seda, mida kaasõpilased saavad alguses teha, ja seejärel püüda jääda nende «kognitiivsete koormuste» piiridesse, et aidata neil jõuda selleni, mis tõeliselt oluline. On väga oluline «olla autentne» ja leida teid, mis oleksid intellektuaalselt ausad ja sobivad neile, kes alles alustavad õppimist. (Palun ärge õpetage halbu ideid ainult sellepärast, et need tunduvad veidi lihtsamad — palju halbu ideid on tegelikult palju lihtsamad!).
Üliõpilased peaksid alustama millegi loomisest, millel on palju olulisi omadusi, millest ma siin rääkisin. See peaks olema süsteem, mis koosneb mitmest dünaamiliselt omavahel seotud osast ja nii edasi. Hea viis otsustada, millist programmeerimiskeelt kasutada, on lihtsalt teha midagi, millel on tuhandeid omavahel suhtlevaid osi! Kui see ei ole võimalik, siis peaksite leidma sellise. Kõige hullem, mida teha, on suunata üliõpilased liiga nõrgale tagasisidele, mis piiraks oluliselt tähtsaid ideid. See tapab neid — ja me tahame neid kasvatada, mitte tappa.
GoTo koolist

- 17.-30. juuni, 15.-28. juuli, 12.-25. august
Allikas: habr.com
