Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Malo o tem, kakšno je bilo šolsko “računalništvo” v 90. letih in zakaj so bili takrat vsi programerji izključno samouki.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Na čem so otroke učili programirati

V zgodnjih 90-ih so moskovske šole začele selektivno opremljati z računalniškimi razredi. Prostore so takoj opremili z rešetkami na oknih in težkimi z železom obloženimi vrati. Od nekod se je pojavil učitelj računalništva (videti je bil kot najpomembnejši tovariš za direktorjem), katerega glavna naloga je bila skrbeti, da se kdo česa ne dotika. Popolnoma nič. Tudi vhodna vrata.
V učilnicah najpogosteje najdemo sistema BK-0010 (v svojih različicah) in BK-0011M.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe
Fotografija posneta zato

Otroci so bili seznanjeni s splošno strukturo, pa tudi z okoli ducatom BASIC ukazov, da so lahko narisali črte in kroge na zaslonu. Za mlajše in srednje razrede je bilo to verjetno dovolj.

Nekaj ​​težav je bilo pri ohranjanju lastnih stvaritev (programov). Najpogosteje so bili računalniki, ki uporabljajo enokanalne krmilnike, združeni v omrežje s topologijo "skupnega vodila" in hitrostjo prenosa 57600 baudov. Diskovnica je bila praviloma ena in z njo je šlo pogosto narobe. Včasih deluje, včasih ne, včasih je omrežje zamrznjeno, včasih je disketa neberljiva.

Nato sem s seboj nosil to stvaritev s kapaciteto 360 kB.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Možnosti, da bi svoj program znova izvlekel iz tega, so bile 50-70-odstotne.

Vendar so bili glavni problem vseh teh zgodb z BC računalniki neskončne zamrznitve.

To se lahko zgodi kadar koli, ne glede na to, ali vnašate kodo ali izvajate program. Zamrznjen sistem je pomenil, da ste porabili 45 minut zaman, ker... Vse sem moral narediti znova, a preostali čas pouka za to ni bil več dovolj.

Bliže leta 1993 so se v nekaterih šolah in licejih pojavili običajni razredi z 286 avtomobili, ponekod pa so bili celo trije rublji. Kar zadeva programske jezike, sta bili dve možnosti: kjer se je končal "BASIC", se je začel "Turbo Pascal".

Programiranje v "Turbo Pascal" na primeru "tankov"

Z uporabo Pascala so otroke učili graditi zanke, risati vse vrste funkcij in delati z nizi. Na fizikalno-matematičnem liceju, kjer sem nekaj časa »stanoval«, je bil en par na teden dodeljen informatiki. In dve leti je bilo to dolgočasno mesto. Seveda sem želel narediti nekaj resnejšega od prikaza vrednosti matrike ali neke vrste sinusoide na zaslonu.

Cisterne

Battle City je bila ena najbolj priljubljenih iger na konzolah klonov NES (Dendy itd.).

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Leta 1996 je priljubljenost 8-bitov minila, že dolgo so nabirali prah v omarah in zdelo se mi je kul narediti klon "Tanks" za PC kot nekaj velikega obsega. Sledi le o tem, kako se je bilo takrat treba izmikati, da bi nekaj napisali z grafiko, miško in zvokom na Pascalu.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Narišete lahko le palice in kroge

Začnimo z grafiko.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

V osnovni različici je Pascal omogočal risanje nekaterih oblik, barvanje in določanje barv točk. Najnaprednejša postopka v modulu Graph, ki nam približata sprite, sta GetImage in PutImage. Z njihovo pomočjo je bilo mogoče zajeti del zaslona v predhodno rezervirano pomnilniško območje in nato ta del uporabiti kot bitno sliko. Z drugimi besedami, če želite ponovno uporabiti nekatere elemente ali slike na zaslonu, jih najprej narišete, kopirate v pomnilnik, izbrišete zaslon, narišete naslednjega in tako naprej, dokler ne ustvarite želene knjižnice v pomnilniku. Ker se vse zgodi hitro, uporabnik teh trikov ne opazi.

Prvi modul, kjer so bili uporabljeni spriti, je bil urejevalnik zemljevidov.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Imel je označeno igrišče. S klikom miške se prikaže meni, kjer lahko izberete eno od štirih možnosti ovir. Ko smo že pri miški...

Miška je že konec 90

Seveda so vsi imeli miške, vendar so jih do sredine 90-ih uporabljali le v sistemu Windows 3.11, grafičnih paketih in majhnem številu iger. Wolf in Doom sta bila odigrana samo s tipkovnico. In v okolju DOS miška ni bila posebej potrebna. Zato Borland miškinega modula sploh ni vključil v standardni paket. Morali ste ga iskati prek znancev, ki so dvignili roke in v odgovor vzkliknili: "Zakaj ga potrebujete?"

