"Tata" Angulara o tome što bi danas napravio drugačije i kako instantno ubrzati web aplikacije

Infobip ❤️ Netokracijašto akvizicija znači za vas - i nas?

“Tata” Angulara o tome što bi danas napravio drugačije i kako instantno ubrzati web aplikacije

Nakon više od 15 godina u Googleu, gdje je inicijalizirao, osmislio i podigao temelje Angulara, jednog od najpoznatijih JavaScript frameworka, a potom usmjerio Googleovu kulturu prema test driven developmentu, Miško Hevery se otisnuo u samostalne vode...

Ove godine opet dolazi na Infobip Shift na kojem će predavati o “Resumable Applications” odnosno o pristupu koji može omogućiti iznimno brze web aplikacije čak i na sporijim uređajima i vezama. Ususret Shiftu uhvatila sam ga na razgovor o novim projektima, testiranju, Angularu i njegovim iskustvima od tranzistora do web frameworka!

Web koji radi brže tako što ne odrađuje što ne treba

Ako ste bili na prošlogodišnjem Infobip Shiftu vjerojatno ste imali priliku čuti njegovo predavanje koje se posvetilo brzini web stranica. Točnije, Hevery je prezentirao jedinstven pristup koji omogućuje renderiranje stranica na poslužitelju i odgađa preuzimanje koda sve dok korisnik ne stupi u interakciju s webom. Upravo time se trenutno bavi kao CTO u Builderu, platformi za vizualno dizajniranje CMS-ova.

Jedan od najvažnijih projekata koji je omogućio da Builder postane to što jest je Qwik – frontend framework koji olakšava razvoj iznimno brzih web aplikacija s odličnim TTI-jem (time-to-interactive), pojašnjava Hevery:

TTI je samo jedan od mnogih dobro poznatih pokazatelja. Fokus za Qwik je osigurati da krajnji korisnik dobije najbolje moguće korisničko iskustvo, koje se svodi na smanjenje količine posla koji preglednici moraju obaviti pri pokretanju. U praksi se to svodi na isporuku manje JavaScripta. Ali rješenje nije u tome da naše web stranice manje ovise o JavaScriptu, već u tome da imamo okvire koji su pametni da ne isporučuju sav JavaScript unaprijed.

Od tranzistora do web frameworka

Kako neki od vas znaju već, Miško Hevery ima prilično zavidno i šaroliko iskustvo IT stručnjaka koji je imao priliku raditi s električnim sklopovljem računala, potom s bazama, ali i u full-stack developmentu. Danas je primarno fokusiran na frontend web frameworke, a prijašnja iskustva dala su mu jedinstvenu perspektivu kad su u pitanju performanse web stranica.

JavaScript je jezik vrlo visoke razine i ponekad je teško razumjeti sve slojeve koji su zaduženi za podizanje naše web stranice. Poznavanje načina na koji te stvari funkcioniraju pomaže u dizajniranju sustava koji su “prijateljski nastrojeni” prema performansama. Dok je niska razina performansi važna, s Qwikom smo se usredotočili na postizanje performansi ne tako da budemo učinkovitiji (mikro-optimizacija), već preskačući velike dijelove posla (makro-optimizacija).

Još dok je radio aktivno na Angularu Miško se počeo dosta angažirati i oko test-driven developmenta. Ranih 2000-tih njegovo predavanje Psychology of Testing obišlo je nekoliko konferencija i kompanija poput Netflixa i eBayja. Danas je test-driven development prilično uvriježen u industriji (iako se svugdje ne prakticira u pravom smislu riječi), no u vrijeme kada je Hevery zagovarao takav pristup, tech zajednica nije bila toliko… otvorena.

Kad sam vodio to predavanje pokušao sam uvjeriti ljude u industriji da je testiranje korisno i da je to vještina kao i svaka druga. Ono što mi je bilo zanimljivo kod programera je to što bi se oni često hvalili nepoznavanjem određenog jezika, ali svi bi se pretvarali da znaju kako raditi testiranje, iako je to vještina koja se uči kao i svaka druga. Nadao sam se da ću pomoći ljudima da to shvate kako bi se više ljudi uključilo u testiranje.

