Acțiune

iPhone-ul împlinește 10 ani: povestea unei revoluții

După cum se întâmplă adesea, bijuteria Apple s-a născut dintr-unul dintre cele mai mari eșecuri din istoria computerelor: apoi, compania începută de Steve Jobs care a construit stații de lucru bazate pe un software prea futurist pentru vremea lui – Iată cum a mers

iPhone-ul împlinește 10 ani: povestea unei revoluții

Despre faliment

Așa cum nu a fost o aruncare a zarurilor care a provocat nașterea Renașterii în Italia și nu în Finlanda, la fel nu a fost o aruncare a zarurilor care a făcut ca iPhone-ul să provină din Apple. Așa cum a fost suficient pentru umaniștii italieni să privească mediul, impregnat de clasicism, care i-a înconjurat cu ochi noi, tot așa pentru oamenii din Apple a fost suficient să ia ceea ce au elaborat și să-l toarne într-o formă nouă. Nokia nu ar fi putut crea dispozitivul de dispozitive, care a fost inițial o companie care producea cizme din plastic. Nici Samsung nu se specializase în producția de spaghete și apoi în rafinarea zahărului.

Aproape jumătate de secol de obsesia Apple pentru interfețele cu utilizatorul, ușurința în utilizare, integrarea indisolubilă între hardware și software, condusă de viziunea holistică a șefului său, nu putea decât să ducă la ceva la fel de revoluționar ca iPhone. De asemenea, moștenirea clasică omniprezentă a peisajului și mentalității italiene a dus la umanism și Renaștere.

Este unul dintre numeroasele paradoxuri care punctează marșul tehnologiei că iOS, software-ul care alimentează iPhone-ul, s-a născut din moștenirea unuia dintre cele mai mari cinci eșecuri din istoria computerului: NeXT. NeXT a fost compania începută de Steve Jobs după părăsirea sa de la Apple în 1985. A construit stații de lucru futuriste alimentate de software la fel de futurist, NeXTstep. Numit de Steve Jobs „adevărata bijuterie” a inovației NeXT, NeXTstep a fost prea mult înaintea timpului său. A fost unul dintre cele mai mari eșecuri, desigur, dar și una dintre cele mai importante experiențe din istoria computerului, a doua după cea a Xerox Parc din Palo Alto. NeXT a fost și sala de sport în care Jobs a învățat să mediteze și să-și corecteze greșelile. Cealaltă mare școală de conducere a fost Pixar, unde Jobs a învățat multe de la Edwin Catmull și John Lassater.

Apple, un NeXT cu alt nume

Povestea NeXT a fost spusă de multe ori și cel mai recent în detaliu de Walter Isaacson, biograful lui Steve Jobs. Este suficient să știm că în 1996, tehnologia NeXT și toți angajații săi au fost absorbiți de Apple după revenirea lui Jobs la compania pe care a co-fondat-o. De acolo a început lungul marș către Apple de astăzi: 1000 de dolari de investiție în acțiunile Apple din 1995 ar valora astăzi 117 de dolari. Cei care au ajuns cu Jobs de la NeXT la Apple au parcurs acea cale lungă și anevoioasă, similară cu cea descrisă de Xenophon în Anabasis.

Dar asta se știe. Un lucru, însă, se știe mai puțin. Tehnologia NeXT și mai ales sistemul său de operare, NeXTstep, a alimentat necruțător tehnologia Apple de peste 20 de ani, iar bărbații și femeile de la NeXT au fost plasați în cele mai responsabile poziții ale companiei Apple. Atât de mult încât la un moment dat nu a existat niciun mister în legătură cu existența unui fel de „Mafia NeXT” sau „Casta NeXT”, atât de importantă a fost influența și remunerarea oamenilor care veneau din acea experiență, NeXTonienii.

NeXTonienii

Printre NeXTonienii care s-au mutat la Apple în roluri proeminente se numără Avie Tevanian, creierul din spatele arhitecturii software a NeXT și mai târziu a Mac OS X, care a rămas la Apple până în 2006 ca Chief Software Technology Officer. Vine de la NeXT Scott Forstall, care a fost responsabil de dezvoltarea software-ului IOS până în octombrie 2010. Craig Federighi, succesorul lui Tevanian și acum responsabil pentru întreaga zonă de software la Apple, este și el NEXtonian. Printre aceștia se numără și Budd Tribble, unul dintre fondatorii NeXT, căruia îi datorăm celebra definiție a „câmpului de distorsionare a realității” în ceea ce privește viziunea lui Jobs. Budd s-a întors la Apple în 2002 și a ocupat până în 2015 vicepreședintele Software Technology.

Recent, Scott Forstall, la Muzeul de Istorie a Calculatoarelor din Mountain View, într-o întâlnire organizată pentru a sărbători a zecea aniversare a iPhone-ului, a povestit cum s-a născut iPhone-ul în mintea lui Steve Jobs și cum a fost creat de echipa cu care el însuși împreună cu ceilalţi manageri care fuseseră chemaţi să-l dirijeze. De această mărturie ne vom ocupa într-o altă postare. Acum să ne ocupăm de NeXTstep și moștenirea sa la Apple.

