Momentele cheie din tehnologia informațiilor care au transformat-o în cea mai utilă unealtă a oamenilor
Lucrăm mai mult de oriunde, comunicăm mai mult de la distanță, cumpărăm imediat tot ce ne-ar trebui și putem găsi mai repede ca niciodată aproape orice informație ne-ar trebui. Toate acestea se susțin pe internet și, în plan mai mare, pe tehnologie. Dar care sunt tehnologiile pe care le folosim în prezent și care, în urmă cu jumătate de secol, ar fi părut science fiction?
O comparație foarte bună între ce-a fost și ce-avem e între telefonul tău și computerul care a ajutat omul să ajungă pe Lună. Apollo Guidance Computer (AGC) a fost echipamentul dezvoltat la MIT (Massachusetts Institute of Technology) și utilizat în timpul misiunii Apollo care a pus primii doi oameni pe Lună. Acesta avea un spațiu de stocare de 72 KB și 0.004096 KB de memorie RAM. Acea memorie RAM putea stoca 2.048 de cuvinte, fiecare a câte 16 biți. Cel mai probabil n-ar fi putut stoca nici măcar acest articol. Și există în prezent becuri sau termometre inteligente mai puternice decât acel computer.
Sursa foto: Wikimedia Commons
Dar a stocat tot ce-a fost nevoie pentru această reușită a omului. Incredibil, dar iată ce avem în prezent: telefoane de nivel mediu care au cel puțin 6 GB memorie RAM și stocare care începe de la 64 GB, dacă nu chiar 128 GB.
Sigur, tehnologia a avansat rapid și datele de mai sus nu sunt utile doar ca să ne minunăm, ci să ne dăm seama că avem la îndemână instrumente care ne pot ajuta enorm. Iar perioada pandemiei ne-a mai arătat ceva important. De aici începem „Pagini de [cod]”, demersul prin care ne-am propus să-ți prezentăm de ce tehnologia, chiar și când n-o vedem direct, e spectaculoasă.
Nimic nu e prea old fashion când ai nevoie să fii eficient
De pe un telefon poți face aproape orice, de la poze și video până la programare, design sau comunicare. Totuși, perioada de izolare, aplicată într-o formă sau alta în majoritatea țărilor, ne-a arătat că există o nevoie de echipamente puternice, clasice, despre care am fi putut spune în urmă cu 10 ani că sunt obsolete. Dar nu-s deloc învechite.
În 1999, David Clark a venit cu termenul „post PC” pentru perioada în care omul nu va mai fi dependent de computere mari, greoaie. În același an, Bill Gates a propus o altă abordare: „PC Plus”. Acea abordare a fondatorului Microsoft a prins și o vedem și-n prezent.
Bine, dar ce-i un PC?
La întrebarea de mai sus ai fi dispus să spui că-i orice computer care rulează Windows sau macOS, laptop sau calculator tradițional, dependent mai mult sau mai puțin de-o priză, care are tastatură și mouse sau touchpad. Da, acesta e un PC. Vine în mii de forme și configurații anual, la diverse niveluri de preț. Dar fără sistemul de operare ar fi un morman de circuite, metal și plastic.
Sistemul de operare nu-i unicat doar pentru computere. Dar acolo interacționăm cel mai des cu el. Dezvoltarea celor pe care le știm în prezent a început în anii ‘60, când IBM a anunțat OS/360 dedicat computerelor mainframe (acelea cât un frigider, extraordinar de scumpe și cât de cât eficiente pentru ce aveau oamenii nevoie pe-atunci). Până la finalul anilor ‘80, au fost tot mai multe companii care au încercat, și reușit, să creeze și întrețină sisteme de operare pentru acele computere imense. Ba chiar și General Electric a fost implicată, în anii ‘60, în această piață.
Ce ne interesează pe noi sunt însă computerele personale. Și acolo au fost numeroase încercări, dar două au rămas în istorie: Commodore 64 și Apple II. Ambele foloseau sisteme de operare dezvoltate pentru procesoare pe 8 biți și hardware-ul era dependent de software. Nu putem discuta despre multitasking în această etapă, că aceste echipamente aveau 4 sau 8 KB de memorie și procesoarele nici măcar n-aveau un sistem prin care să gestioneze memoria.
Când vine vorba de Apple și Microsoft, cele mai vizibile companii din zona asta, probabil crezi că doar cea din urmă a avut un DOS. E fals. Ambele au avut. Că, la acea vreme, un Disk Operating System era ceva generic.
Până în anii ‘80 și ‘90, ambele companii și-au stabilizat sistemele de operare și așa ajungem în prezent la macOS și Windows, iar Linux în plan secundar, deși nu când vine vorba de cloud. Dar despre asta un pic mai târziu. Revenind la anii ‘60, AT&T la Bell Labs a dezvoltat atunci un sistem denumit Unics. Din 1973 a fost dat și altora, interesați să-l folosească, iar până la finalul acelui deceniu a fost redenumit în Unix și a devenit primul sistem de operare „portabil”. De ce contează? Pentru că el e fundația macOS de azi. Și inițial tot sistemul de operare a fost dezvoltat în C, limbaj de programare creat tot la Bell Labs.
Mai sunt două momente importante pentru sistemele de operare. În 1981, Microsoft a lansat MS-DOS, primul său sistem de operare. Era destinat computerelor personale ale IBM. Și cât Microsoft colabora cu IBM pentru sistemul de operare clasic, unde nu puteai interacționa cu un sistem decât prin command line, Apple a lansat în 1983 computerul Lisa. Nimic notabil pentru hardware, dar un pas extraordinar pentru software: sistemul de operare Lisa OS. Era construit pe Xenix, o versiune a Unix. Și Lisa OS a fost primul sistem de operare cu interfață grafică și suport pentru mouse. A fost o revoluție.
Pe repede înainte, până în prezent, Apple, Microsoft și Linux (ca întreg ecosistem) s-au stabilizat ca fiind cei mai mari trei furnizori de sisteme de operare. În timp ce primele două companii și-au popularizat produsele prin hardware și parteneriate cheie, Linux a crescut cumva diferit și ceva mai interesant. Prima versiune a Linux a apărut în 1991.
Linux e creația lui Linus Torvalds și a fost construit pe-o premisă simplă, dar extrem de puternică: acces gratuit și neîngrădit la tehnologie. Filosofia a fost popularizată de Richard Stallman în anii ‘80, același om care a creat Free Software Foundation și a scris primul regulament GNU General Public License în 1989. Scopul lui era să creeze un ecosistem Unix cu software gratuit. Aceste detalii sunt importante, deoarece Linux a devenit în timp emblema mișcării open source, a spart monopolul companiilor care controlau software-ul și, pentru că era gratuit, a putut fi folosit pentru a crea tehnologii noi, cum ar fi Chrome OS sau Android.
Și mai e un „sistem de operare” de care să nu uităm: web-ul. Între internet și web e o diferență fundamentală. Primul reprezintă infrastructura hardware, firele care pleacă dintr-un loc, conectate în alt loc și aduc oamenii mai aproape într-o rețea. La scară mare internetul e la fel ca o cameră în care ai două computere conectate printr-un cablu. În particular, când vorbim de web, vorbim de platformele online pe care le folosim, de la Facebook și Instagram, până la site-uri de știri, de jocuri sau de streaming. Toate acestea au pornit dintr- un singur moment: 6 august 1991 cu prima pagină web pe care încă o poți vizita aici.
Sursa foto: freepik.com
Proiectul „world wide web” e creația lui Tim Berners-Lee, care a folosit un computer NeXT (cu sistem de operare bazat pe Unix), și a pus bazele HTML (Hypertext Markup Language), pe care acum îl vedem peste tot și care ne permite să ne bucurăm de tot ce înseamnă web. În aceeași perioadă a fost creat și Mosaic, primul browser cu interfață grafică. Pentru că ce- ar fi web-ul fără imagini, sunet și-o formă frumoasă de prezentare? Probabil ar fi plictisitor.
Infrastructura critică a tuturor echipamentelor noastre
Vorbim de Windows, macOS, Linux și web. În spatele fiecărui produs digital stă însă, de fiecare dată, limbajul de programare. Google.com, de exemplu, e construit pe JavaScript și TypeScript pentru front-end și C, C++, Go, Java, Python și Java pentru back-end. Pentru baza de date sunt folosite Bigtable și MariaDB. Facebook.com, de cealaltă parte, e construit pe JavaScript, iar ca back-end folosește Hack, PHP, Erland, D, XHP și Haskell (suplimentar față de Google.com). Uite încă un exemplu: Amazon.com se bazează pe JavaScript pentru front-end și Java, C++ și Perl pentru back-end.
Majoritatea site-urilor mari se bazează pe JavaScript, C și versiuni de C, cum ar fi C# și PHP.
Dintre toate aceste limbaj de programare, Python are calitatea de-a crea două sentimente: e excelent și bun de folosit sau e bun, dar păcat că nu poate fi folosit pe proiecte mari. Și, cumva, Instagram a contrazis asta. Compania a avut un motto eficient la început: „Fă lucrurile simple la început”. Și s-a bazat pe Python pentru back-end.
Mai sus, la Google, am menționat și Go. Și acesta e relevant, pe de o parte, pentru că poate oferi la nivel enterprise uneltele necesare pentru a construi produse digitale, dar și pentru că-i un limbaj de programare relativ nou (față de toate celelalte), dar bazat pe C și C++. A fost creat de Google și lansat în 2009. Acesta e un exemplu excelent despre cum tehnologia evoluează și sunt necesare instrumente pentru a ține pasul cu ea. Go a început să fie dezvoltat prin 2007 și e soluția de a îmbunătăți productivitatea în programare pe măsură de infrastructura hardware este din ce în ce mai performantă, dar și pentru că vorbim de tot felul de dispozitive, de la computerele clasice la cele portabile din buzunarele noastre.
O abordare similară a avut-o Apple, în 2014, când a anunțat Swift. Asemenea ca Go, e un limbaj de programare nou construit pe Objective-C, capabil să folosească librării de C și C++. Și Objective-C în sine e interesant. A fost licențiat în 1988 de NeXT (companie fondată de Steve Jobs, după Apple) și din 2014 continuă să existe sub forma Swift.
Swift este, în egală măsură, un exemplu de ce înseamnă tehnologia modernă. A fost dezvoltat ca limbaj comun de programare pentru iOS, iPadOS, macOS, wathcOS tvOS, Linux și chiar z/OS (pentru supercomputere). Și rulează pe macOS, Linux și Windows.
Dezvoltarea acestui limbaj de programare pe care Apple îl prezintă drept modern, sigur și incredibil de rapid, a început în 2010. Și, după cum a spus Chris Lattner, echipa care s-a ocupat de dezvoltare s-a inspirat de la cum funcționează limbajele precedente: Objective-C, Rust, Haskell, Ruby, Python, C# și chiar CLU, un limbaj dezvoltat în anii ‘70 la MIT.
În regulă, încă se inovează în programare și tot ce s-a creat înainte poate fi o sursă de inspirație, dar ce-a fost înainte de orice?
Sursa foto: freepik.com
În 1957, a apărut limbajul de programare care, într-o formă sau alta, stă la baza a tot ce-i tehnologia de acum. Fortran (Formula Translation). Atât numele, cât și draftul specificațiilor de la IBM îți arată ce stă, de fapt, la baza programării. În noiembrie 1954, a fost finalizată schița proiectului Fortran și numele draftului a fost: „The IBM Mathematical Formula Translating System”. Da, acel limbaj de programare a „tradus” matematica pentru computere și-a folosit-o ca, decenii mai târziu, să rezolvăm cu câteva click-uri sarcini care altfel ar fi luat ore bune și drumuri lungi.
Această eficiență se bazează puternic pe cloud. Sau, altfel spus, se bazează pe un computer care nu-i la tine, dar care face sarcini pentru tine. Și cloudul a extins incredibil de mult capabilitățile tehnologiei, de la stocare la distanță până la gaming direct din cloud. Amazon, Google sau Microsoft sunt doar trei jucători mari din industria asta.
Surpriza mai mare e când vine vorba de software: Linux e folosit, într-o versiune sau alta, pentru mai mult de 90% din cloud. Da, acest sistem de operare open source lansat la începutul anilor ‘90 a ajuns în aproape 20 de ani să fie componenta critică în cea mai importantă structură a tehnologiei moderne.
Linux e un exemplu foarte bun despre ce înseamnă tehnologia cu adevărat: e modular, consumă puțină energie, e open source și e scalabilă. Open source nu înseamnă însă că e doar gratuit și atât. Mai degrabă conceptul de open source ajută când vrei să rezolvi problemele cu un software. Cu mii de oameni având acces la acel software, poți face debugging mult mai ușor decât dacă ai avea echipe dedicate. Asta și pentru că sunt distribuiții de Linux vândute cu bani. Dar fundația e tot acolo, în acel demers open source.
Trăsăturile acestui sistem de operare pot fi aplicate și pe tehnologiile pe care le folosim și care ne-au ajutat în perioada izolării să ne facem treaba. Avem nevoie de unelte modulare, eficiente, scalabile și la care să avem acces.
Telefonul – dacă e iOS e bazat pe Unix, dacă e Android e bazat pe Linux – e excelent ca să comunicăm, să facem poze și chiar să lucrăm. Computerul – macOS, Linux sau Windows – e cel mai performant instrument ca să fim productivi prin aplicații construite în limbaj de programare mai vechi sau mai noi, dar ale căror baze au fost puse când tot ce facem acum încă era SF. Televizorul inteligent și el se bazează pe o infrastructură critică prin care devine operațional și util. Dacă e smart TV, folosește webOS, Tizen sau Android. Dacă nu e, are doar un sistem de operare de bază, cam cum are și cuptorul cu microunde, frigiderul sau mașina de spălat. Apoi, toate acestea le avem conectate le internet, această masă de milioane de dispozitive controlate prin milioane de aplicații și zeci de limbaje de programare.
Nu putem vorbi, în 2020, de vreo epocă „post-ceva”. PC-ul încă e util, telefonul asemenea și, după cum am arătat mai sus, limbaje de programare ca C se întind pe atât de multe decenii și au creat atât de multe produse, încât nu putem spune că le-a trecut vremea. Odată cu criza medicală am trecut majoritatea dintre noi la experimentul de-a lucra de-acasă sau de oriunde. Și am reușit. Am putea chiar spune că, în ultima jumătate de secol, ne-am pregătit, prin tehnologie, să depășim orice obstacol.