O lucrare recent publicată de Brendan Eich, CEO al browserului Brave bazat pe Chromium și principalul creator al JavaScript, face o retrospectivă a două decenii de existență a limbajului de programare definitiv pentru web, browsere și, din ce în ce mai mult, pentru aplicațiile native mobile și desktop.
Toată lumea care dezvoltă pentru web trebuie să cunoască JavaScript, unul dintre primele trei limbaje de programare, alături de Java și Python, a cărui popularitate a crescut vertiginos datorită ascensiunii învățării automate.
Eich, co-fondator al Mozilla, producătorul Firefox, și co-autorul său, Allen Wirfs-Brock – un autor cheie al specificației ECMAScript pentru JavaScript – detaliază istoria lungă și sinuoasă a JavaScript și a web-ului din 1995 încoace, sub influența Microsoft, Mozilla, Netscape și Oracle.
VEZI: Sfaturi de angajare virtuală pentru solicitanții de locuri de muncă și recrutori (PDF gratuit) (TechRepublic)
Articolul a fost finalizat în martie și publicat în ediția din această lună a Association of Computing Machinery (ACM) Journal, care oferă o retrospectivă a principalelor limbaje de programare, inclusiv JavaScript, C++, F#, Fortran, Fortran, Objective-C și Clojure.
În afară de evoluția JavaScript, lucrarea oferă un who’s who al web-ului timpuriu și ce a dus la web-ul de astăzi dominat de Chromium, care include acum browserul Edge sau „Chredge” al Microsoft bazat pe Chromium.
Documentul este din perspectiva lui Eich după ce s-a alăturat Netscape în 1995, la scurt timp după ce Microsoft s-a oferit să cumpere compania. El a creat atunci o versiune Unix a lui Mocha, precursorul lui JavaScript.
Povestea prezintă, de asemenea, punctul său de vedere cu privire la contribuțiile primite de la „părintele” web-ului, Tim Berners-Lee, co-fondatorul Netscape, Marc Andreessen, care a fost co-autorul primului browser, Mosaic, co-fondatorul Sun, Bill Joy, și co-fondatorul Microsoft, Bill Gates.
Un fapt amuzant este că numele mărcii comerciale JavaScript, care a fost înregistrat inițial de Sun Microsystems, rămâne astăzi sub controlul Oracle, care a achiziționat Sun în 2009, dându-i numele Java.
Problemele potențiale legate de marca comercială explică, de asemenea, de ce standardul JavaScript ECMAScript – pe care TypeScript de la Microsoft, utilizat pe scară largă, îl suportă – nu include termenul „JavaScript”.
„Marca comercială a fost înregistrată inițial de Sun Microsystems, iar de la data acestui document înregistrarea este deținută de Oracle Corporation. Marca comercială a fost licențiată de Sun către Netscape și ulterior către Mozilla Foundation”, scriu cei doi.
„Netscape și Mozilla au folosit nume precum JavaScript 1.4 pentru a descrie versiuni specifice ale implementărilor lor ale limbajului. Unii implementatori ai limbajului au folosit alte nume pentru a evita posibile probleme legate de mărci comerciale.
„Din cauza multiplelor denumiri, a problemelor legate de mărci comerciale și a confuziei cu Java, mulți utilizatori contemporani, autori de cărți și implementatori de instrumente numesc pur și simplu limbajul JS, iar „js” este utilizat în mod obișnuit ca extensie de fișier pentru codul sursă JavaScript.”
Java a fost creat de James Gosling, tot în 1995, în timp ce lucra la Sun. La doi ani după ce Oracle a achiziționat Sun, el a fost prins de Google în timpul bătăliei juridice cu Oracle în legătură cu utilizarea de către compania de căutare a API-urilor Java în Android.
Gosling s-a alăturat lui Tim Bray, un alt fost inginer Sun de profil înalt care a contribuit la open-source Java și care va conduce echipa de susținere a dezvoltatorilor Android a Google începând cu 2010.
Semnând viitoarea bătălie pentru web și primul război al browserelor, cei doi povestesc că imediat după ce Netscape și Sun au anunțat JavaScript în decembrie 1995, Microsoft a spus lumii că va face din Visual Basic (VB) un standard pentru crearea de aplicații bazate pe web folosind VB Script pentru browserul său Internet Explorer.
După cum își amintesc cei doi, JavaScript a fost conceput inițial ca un „limbaj de scripting secundar Java”, în care „toate sarcinile sofisticate de programare ar fi fost realizate cu ajutorul Java”, datorită applet-urilor Java.
„Dar, pe măsură ce experiența cu JavaScript a crescut, dezvoltatorii web au început să realizeze că tot ce aveau cu adevărat nevoie era JavaScript”, scriu ei.
Cu toate acestea, la început, Netscape a văzut Java ca fiind esențial pentru viitorul web-ului și pentru războiul său cu Internet Explorer de la Microsoft și cu Visual Basic-ul proprietar.
Potrivit lui Eich și Wirfs-Brock, „Strigătul de raliu articulat de Marc Andreessen la întâlnirile Netscape a fost „Netscape plus Java ucide Windows””. În mai 1995, când Sun a anunțat Java, Netscape și-a prezentat planul de a licenția Java pentru browserul său.
Dar decizia de a crea JavaScript nu a fost lipsită de opozanți, chiar dacă Andreessen și Bill Joy de la Sun au considerat că singura abordare viabilă era proiectarea și implementarea unui „mic limbaj” care să completeze Java.
„Îndoielile, dominante la Sun și majoritare la Netscape, au pus sub semnul întrebării necesitatea unui limbaj de scripting mai simplu: nu era Java potrivit pentru scripting; ar fi fost posibil să se explice de ce două limbaje erau mai bune decât unul; și avea Netscape expertiza necesară pentru a crea un nou limbaj?”
VEZI: Limbaje de programare: Dezvoltatorii dezvăluie ce iubesc și ce detestă și ce se plătește cel mai bine
Un alt citat ales din document evidențiază abordarea radical diferită a Microsoft față de software-ul proprietar și cel cu sursă deschisă în anul 2000, în contextul unui „val de internet” pe care Gates l-a văzut venind și care era atunci dominat de Netscape.
„Microsoft, cu Internet Explorer, câștigase și, în cele din urmă, obținuse o cotă de piață de peste 90%. Avea puțin interes continuu în a îmbunătăți platforma de programare web asupra căreia nu deținea niciun control proprietar”, scriu cei doi.
„Pe plan intern, resursele au fost redirecționate de la îmbunătățirea tehnologiilor deschise ale browserelor, cum ar fi ECMAScript, către dezvoltarea de tehnologii proprietare Microsoft, cum ar fi Windows Presentation Framework, despre care se spera că, în cele din urmă, va învinge și va înlocui tehnologiile web deschise.
„În domeniul limbajelor de programare pentru .NET, s-a axat pe C# și VisualBasic.NET. În acest context, JScript.NET a fost relevant doar în măsura în care a permis programatorilor JavaScript să migreze către platforma .NET.”