De la NeXTstep la Mac OS X la iOS

Că între NeXTstep și iOS există o relație de filiație directă, mediată de Mac Os X, este ceva care trece dincolo de orice îndoială rezonabilă. Un număr mare de clase care alcătuiesc arhitectura sistemului de dezvoltare iOS (numite Cocoa și apoi Swift) au prefixul „NS” care înseamnă NextStep. Chiar înainte de iOS, NeXTstep devenise Mac OS X care în 2001 a fost lansat ca sistem de operare al noii generații de Mac-uri.

Instrumentul grafic, parte a XCode (mediul de dezvoltare iOS), pentru a construi interfața de utilizator a aplicațiilor pentru dispozitivele iOS și pentru a combina diferitele elemente care îl compun vine direct din NeXT. Nici măcar nu și-a schimbat numele, se numește Interface Builder și produce un fișier a.nib (prescurtare de la NeXT Interface Builder).

Chiar și „X” inclus în numele noului sistem de operare Mac nu este un indiciu mic: reprezintă NeXT sau, poate mai probabil, reprezintă Unix, care pe lângă faptul că constituie nucleul NeXTstep este și nucleul Mac OS. X. Oricum nu știm originea acestui „X”, dar există o relație foarte strânsă între toate acestea.

Că Jobs a vrut să păstreze și să construiască pe moștenirea celor 10 ani de muncă asiduă și muncă la NeXT este indiscutabil. În timpul acelei experiențe, liber de orice constrângeri externe și cu capitalul oferit de Ross Perot și Canon, el și-a pus în aplicare viziunea de a face din computer cel mai inteligent dintre aparatele de uz casnic.

Unix și micronucleul Mach

La fel ca NeXTstep, Mac OS X și iOS se bazează pe Unix, sistemul de operare portabil dezvoltat în Bell Labs și lansat în 1969. Principala caracteristică a Unix este capacitatea sa de a rula aplicații de timesharing. Timesharing permite memoriei principale (CPU) a computerului să-și distribuie timpul între mai multe sarcini și mai mulți utilizatori. Aceasta înseamnă că, dacă o aplicație se blochează în mod neașteptat din orice motiv, acest eveniment nu provoacă blocarea întregului sistem și, în consecință, a altor aplicații cu timp partajat.

Unix permite cu ușurință multitasking, protecția memoriei și execuția de programe și servicii în fundal, adică fără control direct de utilizator. Toate proprietățile pe care sistemele de operare ale primelor computere personale nu le-au avut. De exemplu, un sistem alimentat de Unix poate redă o piesă muzicală în timp ce imprimă, utilizatorul procesează o formulă într-o foaie de calcul, iar un al doilea utilizator la distanță descarcă un fișier prin rețea din resursele computerului respectiv.

Pentru a dezvolta arhitectura sistemului NeXTstep, Jobs a apelat la Avie Tevanian, care lucrase la proiectul Mach la Universitatea Carnegie-Mellon. Mach, care va deveni nucleul NeXT, a fost construit pe o abordare radicală cunoscută sub numele de „arhitectură micro-core”, prin care sistemul de operare a trebuit să externalizeze cât mai multe funcții pentru a-și îmbunătăți stabilitatea. Un principiu contrar celui în vogă la vremea aceea.

Obiectiv-C

La fel ca NeXTstep, Mac OS X și iOS au fost dezvoltate în Objective-C, un limbaj de programare orientat pe obiecte derivat din limbajul C. Objective-C permite dezvoltatorilor de aplicații să folosească blocuri de cod prestabilite (obiecte) pentru a dezvolta anumite funcții de rutină, fără a fi nevoie să le programăm de la zero. Obiectele sunt un fel de componentă prefabricată care poate fi asamblată pentru a obține o anumită clădire, așa cum se face cu lego.

Într-un interviu din 1995, Jobs a declarat că programarea orientată pe obiecte va revoluționa modul în care creăm software în următorii 20-30 de ani. Și așa a fost.

Unele aplicații folosite și astăzi pe Mac sau iPhone sunt evoluția software-ului dezvoltat inițial pentru platforma NeXT. Printre aceste numere (inițial Parasheet), Keynote (inițial Concurrence), Pagini, OmniGraffle (inițial Diagram!).

Objective-C a fost creat de Brad Cox, un dezvoltator genial la Centrul de Cercetare Palo Alto al Xerox, ca o evoluție a SmallTalk al cărui mare potențial Jobs îl simțise imediat în timpul vizitei sale legendare la centru în 1977. Locuri de muncă au obținut de la Cox licența pentru utilizarea Objective-C în NeXT și în 1995 Apple a achiziționat Stepstone, compania fondată de Cox, proprietarul limbii.

