marți, mai 30, 2023

Impasuri „cloud”

Tot frunzărind Internetul ca să aflu ce s-a mai petrecut în ultima vreme, am găsit un material interesant despre WebAssembly . Este un proiect care are cel puţin avantajul de a apărea la momentul potrivit; evident că succesul nu depinde doar de asta, dar măcar e un punct de pornire.

Am mai scris aici despre relativul impas la care propăvăduitorii „cloud”-ului  ajung inevitabil. Tehnologia web a fost de la început gândită ca o tehnologie client-server; în care majoritatea calculelor/prelucrărilor sau orice alte operaţii se fac pe server, iar operaţiile care se execută la client (în browser) sunt minimale. Ori, dacă ne gândim să mutăm în cloud aplicaţiile pe care de obicei le aveam pe computerul propriu, va trebui să executăm în browser operaţiuni destul de complexe. Să ne gândim de exemplu la aplicaţia Google Docs.

În această zonă opţiunile pentru dezvoltatori sunt nu numai limitate, dar şi destul de problematice. Există cele două tehnologii majore, Java şi .Net , care au fiecare avantajele şi dezavantajele lor, unele rezultate din controlul pe care îl au companiile care le deţin (Oracle şi Microsoft) şi temerile pe care dezvoltatorii le-ar putea avea relativ la politicile acestora. Oricum, aceste tehnologii nu sunt integrate în browser ci funcţionează ca plugin-uri, ceea ce ar putea ridica diverse probleme.

Singurul limbaj nativ disponibil în principalele browsere este interpretorul de JavaScript. Dar interpretorul de JavaScript a fost gândit de la început ca având un rol periferic ( să coloreze diferit opţiunea selectată sau să ne avertizeze când parolele nu se potrivesc) aşa că problema eficienţei limbajului nu s-a prea pus. Să lucrezi proiecte ample, cu colective mari în aşa ceva este iar destul de dificil. Nu în ultimul rând, fiind un limbaj interpretat, codul sursă este direct accesibil din browser; protejarea codului e practic imposibilă.

Sunt tot felul de artificii care se folosesc pentru a creşte eficienţa JavaScript, însă esenţialul nu prea poate fi schimbat: avem un limbaj interpretat, cu toate dezavantajele care rezultă din asta.

De aceea, dorinţa de a integra un interpretor binar în browser este cât se poate de firească. Însă sunt mai multe obstacole de trecut.

Mai întâi, trebuie ca cel puţin cei trei mari producători de browsere să fie de acord cu integrarea lui, şi mai ales cu integrarea aceluiaşi engine ( vremea când webdesignerii scriau javascript separat pentru IE şi Netscape/Firefox sperăm că a trecut). Evident, specificaţiile trebuie să fie publice, pentru a permite acest lucru.

În al doilea rând, dezvoltatorii înşisi trebuie să se pună de acord cu specificaţiile noului limbaj. Probabil că JavaScript este doar in extremis un punct de plecare; de atunci şi până acum cerinţele s-au schimbat.

În al treilea rând, trebuie ca proiectul să fie funcţional şi folosibil cât mai repede. Poate părea nepotrivit, dar cam aşa funcţionează tehnologia în zilele noastre. Un proiect care întârzie să fie lansat prea mult după momentul său de oportunitate, va eşua cu siguranţă, oricât de bun ar fi. Oamenii au nevoie de soluţii acum, mâine e prea târziu.  Din păcate, asta poate duce la aceleaşi probleme pe care le au Java şi .Net: versiuni incompatibile care vor face aplicaţiile dependente de o anumită implementare. Atâta vreme însă cât vorbim despre o tehnologie exclusiv „cloud” lucrurile ar trebui să fie oarecum mai simple: e problema furnizorului să îşi actualizeze tehnologia la nivelul versiunii curente a browserului (acesta deja se cam actualizează automat ); în cazul Java, de exemplu, putem avea şi aplicaţii desktop care ar putea să nu mai funcţioneze.

Bineînţeles, ar mai trebui şi un IDE , şi în general un mediu de dezvoltare, care să permită scrierea de programe complexe. În definitiv pentru programe simple avem deja JavaScript, la câteva linii de cod nu se simte diferenţa.

Și, evident, un pic de noroc. Neprevăzutul are şi el rolul lui în IT , care nu poate fi interpretat  de nici un assembler…

Distribuie acest articol