Vendar pa je iskanje modula za anketiranje miške le polovica bitke. Da bi z miško kliknili na zaslonske gumbe, jih je bilo treba narisati. Poleg tega v dveh različicah (stisnjena in nestisnjena). Gumb, ki ni pritisnjen, ima svetel vrh in senco pod njim. Ob pritisku je ravno obratno. In ga nato trikrat narišite na zaslonu (brez pritiska, pritiska, nato ne pritisnete več). Poleg tega ne pozabite nastaviti zakasnitev za prikaz in skriti kazalca.

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Na primer, obdelava glavnega menija v kodi je izgledala takole:

Tanchiki v Pascalu: kako so otroke učili programiranja v 90-ih in kaj je bilo s tem narobe

Zvok – samo računalniški zvočnik

Ločena zgodba z zvokom. V zgodnjih devetdesetih so se kloni Sound Blaster šele pripravljali na svoj zmagoviti pohod in večina aplikacij je delovala le z vgrajenim zvočnikom. Največja zmogljivost je hkratna reprodukcija samo enega tona. In točno to vam je Turbo Pascal omogočil. Z zvočnim postopkom je bilo mogoče "škripati" z različnimi frekvencami, kar je dovolj za zvoke strelov in eksplozij, za glasbeni ohranjevalnik zaslona, ​​kot je bilo takrat v modi, pa to ni bilo primerno. Posledično je bila najdena zelo zvita rešitev: v lastnem arhivu programske opreme je bila odkrita "datoteka exe", ki je bila enkrat prenesena iz nekega BBS. Znal je delati čudeže - predvajati nestisnjene wavove prek PC zvočnika, in to je počel iz ukazne vrstice in ni imel dejanskega vmesnika. Vse, kar je bilo potrebno, je bilo poklicati ga skozi proceduro Pascal exec in se prepričati, da se ta konstrukcija ni sesula.

Posledično se je na ohranjevalniku zaslona pojavila ubijalska glasba, vendar se je z njo zgodila smešna stvar. Leta 1996 sem imel sistem na Pentiumu 75, nagnjenem na 90. Na njem je vse delovalo v redu. Na univerzi, kjer so nam v drugem semestru namestili Pascala, so bili v učilnici že obrabljeni »tri rublji«. Po dogovoru z učiteljem sem te tanke odnesel na drugo lekcijo, da bi dobil test in ne bi več šel tja. In tako je po izstrelitvi iz zvočnika prišlo glasno rjovenje, pomešano z klokotajočimi grlenimi zvoki. Na splošno se je izkazalo, da 33-megaherčna DX "kartica za tri rublje" ne more pravilno zavrteti te iste "izvršljive datoteke". Drugače pa je bilo vse v redu. Seveda, če ne štejemo počasnega pozivanja tipkovnice, ki je pokvarilo celotno igro, ne glede na zmogljivost računalnika.

Toda glavna težava ni v Pascalu

Po mojem razumevanju je "Tanks" največ, kar bi lahko iztisnil iz Turbo Pascala brez montažnih vložkov. Očitni pomanjkljivosti končnega izdelka sta počasno anketiranje s tipkovnico in počasno upodabljanje grafike. Situacijo je poslabšalo izjemno majhno število knjižnic in modulov tretjih oseb. Lahko bi jih prešteli na prste ene roke.

Najbolj pa me je razburil pristop k šolskemu izobraževanju. Otrokom takrat nihče ni govoril o prednostih in možnostih drugih jezikov. V razredu so skoraj takoj začeli govoriti o begin, println in if, kar je študente zaprlo v paradigmo BASIC-Pascal. Oba jezika se lahko štejeta za izključno izobraževalna. Njihova "bojna" uporaba je redek pojav.

Zakaj otroke učiti lažnih jezikov, je zame skrivnost. Naj bodo bolj vizualni. Naj se tu in tam uporabijo različice BASIC-a. Toda v vsakem primeru, če se oseba odloči, da bo svojo prihodnost povezala s programiranjem, se bo moral naučiti drugih jezikov iz nič. Zakaj torej otrokom ne bi dali enakih izobraževalnih nalog, vendar le na običajni platformi (jeziku), znotraj katere bi se lahko naprej samostojno razvijali?

Ko smo že pri nalogah. V šoli in na fakulteti so bili vedno abstraktni: nekaj izračunaj, sestavi funkcijo, nekaj nariši. Študiral sem na treh različnih šolah, poleg tega smo imeli v prvem letniku inštituta »Pascala« in niti enkrat učitelji niso postavili nobenega pravega uporabnega problema. Na primer, naredite zvezek ali kaj drugega uporabnega. Vse je bilo namišljeno. In ko človek mesece rešuje prazne probleme, ki gredo potem v smeti ... Sploh pa gredo ljudje z inštituta že pregoreli.

Mimogrede, v tretjem letniku iste univerze smo v programu dobili "pluse". Zdelo se je dobro, a ljudje so bili utrujeni, polni ponaredkov in »treningov« nalog. Nihče ni bil tako navdušen kot prvič.

PS Poguglal ​​sem, kateri jeziki se zdaj poučujejo pri pouku računalništva v šolah. Vse je isto kot pred 25 leti: Basic, Pascal. Python prihaja v občasnih vključitvah.

Vir: www.habr.com

Dodaj komentar