From dumb till smart

 

Tweet

Când a apărut pe la noi telefonia mobilă, telefoanele erau „dumb”, nu „smart” ca acum. De obicei veneau cu o bibliotecă de sonerii, produse digital, care mai de care mai trăznite, ceea ce într-o firmă sau într-un birou era deja o distracţie în sine. Cu timpul, procesoarele au devenit mai puternice şi mai complexe, memoriile mai mari, aşa că n-a mai fost o mare problemă tehnică să treci soneria printr-un convertor digital-analog; acum deja soneriile puteau să preia o temă dintr-o piesă muzicală oarecare, ba chiar puteai să îţi înregistrezi propria sonerie.

Într-o bună zi, la colegii mei de la departamentul GSM am auzit culmea rafinamentului în materie de sonerii: soneria noilor telefoane imita perfect o sonerie electromecanică, cea pe care o aveam pe bătrânele telefoane cu disc.

Atunci am înţeles în sfârşit sensul progresului. A trebuit să treacă aproape un deceniu de perfecţionări succesive pentru ca telefonul meu smart să reuşească să sune, în sfârşit, la fel ca aparatul inventat de Graham Bell acum mai bine de un secol ( şi, ca o paranteză, soneria a fost probabil ultima preocupare a acestuia, transmiterea vocii era problema lui adevărată).

Întâmplarea de mai sus ilustrează perfect o dilemă pe care au sesizat-o câţiva comentatori la articolul de săptămâna trecută: cum se face că progresele imense în tehnologia computerelor nu se văd aproape deloc în experienţa utilizatorului, părând mai degrabă că se reflectă doar în resurse consumate aiurea?

Să începem cu hardware-ul. Nu ştiu dacă e legendă urbană sau realitate expresia : „640K de memorie ar trebui să fie de ajuns pentru oricine” atribuită lui Bill Gates. Cert este că, deşi sunt o persoană mai degrabă conservatoare şi nu joc niciodată jocuri pe computer, a trebuit să ţin o prezentare anul trecut, ocazie cu care am upgradat memoria  de la 4 G la 8 G pe laptopul meu. Deci, nici măcar de 6-7 mii de ori mai mult nu pare de ajuns azi.

Cum s-a întâmplat de am ajuns aici?

De-a lungul vremii, computerele au avut mereu câte un „Sfânt Graal” la care să ajungă; atunci când a fost atins au apărut altele şi altele….

Întâi, grafica. Cei mai vechi prin cartier îşi amintesc probabil grafica sumară şi schematică din vremea HC-urilor, păstrată şi în primele animaţii sub DOS şi chiar şi în Windows 3.1 . Pe vremea aceea, lucrurile stăteau cam aşa:  ecranul era împărţit în pătrăţele. Aveam o bibliotecă în memoria sistemului de operare cu conţinutul unui pătrăţel. Mai întâi literele: 27 de caractere plus 10 cifre, plus câteva semne de punctuaţie… sub 50 de octeţi. Mai adaugi câteva elemete grafice ( pătrate negre, pătrate de diverse forme… 100 de octeţi ar trebui să fie de ajuns pentru toată lumea ). Dar asta avea şi un preţ: ecranul nu putea afişa nimic altceva decât acele 50 până la 100 de pătrate.

Au existat oameni cu un talent incredibil de a le combina, există şi biblioteci pentru aşa-zisa „ASCII art” ( adică arta de a desena folosind doar acest set limitat de simboluri) dar bineînţeles că mare lucru nu poţi obţine în materie de grafică pe această cale. Până la urmă Rubiconul a trebuit trecut, dar preţul a fost pe măsură. Dacă vrei ca fiecare punct de pe ecran să aibă culoarea lui independentă, la o rezoluţie care acum e depăşită, 1024 x 768 ( adică 1024 puncte orizontale şi 768 verticale) deja ai aproape 800 000 de puncte, deci la un bytes pentru fiecare, aserţiunea lui Bill Gates a devenit deodată istorie.