4 COMENTARII

  1. De obicei va citesc cu placere si interes dar de data asta…
    am citit de doua ori articolul ca sa inteleg ce vreti sa spuneti si tot n-am reusit. In afara de cateva constatari de adevaruri elementare, nimic. Bine ca ati pus link-ul http://arstechnica.com/information-technology/2015/06/the-web-is-getting-its-bytecode-webassembly/ ca sa aflu si eu ce v-a adus la masa de scris. Poate un rezumat al acelui articol ar fi fost mai folositor citititorilor decat o lamentare stearpa.

    • Ce sa va zic, nu a fost intentia mea sa para o lamentare… Avem niste idei noi grupate sub numele generic de cloud, care au devenit un fel de „mantra” mai ales pentru cei care nu se pricep – se si pompeaza mult in publicitate, intentia mea a fost sa prezint si dificultatile conceptului si modul in care se incearca depasirea lor folosind exemplul din articolul din ArsTehnica ( articolul e destul de scurt, nu cred ca avea sens sa il rezum, de asta l-am dat in link) . Daca nu a iesit prea bine… se mai intampla, poate data viitoare muza va fi mai generoasa :)

    • Articolul conţine o ştire: interpretor direct în browser; reacţia mea a fost: asta da chestie tare! pentru că, spre exemplu, va putea pune capăt instalărilor obositoare de soft de astăzi, şi vă dau un exemplu: cumpăraţi un program de contabilitate, peste un timp vreţi să schimbaţi PC pe care e instalat acel program – e un chin pentru utilizator acest transfer, al programului şi al bazei de date; dacă se normează programarea cloud, va fi un mare pas înainte.

      • Până la urmă cam asta e ideea. Dacă folosiţi Google Docs, de exemplu, aveţi o suită Office în browserul dumneavoastră, fără nici o instalare. Deci avem deja un interpretor în browser, acesta este javaScript. Insă este teribil de ineficient, pentru că lucrează direct cu limbaj de nivel înalt. Unii pun şi comentarii în cod :) E drept, între timp a mai fost optimizat, se poate şi comprima , se mai poate şi cache-ui, dar de la un moment încolo nu prea mai ai ce să faci, atingi limitele limbajului şi basta. În plus, îl cam poate şi citi oricine, deci dacă ai vreun algoritm patentat nu prea e convenabil să îl implementezi într-un asemenea limbaj. Tocmai de asta mi s-a părut interesant materialul. Ideea e destul de evidentă, ne trebuie un interpretor mai avansat; asta ştiam şi eu, dar e mult mai interesant când se implică şi producătorii de browsere, pentru că de ei (de consensul lor) depinde, până la urmă.

LĂSAȚI UN MESAJ

Please enter your comment!
Please enter your name here

Prin adaugarea unui comentariu sunteti de acord cu Termenii si Conditiile site-ului Contributors.ro

Autor

Mihai Badici
Absolvent al Facultății de Electronică si Telecomunicații București ( 1991) Administrator de sistem cu peste zece ani de experiență cu specializari in sisteme de stocare si securitatea datelor. De asemenea a absolvit in 1996 Facultatea de Litere la Universitatea Bucuresti. In prezent, consultant IT independent, colaboreaza pe mai multe proiecte legate de infrastructura de date.

Carti noi

Revoluția Greacă de la 1821 pe teritoriul Moldovei și Țării Românești

 

Carti noi

„Jurnalul de doliu scris de Ioan Stanomir impresionează prin intensitatea pe care o imprimă literei, o intensitate care consumă și îl consumă, într-un intangibil orizont al unei nostalgii dizolvante. Biografia mamei, autobiografia autorului, atât de strâns legate, alcătuiesc textul unei declarații de dragoste d’outre-tombe, punctând, în marginea unor momente care au devenit inefabile, notele simfoniei unei iremediabile tristeți… vezi amanunte despre carte
 „Serhii Plokhy este unul dintre cei mai însemnați experți contemporani în istoria Rusiei și a Războiului Rece.” – Anne Applebaum
În toamna anului 1961, asasinul KGB-ist Bogdan Stașinski dezerta în Germania de Vest. După ce a dezvăluit agenților CIA secretele pe care le deținea, Stașinski a fost judecat în ceea ce avea să fie cel mai mediatizat caz de asasinat din întregul Război Rece. Publicitatea iscată în jurul cazului Stașinski a determinat KGB-ul să își schimbe modul de operare în străinătate și a contribuit la sfârșitul carierei lui Aleksandr Șelepin, unul dintre cei mai ambițioși și periculoși conducători sovietici. Mai multe…
„Chiar dacă războiul va mai dura, soarta lui este decisă. E greu de imaginat vreun scenariu plauzibil în care Rusia iese învingătoare. Sunt tot mai multe semne că sfârşitul regimului Putin se apropie. Am putea asista însă la un proces îndelungat, cu convulsii majore, care să modifice radical evoluţiile istorice în spaţiul eurasiatic. În centrul acestor evoluţii, rămâne Rusia, o ţară uriaşă, cu un regim hibrid, între autoritarism electoral şi dictatură autentică. În ultimele luni, în Rusia a avut loc o pierdere uriaşă de capital uman. 
Cumpara cartea

 

 

Esential HotNews

Top articole

contributors.ro

Contributors.ro este intr-o permanenta cautare de autori care pot da valoare adaugata dezbaterii publice. Semnaturile noi sunt binevenite cata vreme respecta regulile de baza ale site-ului. Incurajam dezbaterea relaxata, bazata pe forta argumentelor.
Contact: editor[at]contributors.ro