Një nga arsyet për të studiuar në universitet është të dalësh përtej trajnimit të thjeshtë profesional dhe të kapësh idetë më të thella.

Le të mendojmë pak për këtë çështje. Disa vite më parë, departamentet e Shkencave Kompjuterike më ftuan për leksione në disa universitete. Në mënyrë të rastësishme, e pyesa audiencën time të parë, përbërë nga studentë të vitit të fundit, doktorantë dhe profesorë, për përkufizimin e "Shkencës Kompjuterike". Të gjithë ofruan vetëm një përkufizim inxhinierik. E kam bërë këtë në çdo vend të ri, dhe përgjigjet ishin të ngjashme kudo.
Një tjetër pyetje ishte: "Kush është Douglas Engelbart?". Disa njerëz thanë: "a nuk ishte ai i lidhur me mausin e kompjuterit?" (dhe kjo më shqetësoi shumë, pasi komuniteti im shkencor kishte bërë shumë përpjekje që përgjigja të mund të gjendej pas dy-tre klikimesh me maus dhe të siguroheshim se Engelbart ishte vërtet i lidhur me mausine e kompjuterit).
Pjesërisht, problemi ishte mungesa e kuriozitetit, pjesërisht qëllimet e ngushta personale që nuk ishin të lidhura me mësimin, dhe gjithashtu mungesa e një ideje se çfarë përfshinte kjo shkencë, e kështu me radhë.
Kam punuar me kohë të pjesshme në departamentin e inxhinierisë kompjuterike të Universitetit të Kalifornisë për disa vjet (në thelb jam profesor, por nuk më nevojitet të shkoj në mbledhjet e departamentit). Periodikisht mbaj leksione, ndonjëherë me studentë të vitit të parë. Gjatë këtyre viteve, niveli i ulët i kuriozitetit për Shkencën Kompjuterike është ulur ndjeshëm (por gjithashtu është rritur popullariteti, pasi inxhinieria kompjuterike konsiderohet si një rrugë për punë të mirëpaguara, nëse di të programosh dhe merr një certifikatë nga shkollat më të mira). Prandaj, asnjë student nuk ka ankuar ende që gjuha e parë në Universitetin e Kalifornisë është C++!
MĂ« duket se kemi pĂ«rballĂ« njĂ« situatĂ« ku tĂ« dy termat «Computer» dhe «Science» janĂ« shkatĂ«rruar nga konceptet e dobĂ«ta masive pĂ«r tĂ« krijuar njĂ« term tĂ« ri â njĂ« lloj etikete nĂ« xhinse â qĂ« tingĂ«llon mirĂ«, por Ă«shtĂ« mjaft bosh. NjĂ« term tjetĂ«r i lidhur, i cili ishte gjithashtu shkatĂ«rruar, Ă«shtĂ« «inxhinieria e programimit», e cila, pĂ«rsĂ«ri, nuk pĂ«rdori idetĂ« mĂ« brilante tĂ« «programimit» dhe «inxhinierisë», por thjesht i kombinonte ato (kjo u bĂ« qĂ«llimisht nĂ« vitet '60, kur u shpik termi).
NjĂ« nga arsyet pĂ«r tĂ« bĂ«rĂ« regjistrimin nĂ« universitet Ă«shtĂ« pĂ«r tĂ« dalĂ« nga pĂ«rgatitja e thjeshtĂ« profesionale dhe nĂ« vend tĂ« kĂ«saj pĂ«r tĂ« kapur ide mĂ« tĂ« thella. MĂ« duket mjaft e arsyeshme qĂ« pĂ«r hyrjen nĂ« specialitet tĂ« mundohemi â nĂ«se Ă«shtĂ« e mundur, me ndihmĂ«n e shembujve â qĂ« nxĂ«nĂ«sit tĂ« pĂ«rfshihen nĂ« probleme reale dhe tĂ« fillojnĂ« tĂ« kuptojnĂ« se çfarĂ« Ă«shtĂ«, nĂ« tĂ« vĂ«rtetĂ«, interessante, e rĂ«ndĂ«sishme dhe qendrore nĂ« kĂ«tĂ« fushĂ«.
NxĂ«nĂ«sit e klasĂ«s sĂ« parĂ« gĂ«zohen kur u tregohet se si njĂ« rregullore mbi njĂ« tjetĂ«r rregullore bĂ«het njĂ« aritmetar, me tĂ« cilin ata mund tĂ« tejkalojnĂ« fĂ«mijĂ«t e klasĂ«s sĂ« pestĂ« kur shtojnĂ« pjesĂ«t fraksionare. Dhe pastaj ata do tĂ« jenĂ« tĂ« lumtur tĂ« marrin pjesĂ« nĂ« zhvillimin e aritmetarĂ«ve tĂ« pĂ«rmirĂ«suar. Ata e preku njĂ« kompjuter tĂ« vĂ«rtetĂ« â njĂ« mjet fizik dhe mendore qĂ« na ndihmon tĂ« mendojmĂ«. Ata u mĂ«suan njĂ« mĂ«nyrĂ« realisht efektive pĂ«r tĂ« paraqitur numrat â mĂ« efektive se si mĂ«sohet nĂ« shkolla!
Ata arritën të lidhin idenë e tyre të shëndoshë «shtimit» si «akumulim» me diçka të ngjashme me veçori të reja të fuqishme. Ata e programuan atë në mënyrë që të ishte në gjendje të zgjidhte një mori problemesh.
Ata gjithashtu e zgjeruan atĂ«. Dhe kĂ«shtu me radhĂ«. Kjo nuk Ă«shtĂ« njĂ« kompjuter digjital. Dhe nuk Ă«shtĂ« njĂ« kompjuter me program tĂ« kujtueshĂ«m. Por kjo Ă«shtĂ« qendra e kompjuterit. PikĂ«risht ashtu si â kjo Ă«shtĂ« mbi tĂ« gjitha qendra e kompjuterit dhe llogaritjeve.

Mekanizmi antikiteras
Sa larg mund tĂ« arrijmĂ« dhe sa shumĂ« mund tĂ« bĂ«jmĂ« para se gjithçka tĂ« dalĂ« jashtĂ« kontrollit dhe ne tĂ« humbasim nĂ« abstraksione? UnĂ« gjithmonĂ« kam qenĂ« i interesuar pĂ«r karakterizimin e â laureati i parĂ« i çmimit Turing, i cili ndoshta shpiku termin «Computer Science» â ai, nĂ« vitet '60, tha: «Shkenca e KompjuterĂ«ve Ă«shtĂ« shkenca e proceseve». TĂ« gjitha proceseve.
Për shkak të kompanisë Quora, le të mos përpiqemi ta çojmë këtë më tej ose ta kthejmë në një dogmë fetare. Le të përdorim thjesht me gëzim idenë. , për të menduar më mirë për fushën tonë. Dhe sidomos për mënyrën si ta mësojmë atë. Tani na nevojitet të shikojmë kuptimin modern të «shkencës», dhe Perlis ishte mjaft i sigurt se ajo nuk duhet të hollohet me kuptime të vjetra (për shembull, si «mbledhje njohurish») dhe përdorime (për shembull, «bibliotekari» ose madje «shkencat sociale»). Me «shkencë» ai përpiqej të kuptonte fenomenin, duke krijuar modele/hartat që përpiqeshin të tregonin, «ndiqnin» dhe parashikonin fenomenet.

Kam dhënë disa intervista për mënyrën se si mapat dhe modelet më të mira shpesh mund të përshtaten për një bluzë, ashtu siç përshtaten ekuacionet e Maxwell-it dhe të tjerat. Analogjia është se ekziston një «shkencë mbi urat», megjithëse shumica e urave janë të ndërtuara nga njeriu. Por sapo ura është ndërtuar, ajo përfaqëson fenomenet, shkencëtarët mund t'i studiojnë këto, nga urat është e mundur të krijohen modele të shumë llojeve dhe të formohen «teori urash» gjithëpërfshirëse dhe të dobishme. Argëtimi është se pastaj mund të projektohen dhe ndërtohen ura të reja (kam përmendur tashmë se ndoshta nuk ka asgjë më argëtuese se bashkëpunimi i shkencëtarëve dhe inxhinierëve për të zgjidhur probleme të mëdha dhe të rëndësishme!)

Herbert Simon â fitues i çmimit Turing dhe çmimit Nobel â e quajti tĂ«rĂ« kĂ«tĂ« «shkencat e artificialeve» (dhe shkroi njĂ« libĂ«r tĂ« shkĂ«lqyer me tĂ« njĂ«jtin titull).

Le tĂ« jap njĂ« shembull. NĂ« vitet '50, kompanitĂ« dhe universitetet po ndĂ«rtisinin kompjuterĂ« me program tĂ« ruajtur dhe filluan t'i programonin ata â dhe ishte njĂ« moment i veçantĂ« kur nĂ« vitin 1956 u shfaq Fortran â i cili nuk ishte gjuha e parĂ« e lartĂ«, por ndoshta e para qĂ« Ă«shtĂ« bĂ«rĂ« mjaft mirĂ«, pĂ«r t'u pĂ«rdorur nĂ« shumĂ« fusha tĂ« ndryshme, duke pĂ«rfshirĂ« shumĂ« qĂ« mĂ« parĂ« ishin bĂ«rĂ« vetĂ«m nĂ« gjuhĂ«n makinerike.
E gjithë kjo krijoi «fenomene».

John McCarthy
Historia e Lisp është më e ndërlikuar, por John McCarthy ishte i interesuar për përpjekjen për të gjetur "teorinë matematikore të llogaritjeve" dhe ishte i vendosur ta bënte të funksiononte shkëlqyer. Funksioni eval, i cili interpreton Lisp, mund të vendoset lehtësisht në një bluzë! Në krahasim me "sistemin e programimit" - kjo është e papërfillshme. Më e rëndësishmja, kjo "teori llogaritjesh" kishte një koncept më të fuqishëm se Fortran-i! Kjo ishte ideja më e mirë e urës!
Miniaturizmi i Lisp-i lejon që e gjithë ideja e programimit të kapet me disa goditje në një nivel më të thellë dhe të mendohet në një nivel që duket thjesht e pamundur, kur shikon artefaktet e mëdha (kjo është një nga arsyet pse shkencëtarët e duan matematikën të jetë kompakte dhe të fuqishme). Shkenca e përdorur këtu është matematikë e re, pasi lejon koncepte si "para" dhe "pasi", dhe kjo çon në "logjikën e variablave të ndryshueshëm", e cila lejon ruajtjen e varësisë funksionale dhe logjikës, gjithashtu duke lejuar gjendjen dhe kalimin e kohës. (Kjo ende nuk kuptohet në kohën tonë në botën e ashpër të programimit situativ).
Lisp, duke shërbyer si një gjuhë programimi të fuqishme dhe meta-gjuhë që është e aftë të paraqesë teorinë e saj, është një shembull i vërtetë i shkencës kompjuterike. Nëse e mësoni atë dhe gjëra të ngjashme, do të jeni në gjendje të mendoni më thellë dhe të keni më shumë përgjegjësi për fatin tuaj, sesa nëse do të kishit mësuar thjesht të programoni në Fortran ose ekuivalentët e tij modernë (⊠kështu do të afroheni me programuesit!).
Do të mësoni shumë më tepër rreth llojeve speciale të dizajnit që janë të nevojshme në llogaritje (për shembull, zakonisht nuk vlerësohet kur llogaritjet shpesh kërkojnë të dalin përtej mjedisit të llogaritjes: një nga karakteristikat speciale të llogaritjeve me programe të ruajtura është se kjo nuk është thjesht material për një program, por material për një kompjuter tërësisht të ri).
NjĂ« tjetĂ«r arsye pĂ«r tĂ« zgjedhur pĂ«rcaktimin e PerlĂ«s Ă«shtĂ« se, nĂ« pĂ«rgjithĂ«si, llogaritja Ă«shtĂ« shumĂ« mĂ« e lidhur me krijimin e sistemeve tĂ« shumĂ«llojshme sesa me algoritmet, "strukturat e tĂ« dhĂ«nave" ose edhe programimin si i tillĂ«. PĂ«r shembull, njĂ« kompjuter Ă«shtĂ« njĂ« sistem, llogaritjet janĂ« sisteme, rrjeti lokal dhe interneti janĂ« sisteme, dhe shumica e programeve duhet tĂ« paraqesin sisteme mĂ« tĂ« mira se ato qĂ« janĂ« (stili i vjetĂ«r i programimit nga vitet '50 ka zgjatur deri nĂ« njĂ« pikĂ« qĂ« duket se programimi duhet tĂ« jetĂ« kĂ«shtu â nuk ka gjĂ« mĂ« tĂ« largĂ«t nga e vĂ«rteta).
Internet Ă«shtĂ« njĂ« shembull i mirĂ« â pĂ«r dallim nga shumica e programeve nĂ« ditĂ«t e sotme, interneti nuk duhet tĂ« ndalet pĂ«r tĂ« riparuar ose pĂ«rmirĂ«suar ndonjĂ« gjĂ« â ai Ă«shtĂ« mĂ« shumĂ« si njĂ« sistem biologjik â sipas qĂ«llimit tonĂ«, sesa ajo qĂ« shumica e njerĂ«zve e kanĂ« menduar si njĂ« sistem llogaritĂ«s. Dhe ai Ă«shtĂ« shumĂ« mĂ« i shkallĂ«zueshĂ«m dhe i besueshĂ«m se pothuajse tĂ« gjitha sistemet programore qĂ« ekzistojnĂ« sot. Kjo vĂ«rtet meriton tĂ« mendohet para se tĂ« mĂ«sojmĂ« fillestarĂ«t nĂ« programim me kĂ«to koncepte tĂ« pafuqishme!
Pra, ajo qĂ« duhet tĂ« bĂ«jmĂ« nĂ« kursin e parĂ« tĂ« ShkencĂ«s Kompjuterike Ă«shtĂ« tĂ« marrim parasysh se çfarĂ« konkretisht studentĂ«t mund tĂ« bĂ«jnĂ« nĂ« fillim, dhe pastaj tĂ« pĂ«rpiqemi tĂ« qĂ«ndrojmĂ« brenda "ngarkesĂ«s sĂ« tyre njohĂ«se", pĂ«r t'i ndihmuar ata tĂ« arrijnĂ« atĂ« qĂ« Ă«shtĂ« vĂ«rtet e rĂ«ndĂ«sishme. ĂshtĂ« shumĂ« e rĂ«ndĂ«sishme "tĂ« qĂ«ndrosh autentik" dhe tĂ« gjejmĂ« rrugĂ« qĂ« janĂ« intelektualisht tĂ« ndershme dhe u pĂ«rshtaten atyre qĂ« sapo kanĂ« filluar studimet. (Ju lutemi, mos e mĂ«soni idetĂ« e kĂ«qija vetĂ«m sepse ato duken pak mĂ« tĂ« thjeshta â shumĂ« ide tĂ« kĂ«qija nĂ« fakt janĂ« mĂ« tĂ« thjeshta!).
Studentët duhet të fillojnë duke krijuar diçka që ka shumë karakteristika të rëndësishme, të cilat i kam diskutuar këtu. Kjo duhet të jetë një sistem i disa pjesëve që ndërveprojnë dinamikisht etj. Një mënyrë e mirë për të vendosur se cilin gjuhë programimi duhet të përdorni, është thjesht të bëni diçka që ka mijëra pjesë që ndërveprojnë! Nëse jo, atëherë duhet të gjeni një të tillë. Më e keqja që mund të bëni, është të vendosni studentët në një rrugë të tepër të dobët që do të kufizonte shumë idetë në masë. Kjo thjesht i vret ata - ndërsa ne duam t'i rritim, jo t'i vrasim.
Rreth shkollës GoTo

- 17-30 qershor, 15-28 korrik, 12-25 gusht
Burimi: habr.com