Što bi zadržao, a što promijenio u vezi Angulara?

Heveryju kao ocu Angulara – koji je jedan od najpoznatijih web frameworka danas, ali nad kojim React ipak preuzima primat – nezaobilazno mi je bilo postaviti i pitanje da može vratiti u vrijeme, što bi zadržao, a što promijenio.

Mislim da smo trebali napraviti bolji posao na poslužiteljskoj strani renderiranja. Smatram da su jaka strana Angulara uvijek bile web aplikacije s jednom stranicom, a ignorirale su se aplikacije s više stranica. Mislim da je fokusiranje na MPA-ove i SSR od samog starta moglo rezultirati boljom podrškom za iste.

“Ako imate samo čekić, sve izgleda kao čavao”

Hevery je iz Googla otišao 2021., a od tada je u potpunosti posvećen razvoju Builder platforme kojom su osmislili novi pristup headless CMS-u iliti sustavu za upravljanje sadržajem koji odvaja mjesto na kojem se sadržaj pohranjuje (“tijelo”) od mjesta na kojem se prikazuje (“glava”). Trenutno tim prostorom na tržištu dominiraju rješenja koja se fokusiraju na isporuku JSON-a, što programera zarobljava u beskrajnom ciklusu ažuriranja sheme i povezivanja podataka u aplikaciji kako bi se zadovoljile marketinške potrebe, objašnjava Hevery.

Osmislili smo Builder tako da programeru damo u potpunosti konstruirane komponente za njegov tehnološki stack (Angular, React, Qwick itd.), za što je uglavnom potrebna samo jedna integracija. Programer je onda slobodniji usredotočiti se na djelotvorniji rad, nego što je to ažuriranje JSON CMS poveznica.

S obzirom na to da i sam Builder kao vizualni “drag-and-drop” CMS olakšava programiranje, zanimalo me kakav je Heveryjev pogled na no-code/low code? Ističe kako ih vidi kao nadopunu programiranju.

Prilikom izrade aplikacije, neki dijelovi su više vizualizirani i bolje prilagođeni no-code/low code alatima, ali uvijek će postojati veoma zahtjevni tehnički dijelovi gdje će no-code/low code samo smetati. Dakle, s moje točke gledišta, ne radi se tu o promjeni načina na koji radimo stvari, već o povećanju broja alata koje imamo u kutiji s alatima. To omogućuje programeru da odabere pravi alat za posao. Uostalom, ako imate samo čekić, sve izgleda kao čavao.

Vidimo se 19. i 20. rujna na Shiftu!

Za kraj, upitala sam Heveryja da udijeli savjet svim web programerima i dizajnerima koji se trenutno bore s web performansama i korisničkim iskustvom (osim korištenja Buildera :))…

Usredotočite se na količinu JavaScripta! Čak i ako ne koristite Builder editor/CMS, možete integrirati naš besplatni partytown otvorenog koda (partytown.builder.io) na svoju stranicu. Partytown premješta skripte trećih strana – od analitike do web workera, oslobađajući glavni thread da bolje reagira na potrebe krajnjeg korisnika.

Želite li čuti još par programerskih savjeta i nekonvencionalnih stavova o razvoju softvera, svakako provjerite i intervjue s Charity Majors i Kitzeom. A ako vam to ne bude dovoljno, znate gdje će toga biti napretek – u Zadru, na Infobip Shiftu.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

  1. Marko

    Marko

    07. 09. 2022. u 12:23 pm Odgovori

    Angular je prilično promašena tehnologija na zalazu koju je nadmašio React a obje tehnilogije je nadmašio Vue. Angular je za one koji jednostave stvari žele raditi na kompliciran način. To znači one kojima je ego važniji od efikasnosti tehnologije

    • Josip

      Josip

      10. 09. 2022. u 5:27 pm Odgovori

      Komentar sa glupom predrasudom bez ikakvog argumenta. I React i Angular su sasvim dobri razvojni alati, razlika je u tome što treba znati kad je dobro koristiti jedan, a kada drugi. React dozvoljava vrlo brz razvoj jednostavnijih aplikacija, dok za veće, kompleksne bi Angular bio vjerojatno bolji odabir s obzirom da sve potrebne stvari ima “in the box” bez potrebe dodavanja drugih librarya. Također Vue nikad nije nadmašio ni React ni Angular te je i dalje iza. https://gist.github.com/tkrotoff/b1caa4c3a185629299ec234d2314e190

      Iz mojeg iskustva slični komentari kao tvoj su uvijek dolazili od ljudi kojima je Angular bio prekompliciran za shvatit i upotrebljavat.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Društvene mreže