Al doilea „Sfânt Graal” ( cronologia mea e cu totul subiectivă, dar avizată) a fost multitasking-ul. Primele PC-uri nu puteau face mai multe lucruri în acelaşi timp. Sau, ca să fiu mai precis, puteau face, doar că asta depindea de măiestria programatorului. Pentru majoritatea utilizatorilor, nici nu era nevoie: cum eu însumi nu pot face prea multe lucruri simultan, de ce aş cere asta de la computer?  Vreau să editez, deschid Word-ul ( sau WordPerfect-ul, era o alternativă viabilă pe atunci) ; vreau să proiectez circuite, deschid Orcad-ul… dar de ce aş vrea să le fac pe ambele simultan?

Dacă pentru utilizatorul obişnuit nu a fost o problemă prea mare, pentru alţii, precum un anume Linus Torvalds, a fost atât de grav încât a început să scrie un sistem de operare nou doar din cauza acestui amănunt. Sigur că de la un moment dat încolo, nici un sistem de operare modern nu a mai putut fi gândit altfel decât multitasking. Dar asta a cerut noi resurse. Obişnuiam să glumesc că în zilele noastre sistemele de operare au nevoie de mai multe resurse ca să se întreţină pe ele însele decât ca să ruleze programele utile. Dar vă las pe dumneavoastră să hotărâţi dacă e doar o glumă.

Un alt sfânt Graal, care e mai greu de văzut „din afara sistemului” a fost cel al programării în comun. Epoca pionieratului în computere a fost epoca programatorilor solitari. Era oarecum normal, pentru că nu existau nici suficienţi oameni şi mai ales nici măcar suficientă tehnologie de colaborare  în domeniu. Scriai un cod, eventual dădeai cuiva să scrie porţiuni bine definite pe care ulterior le legai de cel principal, şi cam asta era tot. Dar când softurile au atins o anumită complexitate, au apărut conceptele şi tehnologiile: biblioteci partajate, orientarea pe obiecte şi alte minuni pe care un programator le va putea spune mai bine ca mine. Desigur, atunci când vrei să scrii biblioteci reutilizabile, trebuie să te gândeşti la toate variantele de utilizare, nu doar la cea concretă pentru care o scrii. Şi biblioteca începe să crească…. Când colectivele de programatori încep să crească trebuie să lucrezi şi cu programatori care nu sunt geniali, ci doar decenţi, deci ai nevoie de un limbaj mai apropiat de cel natural… şi iar codul devine mai mare…

După aceea a venit Graal-ul virtualizării, al containerelor, acum cel al inteligenţei artificiale…

Bineînţeles, nu folosim nici 1% din toate acestea, sau cel puţin ne-am putea lipsi de unele din ele dacă am avea posibilitatea. Dar problema e că filozofia sistemului de operare este să fie un fel de maşină universală, să nu mai ai nevoie de altceva între hardware şi software. Iar pentru asta trebuie să „ştie” toate tehnologiile, chiar dacă un utilizator anume nu are nevoie decât de unele din ele.

Ne putem opri din această spirală? Cred că prima întrebare este dacă vrem să ne oprim. Până acum câţiva ani, ca să fim cinstiţi nu prea am avut nevoie. Tehnologia hardware a tot progresat, aşa că nu prea şi-a pus nimeni problema eficienţei. Acum însă lucrurile tind să se schimbe: tehnologia dă semne că începe să se plafoneze ( sau cel puţin nu mai poate progresa la fel doar prin imbunătăţirea tehnologiei de fabricaţie, fără schimbări conceptuale) . A mai apărut şi domeniul „mobilelor” unde resursele sunt încă limitate ( măcar din considerente de consum şi greutate)

ceea ce poate duce la o presiune în domeniul conceptelor software.  Lucru care în definitiv este bun, pentru că orice domeniu are nevoie la un moment dat de o revizuire critică. Probabil că putem să privim fenomenul ca pe o reflectare a consumerismului în industria IT, aşa că ne putem aştepta şi la mişcări ecologiste…

Ai informatii despre tema de mai sus? Poti contribui la o mai buna intelegere a subiectului? Scrie articolul tau si trimite-l la editor[at]contributors.ro

 
 
Contributors 117 16-07-2017 Vali
    Nu am gasit articole asemanatoare
    Acest articol nu are niciun comentariu
ADAUGA COMENTARIU

 
Online 33 Pagina incarcata in 0.263397932053 secunde