{"id":61,"date":"2023-11-27T09:17:22","date_gmt":"2023-11-27T09:17:22","guid":{"rendered":"https:\/\/vang.hq.ro\/?p=61"},"modified":"2023-11-27T14:26:52","modified_gmt":"2023-11-27T14:26:52","slug":"it-in-romania-inainte-de-89","status":"publish","type":"post","link":"https:\/\/vang.hq.ro\/2023\/11\/27\/it-in-romania-inainte-de-89\/","title":{"rendered":"IT \u00een Rom\u00e2nia, \u00eenainte de ’89"},"content":{"rendered":"\n

Nu a\u0219 fi scris asta, cel pu\u021bin nu acum, daca nu m\u0103 \u00eentreba Doctorul <\/a> daca am programat pe Felix-C-256 \u00eentr-un context legat de proiectul lui Approximate emulator of Felix-C-256 computer<\/a>.<\/p>\n\n\n\n

A\u0219a ca o sa spun povestea mea personal\u0103, cum am dat de calculatoare si ce si cum am f\u0103cut cu ele \u00eenainte de 1989 (Rom\u00e2nia Ceau\u0219ist\u0103).<\/p>\n\n\n\n

In 1983 am \u00eenceput clasa a 9a la Liceul de Matematica Fizica din Slobozia (Ialomi\u021ba). Eram la clasa de informatica, o noutate pe atunci. Slobozia era, al\u0103turi de Petro\u0219ani, unul dintre cele doua ora\u0219e non-universitare care aveau o clas\u0103 de informatica. \u00cen plus, mama mea lucra la Centrul de Calcul ca personal auxiliar (adic\u0103 nu era inginer IT ca majoritatea celorlal\u021bi angaja\u021bi). <\/p>\n\n\n\n

Centrul de Calcul era o institu\u021bie (firma cum am spune azi) care exista \u00een fiecare re\u0219edin\u021b\u0103 de jude\u021b si numai acolo existau calculatoare si erau angaja\u021bi ingineri IT si programatori. Toate celelalte firme din jude\u021b care aveau nevoi de calcul, f\u0103ceau contract cu Centrul de Calcul.<\/p>\n\n\n\n

\u00cenc\u0103 nu ap\u0103ruser\u0103 calculatoarele personale pe la noi a\u0219a c\u0103 prin calculator se \u00een\u021belegea ceva gen unul sau mai multe dulapuri c\u00e2t un frigider, unit\u0103\u021bi de disc c\u00e2t o ma\u0219ina de sp\u0103lat, imprimante cu ace (cred), perforatoare de cartele c\u00e2t un pian, dispuse \u00een mai multe camere. Tot acest mamut era sistemul Felix C 256<\/a>. In sala calculatoarelor se intra numai cu \u00eenc\u0103l\u021b\u0103minte de schimb \u0219i era temperatura controlat\u0103. Nu cred ca existau aere condi\u021bionate nic\u0103ieri \u00een ora\u0219 \u00een afara de Centrul de Calcul. <\/p>\n\n\n\n

Daca nu \u0219ti\u021bi ce sunt alea cartele perforate, asta era metoda de introducere de date si programe, erau ni\u0219te buc\u0103\u021bi de carton si fiecare reprezenta o linie de cod sau de date, prin ni\u0219te perfora\u021bii codificate: https:\/\/en.wikipedia.org\/wiki\/Punched_card<\/a>.<\/p>\n\n\n\n

A\u0219a, deci eram eu \u00een clasa a 9a, la clasa de informatica si aveam \u00een programa disciplina Informatica. Profesori de specialitate nu existau a\u0219a ca veneau sa ne predea ingineri din Centrul de Calcul, de obicei cei mai tineri. Asta cred c\u0103 a fost un lucru bun. Am \u00eenceput cu “din ce este compus un calculator” pe partea de hardware si “scheme logice cu creionul pe h\u00e2rtie” pe partea de software. Despre astea o sa scriu un articol dedicat.<\/p>\n\n\n\n

Apoi am \u00eenceput sa \u00eenv\u0103\u021b\u0103m limbajul de programare Fortran<\/a>. In afara de exerci\u021bii banale, gen scrie\u021bi un program care sa rezolve ecua\u021bia de gradul doi, nu \u00eemi amintesc mare lucru aici. Dar avea o instruc\u021biune care parc\u0103 era f\u0103cuta pentru asta: arithmetic IF statement<\/a>.<\/p>\n\n\n\n

Am trecut brusc la Basic! Prin 1984 au ap\u0103rut \u00een Centrul de Calcul doua calculatoare personale aMIC<\/a>, \u00eempreuna cu doua c\u0103r\u021bi de introducere \u00een limbajul Basic si programe exemplificative (coordonator Adrian Petrescu<\/a>). Unul dintre aceste calculatoare personale a fost pus la lucru multe nop\u021bi, la mine acas\u0103. Se conecta la televizor si avea tastatura \u00eencorporat\u0103. Din p\u0103cate nu aveam casetofon sa salvam programele, dar scriam chestii gen sa se deseneze graficul func\u021biei, sa se simuleze un joc de ruleta cu grafica (rudimentara).<\/p>\n\n\n\n

Cumva prin aceea\u0219i perioada (85?) m-am jucat \u00een Centrul de Calcul si cu un Felix M118<\/a>, cu sistem de operare CP\/M<\/a>, tastatura, monitor si floppy. Imi aduc aminte ca am citit pe el “Legile lui Murphy”, circulau sub forma de fi\u0219ier text cu ni\u0219te coduri de control pentru formatare la imprimanta. <\/p>\n\n\n\n

Tot pe atunci (85-86?) au adus \u00een Centrul de Calcul un Independent<\/a>. Asta era ceva fabulos, o clona de DEC-PDP-11<\/a> cu sistem de operare ceva tip Unix si cu mai multe terminale legate la acela\u0219i sistem central. M-am jucat o noapte cu el, pana am reu\u0219it sa fac privilege escalation<\/em>, m-au l\u0103sat seara cu user simplu si m-au g\u0103sit diminea\u021ba cu root<\/em>. M-au dat afara<\/em> (eram elev de liceu, nu angajat, dar nu m-au mai l\u0103sat pe terminale) si a\u0219a a trecut pe l\u00e2ng\u0103 mine \u0219ansa s\u0103 fi \u00eenv\u0103\u021bat Unix din vreme.<\/p>\n\n\n\n

M-am \u00eentors la calculatoarele personale care deveneau mai accesibile si in 1985 (cred) am fost la o sesiune de comunic\u0103ri \u0219tiin\u021bifice ale elevilor cu un program care implementa un algoritm de calcul al unui arbore partial de cost minim<\/em>, pe calculator personal aMIC. Eram a 11a si f\u0103ceam teoria grafurilor la informatica, foarte mi\u0219to.<\/p>\n\n\n\n

Tot in clasa a 11 (sau a 12? 1985\/1986) am fost la Olimpiada Na\u021bional\u0103 de Informatica unde nu am f\u0103cut mai nimic, dar nu asta conta. Imi aduc aminte una dintre probleme care mi s-a p\u0103rut interesant\u0103. <\/p>\n\n\n\n

Trebuia sa scrii \u00een Assiris (asta era limbajul de asamblare de pe Felix-C) doua rutine de pack\/unpack pentru a reprezenta un timestamp gen an-luna-zi-ora-minut-secunda pe c\u00e2t mai pu\u021bin bi\u021bi posibil si sa apelezi rutinele astea din Fortran. M\u0103 dep\u0103\u0219ea grav, eu nu am \u00eenv\u0103\u021bat Assiris, am trecut direct la Z80. Ideea acolo era ceva de genul sa reprezin\u021bi ora 0-23 pe 5 bits, luna intre 1-12 4 bits etc. In total 28 de bits f\u0103r\u0103 an si acum depinde pe c\u00e2\u021bi bits alegeai sa codifici anul. Nu cred ca auziser\u0103 de Unix time<\/a> care ar fi fost mult mai elegant (32 de biti). <\/p>\n\n\n\n

Pe la \u00eenceputul lui 1986 au ap\u0103rut la Casa Copiilor (pentru cine nu \u0219tie, un fel de club al copiilor unde existau cercuri de electronic\u0103, de aeromodelism, navomodelism si altele si puteai sa te \u00eenscrii la un cerc si sa mergi dup\u0103 ore) primele calculatoare HC 85<\/a>, o clona rom\u00e2neasc\u0103 de ZX Spectrum<\/a>. Pe astea, intre 1986 si 1988 m-am jucat tot felul de jocule\u021be, am programat \u00een Basic-ul lor special \u0219i am \u00eenv\u0103\u021bat Assembler Z80, cred ca am \u00eencercat \u0219i pu\u021bin Pascal. M\u0103 interesau jocule\u021bele mai mult din perspectiva a cum sunt f\u0103cute, nu am trecut niciodat\u0103 de nivelul 7-8 la Chuckie Egg<\/a> dar am reusit, cu greu, o tura completa cu Harrier Attack!<\/a><\/p>\n\n\n\n

Tot in 1986, am fost \u00eentr-o tab\u0103r\u0103 de informatic\u0103 la T\u00e2rgu-Mure\u0219 unde ni\u0219te studen\u021bi la Informatica Universitatea Bucure\u0219ti ne-au predat chestii super-avansate, titlul era “Stiva – esenta recursivit\u0103\u021bii si recursivitatea – \u00eenceputul inteligen\u021bei artificiale<\/em>“. Programarea \u00eencepea sa devin\u0103 interesant\u0103. Ca fapt divers, in aceea\u0219i tab\u0103ra era \u0219i Andrei Pitis<\/a>, nu ne-am cunoscut acolo dar ne-am adus aminte am\u00e2ndoi mai t\u00e2rziu.<\/p>\n\n\n\n

Acolo, in tab\u0103ra, \u00eei invidiam pe colegii care \u0219tiau maghiara si aveau ni\u0219te reviste super colorate din Ungaria, pline de informa\u021bii si programe, majoritatea despre ZX Spectrum. A\u0219 fi dat orice sa pun mana pe cartea Complete Spectrum ROM Disassembly<\/em>.<\/p>\n\n\n\n

Prin 1987 au ap\u0103rut \u00een Centrul de Calcul un HC-85 cu unitate de floppy disk (cred ca 160K pe un floppy) si apoi (1988?) primul IBM PC cu sistem de operare MS-DOS<\/a>, cu monitor CGA (4 culori!) si hard disk intern de 5MB. Pe asta \u00eemi amintesc ca l-am \u00eemp\u0103r\u021bit \u00een 4 parti\u021bii pentru ca mi se p\u0103rea at\u00e2t de mare discul ca nu \u0219tiai ce sa faci cu el.<\/p>\n\n\n\n

In 1988 toamna am \u00eenceput facultatea (anul 1 la Electronic\u0103 \u00een Bucure\u0219ti) si am revenit la cartele, dar m\u0103car, de data asta, era cu limbajul de programare Pascal. In paralel m\u0103 jucam cu Turbo Pascal<\/a> pe IBM-PC. <\/p>\n\n\n\n

Prin 1989, am v\u0103zut prin c\u0103mine o alta clona rom\u00e2neasca de ZX Spectrum, celebra Cobra<\/a> care avea 64 KB RAM si mai multe ROMs selectabile la boot, multi-boot Spectrum Basic, CP\/M, Z80 Assembler. <\/p>\n\n\n\n

Tot 1989, \u00een c\u0103min, am scris ceva cod pe un calculator personal Amiga<\/a> (al unui coleg), cu procesor Motorola 68000<\/a> si care avea nu mai \u0219tiu c\u00e2t\u0103 memorie, cred ca 256KB. Ce mi s-a p\u0103rut spectaculos era ca puteai sa aloci f\u0103r\u0103 niciun truc special mai mult de 64K RAM, ceea ce pe IBM-PC cu 8086 nu prea se putea. Matrici (de date) uriase, asta visam. <\/p>\n\n\n\n

Apoi a venit Revolu\u021bia.<\/p>\n\n\n\n

<\/p>\n\n\n\n

<\/p>\n\n\n\n

<\/p>\n\n\n\n

<\/p>\n","protected":false},"excerpt":{"rendered":"

Nu a\u0219 fi scris asta, cel pu\u021bin nu acum, daca nu m\u0103 \u00eentreba Doctorul daca am programat pe Felix-C-256 \u00eentr-un context legat de proiectul lui Approximate emulator of Felix-C-256 computer. A\u0219a ca o sa spun povestea mea personal\u0103, cum am dat de calculatoare si ce si cum am f\u0103cut cu ele \u00eenainte de 1989 (Rom\u00e2nia […]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[11],"tags":[9,10],"_links":{"self":[{"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/posts\/61"}],"collection":[{"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/comments?post=61"}],"version-history":[{"count":13,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/posts\/61\/revisions"}],"predecessor-version":[{"id":75,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/posts\/61\/revisions\/75"}],"wp:attachment":[{"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/media?parent=61"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/categories?post=61"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vang.hq.ro\/wp-json\/wp\/v2\/tags?post=61"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}