LinkedIn traži tvoju identifikaciju? Samo skoči do javnog bilježnika!

Vrijeme adventa pomalo ostavljamo iza nas, ali uspomene i pokloni ostat će još dugo s nama. Jedan naš poduzetnik posebno će pamtiti kako ga je poznata društvena mreža nagradila odlaskom kod javnog bilježnika.

Tehnologija

“Revolucija” koju donosi ChatGPT podsjeća me na samovozeće aute

Promjene koje donosi napredak u tehnologiji kompleksnije su, sporije i manje seksi od bombastičnih predviđanja na društvenim mrežama.

Intervju

Gdje je mobile development danas? “Skoro sve se promijenilo…”

Da je itekako moguće profesionalno rasti radeći samo u jednoj tvrtki, ako imaš dobre uvjete, pokazuje karijera Dine Sulića, koji je prije 9 godina kao student došao u Endavu (nekadašnji Five). S Dinom smo popričali o njegovu profesionalnom putu, dinamičnom svijetu mobile developmenta te kako kroz NowInMobile meetupe planiraju dijeliti znanje u široj mobile zajednici.

Što ste propustili

Karijere

U novoj sezoni Škole budućnosti učenici ulaze u virtualni svijet i izrađuju robota hexapoda

Osim što Škola budućnosti bilježi nove rekorde u prijavama, ove godine nudi i nove programe.

Intervju

ChatGPT prošao višu razinu državne mature iz hrvatskog jezika sa solidnom trojkom!

Poznati AI model, ChatGPT prošao je razne testove raznih ljudi diljem svijeta, ali još ga nitko nije ispitao o hrvatskom jeziku i kulturi. Zato ga je hrvatski podatkovni znanstvenik testirao na državnoj maturi. Osim rezultata književnog i gramatičkog testa, donosimo i detaljan ispravak eseja profesorice hrvatskog jezika.

Tvrtke i poslovanje

Što hrvatski dizajneri kreativnih poslovnih prostora rade u Emiratima?

Hrvatska konzalting tvrtka DC&T, specijalizirana za kreativno, učinkovito i humano osmišljavanje uredskih prostora, kreće u osvajanje svjetskih tržišta. Prvi korak: Dubai.

Tvrtke i poslovanje

Od svih industrija, IT stručnjaci u Hrvatskoj najzadovoljniji svojim poslom

Stigli su prvi rezultati My Stethoscopea, Degordianove platforme za mjerenje zadovoljstva i angažiranosti zaposlenika. Danas ekskluzivno na Netokraciji donosimo uvid u podatke vezane uz IT industriju.

Sponzorirano

Netko je već prepoznao da “mišiće” za vođenje tima imate? Sad je vrijeme da ih izvježbate.

Kako voditelji odjela i menadžeri u IT tvrtki provode dane, i koliko im se svakodnevica promijenila u odnosu na ranije u karijeri razgovarali smo s Domagojem Štrekeljom i Ivanom Penovićem, voditeljima frontend i web development odjela u Undabotu.

Intervju

Gdje je mobile development danas? “Skoro sve se promijenilo…”

Da je itekako moguće profesionalno rasti radeći samo u jednoj tvrtki, ako imaš dobre uvjete, pokazuje karijera Dine Sulića, koji je prije 9 godina kao student došao u Endavu (nekadašnji Five). S Dinom smo popričali o njegovu profesionalnom putu, dinamičnom svijetu mobile developmenta te kako kroz NowInMobile meetupe planiraju dijeliti znanje u široj mobile zajednici.