Cadrul AppKit

Împreună cu limbajul Objective C, NeXT a dezvoltat și un set de obiecte gata făcute pentru a fi folosite pentru a dezvolta software. Aceste obiecte au fost colectate într-un cadru numit AppKit care la Apple a devenit Cocoa pentru OS X și în 2008 Cocoa Touch pentru iOS. Pe lângă faptul că scutește dezvoltatorii de sarcina oneroasă de a dezvolta părți de rutină ale software-ului, AppKit permite celor mai disparate aplicații să pună utilizatorul în situația de a folosi aceleași metode de utilizare a unor funcții, scutindu-l de orice probleme de învățare.

Builder interfață

Interface Builder este un instrument grafic care permite dezvoltatorilor să construiască o interfață cu utilizatorul prin glisarea și plasarea elementelor (butoane, casete de text, meniuri pop-up, ferestre etc.) dintr-o paletă care alcătuiește o interfață grafică. Pe lângă faptul că prezintă un aspect grafic definit, aceste elemente au încorporate toate funcțiile necesare. Paleta poate fi extinsa cu obiecte noi care, odata construite, pot fi trase in ea si din acel moment puse la dispozitie ca obiectele native. Legendele obiectelor se auto-localizează în funcție de limba selectată în software-ul de sistem.

Interface Builder a fost construit de dezvoltatorul francez Jean-Marie Hullot, pe care Steve Jobs l-a chemat să lucreze la NeXT în 1985, după ce a văzut un demo care l-a convins că

a pus mâna pe o „aplicație criminală”. Interface Builder nu a fost integrat în NeXTstep, ci a fost oferit ca aplicație autonomă împreună cu Software Development Kit. Apple a integrat apoi Interface Builder în Mac OS X și iOS. Cu Interface Builder, pe un computer NeXT, Tim Berners Lee, la Cern din Geneva, a dezvoltat primul prototip de WordWideWeb.

Afișează PostScript

În timp ce toate sistemele de operare din anii XNUMX au folosit grafică raster (adică construită cu grile de pixeli) pentru a afișa text și pictograme pe ecranele computerelor, NeXT a folosit grafică vectorială (adică puncte, linii, curbe și poligoane) pentru a afișa pictograme, text și ilustrații. Calitatea unei imagini vectoriale este cu mult superioară celei a unei imagini bitmap sau raster, deoarece este capabilă să profite de rezoluția maximă a dispozitivului în care este vizualizată. În timp ce în grafica raster, rezoluția imaginii determină calitatea afișajului acesteia.

Tehnologia folosită de NeXT, pentru a obține grafică vectorială pe video, a fost furnizată de Adobe (casa programelor Photoshop, Illustrator și Acrobat) printr-un instrument numit Display Postscript. Inginerii NeXT au rescris complet motorul de instrumente Adobe pentru a se potrivi cu sistemul de operare orientat pe obiecte.

Mac OS X și iOS folosesc acum un instrument diferit, numit Quartz, pentru afișarea graficelor pe ecran, care, totuși, folosește același concept de grafică vectorială. Quartz produce imagini vectoriale de tip Postscript folosind modelul de randare PDF. Renunțarea la Postscript se datorează în principal costurilor care decurg din achiziționarea licențelor de utilizator de la Adobe.

Pachetele

OS X și iOS folosesc ambele un mod de gestionare a aplicațiilor derivate din NeXTstep. Acestea sunt pachete, adică un director care vă permite să grupați codul sursă executabil și toate resursele, inclusiv plug-in-urile, necesare funcționării unei aplicații. Toate aceste fișiere se află în acest pachet fără a fi compilate în executabil, așa cum este cazul Windows. Sistemul de operare, la un nivel scăzut, vede pachetul ca un set de fișiere, iar utilizatorul ca o simplă pictogramă. Este o soluție care simplifică foarte mult operarea datorită structurii ierarhice simple a directoarelor.

Managerul de fișiere

Finder este managerul de fișiere Apple care se ocupă de navigarea prin discuri, foldere și fișiere. Cu Mac OS X Finder a fost complet reproiectat pe modelul managerului de fișiere NeXTstep care în esență este similar cu cel al Windows. Pe lângă simpla listă de fișiere sau pictograme aferente unui director, tipică Mac OS de la origini, Mac OS X introduce și o vizualizare de tip ierarhic complet analogă cu cea a lui NeXTstep. Această structură se dezvoltă în ferestre adiacente care arată conținutul directorului sau al resursei selectate astfel încât să fi vizualizat întreaga cale a resursei în cadrul sistemului de fișiere.

Există multe alte aspecte pe care Mac OS X și iOS le-au derivat din NeXTstep și din experiența sa, cu adevărat una dintre cele mai importante și de învățare experiențe din istoria tehnologiei.

Și apoi, trei urale pentru eșecuri!

cometariu