Cândva, revenind din „vacanţa de vară”, am fost plăcut surprins să constat că pe calculatoarele din "Laboratorul de Informatică" al şcolii fusese instalat şi câte un sistem Ubuntu-Linux; am aflat că este opera „băieţilor de la Lotul Olimpic” (fusese interzis să afectezi astfel, „reţeaua primită de la Minister”. De!… veşnica problemă a viruşilor şi a ignoranţei; se ştie: ca să te fereşti - restricţionezi).
Nu ştiu cum vor fi instalat Linux pe toate calculatoarele (că doar nu vor fi purtat un CD de la unul la altul), dar am observat uşor la vremea respectivă, cum anume au folosit Linux aceşti "băieţii de la Lotul Olimpic": au instalat CodeBlocks „pentru Linux” şi au mai folosit LibreOffice Writer (analogul Linux pentru Microsoft-Word); deci au lucrat exact cum învăţaseră pe Windows, instalând şi folosind interfaţa grafică CodeBlocks pentru a-şi realiza programele C++ şi folosind LibreOffice (sau OpenOffice, nu-mi amintesc exact) pentru a scrie ceva documentaţii sau articole – cu alte cuvinte, au adoptat şi ei standardul unitar „aceeaşi Mărie, cu altă pălărie” şi n-au ajuns nicidecum la Linux (pe care l-au redus în fond, la Windows).
De observat obişnuinţa de a zice simplu "Linux"; de fapt nu avem în vedere sistemul de operare Linux (al cărui studiu ca atare—dincolo de „comenzi”—este dificil pentru oricine), ci ne gândim de obicei la o „distribuţie de Linux”, cum ar fi Ubuntu-Linux; este vorba despre un ansamblu preconstituit, coerent, de programe—programe utilitare, compilatoare, interpretoare, editoare de text, vizualizatoare de documente şi de imagini, etc.—având ca nucleu sistemul de operare Linux. Cu alte cuvinte, Linux (o distribuţie de Linux) îţi oferă din start o groază de instrumente de lucru (de regulă, cel mai potrivite pentru o eventualitate sau alta), sub o licenţă generică, lipsită de restricţiile specifice produselor comerciale.
Ce auzim în şcoală despre "Linux" este cel mult, că „e greu”; este mai simplu şi mai cuminte să nu te gândeşti la altceva decât să foloseşti acele instrumente interactive care-ţi sunt oferite, respectând "programa şcolară"—orientată exclusiv, de la clasa a V-a până la clasa a XII-a, pe folosirea sistemului Microsoft-Windows şi a aplicaţiilor Microsoft-Office şi de tip point-and-click (care şi acestea, trebuie că sunt foarte dificile, de vreme ce le ai de "învăţat" chipurile, an de an, meniu după meniu, vreme de vreo 10 ani). Spus concis, "informatizare" = "microsoftizare" (= sistem închis).
Poate că această reducere strategică nici nu-i rea: te obligă să descoperi singur posibilităţile fireşti de lucru şi se ştie (dar chiar este adevărat) că propriile investigaţii de cunoaştere, cu eforturile aferente, asigură mai degrabă, un progres real în devenirea cuiva, decât binecunoscutul regim „de aici până aici” oferit cu obstinenţă în sistemul de învăţământ oficial.
Programele de "dezvoltare strategică" şi mai ales "programa şcolară", ar trebui să cunoască şi să respecte într-o anumită măsură, istoria lucrurilor; informatica nu începe nicidecum, cu firma Microsoft (iar gândirea şi înţelegerea implică totuşi limbajul, nu dresarea cu mouse-ul).
Acum vreo 40 de ani apărea prima carte de "limbajul C" (K&R); nu existau produsele Microsoft şi abia apăruse ideea de a ataşa calculatorului un mouse – încât autorii erau „obligaţi” să folosească un sistem UNIX (încorporând un „modest” editor de text). Chiar la început, era explicitată practica utilizării limbajului: scrii „sursa programului” în fişierul text hello.c
; lansezi compilatorul cc
(sau gcc
) pentru fişierul respectiv, tastând pe linia de comandă cc hello.c
; obţii astfel, fişierul executabil a.out
; poţi executa apoi programul, tastând a.out
pe linia de comandă. Această „practică” directă (fără surogate intermediare) îţi permite şi să înţelegi ce este acela un „program” – în ce forme poate exista el şi cum interacţionează cu sistemul de operare subiacent (sau cu alte programe).
Aceasta rămâne maniera cea mai firească (şi cea mai eficientă) de folosire a oricărui compilator sau interpretor. Ai de folosit totdeauna (pentru orice aplicaţie, oricât de complexă), doar un terminal şi un editor de text; terminalul îţi asigură posibilitatea de a te folosi după caz, de facilităţile oferite de către sistemul de operare – poţi invoca de pe linia de comandă, comenzi interne sistemului, diverse programe utilitare, un compilator sau altul şi poţi lansa în execuţie un interpretor sau un program executabil oarecare; desigur, se cuvine ca editorul de text să-ţi ofere facilităţi de marcare a sintaxei, pentru diverse limbaje (este suficient de bun gedit
– editorul implicit din Ubuntu).
Dar (cu bună ştiinţă), Windows nu încorporează vreun editor de cod-sursă… Dresarea vreme de atâţia ani cu produse comerciale Microsoft şi în general, numai cu tehnologie point-and-click – obturează „bunele practici”, îngustează perspectivele şi limitează drastic capacitatea de progres a individului. Se poate face educaţie muzicală „după ureche” (ceea ce ar fi analog educaţiei informatice bazate pe point-and-click), dar numai aşa, în general vorbind, vei ajunge un muzician cel mult mediocru.
vezi Cărţile mele (de programare)