Teški klijenti

tehnologijeweb

Prije par mjeseci, pokušavajući pogoditi što bi se moglo dogoditi u ovoj godini, napisao sam...

Webu će se početi događati teški klijenti, bogate aplikacije (povratak Java appleta?), ali prvenstveno za Intranet/namjenska rješenja.

OpenLaszlo je već tu neko vrijeme, ali nitko ne zna za njega, Adobe je predstavio Apollo, Microsoft je flešao sa Silverlightom, a sada je i Sun dokaskao na bojište s nečim što se zove JavaFX. JavaFX je zapravo F3 koji sam već spominjao, a izgleda da Project Flair nema veze s time i da je to nešto što je ipak povezano s JavaScriptom.

Iako se možda čini da su ta rješenja međusobna konkurencija ipak je jedno jasno, oni imaju zajedničkog neprijatelja: AJAX. Dinamički html i JavaScript su prekomplicirani i teško razumljivi prosječnim desktop developerima. Oni traže jednostavnije razvojno okruženje i poništavanje nekih nedostataka http protokola.

Što će se dogoditi? Rani usvojitelji navedenih rješenja najvjerojatnije će biti oni korisnici koji i inače koriste druga rješenja navedenih tvrtki. Čini mi se da će najlakši prijelaz pri tome imati Apollo korisnici jer mogu zadržati stare navike i uz najmanje muke početi proizvoditi aplikacije u novom okruženju. Silverlight će prigrliti Microsoft korisnici, ali samo rane ptice i sve do izlaska novog Visual Studia neće biti masovnijeg korištenja. Microsoft ni ne računa na to, jer da smatraju Silverlight jakim adutom u ovom trenutku, zacijelo bi ga koristili za novi Hotmail, to bi bila idealna promocija. Nedostatak Silverlighta je nemogućnost offline rada, ali ukoliko korisnici budu dovoljno glasni, a konkurenti agilni, moglo bi i toga biti u konačnoj inačici ili u prvom SP-u. JavaFX mi djeluje kao najtvrđi orah za korisnike, s nekako najmanje šanse za uspjeh, a F3 princip bi mogao prije doživjeti trenutak slave u nekom JavaScript toolkitu/biblioteci.

Hoće li AJAX brzo propasti pred navalom teških klijenata? Neće. AJAX developeri su vrlo agilni, samo je pitanje trenutka kada će netko napraviti simbiozu nekog dobrog toolkita (kao što je Ext JS) i serverske tehnologije te napraviti RAD alat za jednostavniji i brži razvoj web aplikacija. Ili barem neko jednostavnije okruženje. Predviđaju mu smrt, ali AJAX još nije došao ni do svojeg vrhunca. Tek nas očekuje cijeli niz aplikacija kao što je Wayki.

I ne morate se pribojavati za html. Preživio je on već slične pokušaje ubojstva. Ali o tome neki drugi put...



Komentari

9. svibnja 2007. 22:25

Pre nego što počeno ozbiljno da razmišljamo o JavaScriptu kao tehnologiji za razvoj stvarno bogatih aplikacija zasnovanih na nekom glomaznom HTML/CSS/JS toolkitu browseri treba da porade na svojim JS interpreterima (Mozilla radi na tome, ne znam za ostale igrače). Na primer, 400KB koliko je težak pun ExtJS osetno smanji performanse browsera (stranica sporije reaguje na hover, JS se sporije izvršava itd). Mašina je trenutno najjači iMac sa Core2Duo procesorom i 1GB DDR2 memorije. Šta će se dešavati sa prosečnim kancelarijskim mašinama?

HTML, JS, CSS je široko podržan i otvoren tako da ga neće zameniti nikakvih bogati klijenti još dosta vremena.

10. svibnja 2007. 10:33

Ja nemam baš najjače računalo, ali nisam baš primjetio neko ozbiljno usporenje s ExtJS-om. A ako su ti performanse problematične onda možeš napraviti custom build i uključiti samo one dijelove koji su ti potrebni.

Build your own Ext http://extjs.com/download/build

Ext Dependency Builder http://extjs.com/deploy/ext/examples/tree/dependency.html

Zapravo bilo bi najbolje kad bi postojao neki alat koji bi izanalizirao kod i napravio prilagođeni ext-custom.js.

11. svibnja 2007. 14:22

vuk kao da navija da pobijedi sto glulja moguca tehnologija... :(

11. svibnja 2007. 14:47

Zašto bi uopće neka tehnologija trebala pobijediti? Zar nije bolje da postoji više različitih načina za prezentaciju informacija i da se onda koristi ona koja najbolje odgovara svrsi? Ne misliš valjda da će za nekoliko godina svi preći na RIA klijente? Obične web stranice će i dalje postojati. Baš me zanima kako zamišljaš pretraživanje Interneta ako bi se sve preselilo u naručje bogatih klijenata?! :-)

11. svibnja 2007. 19:57

Ali, uvijek na kraju pobijedi jedna, dominantna, tehnologija: trenutno je to (nazalost) prastari HTML i JavaScript sa svojim mukotrpno-nekonzistentno razvijanim DOM-om za browser object model. Nadji mi i jednu osobu (osim tebe, vuce) koju ovakvo stanje ushicuje i koji ne bi zelio da se nesto promijeni nabolje!

Sto ce biti u buducnosti? Da, ja ZAISTA ocekujem da ce svi prijeci na RIA klijente. Taj prijelaz ce biti postepen, ali neizbjezan. Obicne web-stranice pocet ce se izradjivati u drugim tehnikama, a ne vise pomocu starog HTML-a, ljudi ce biti zeljni toga da web aplikacije ne zaostaju ni izgledom ni funkcionalnoscu ni po performansama za desktop aplikacijama - a u postojecim tehnologijama takvu zelju korisnika je gotovo nemoguce ispuniti.

Silverlight u browser unosi novi DOM i novi XML-dijalekt koji je bolje prilagodjen danasnjem vremenu (zaboga, 21. je stoljece, necemo valjda jos uvijek svijet bazirati na 4 ili 5 kontrola koje imamo od sredine 90-ih!). Osnovna prednost silverlighta pred npr. Flashom (s cime ga mnogi neopravdano usporedjuju) je u tome sto se silverlight PRIRODNO nadovezuje na danas postojece web tehnologije (tako da ni tvoja pretraga web-a nece biti problem, jer danasnja pretraga radi tako da parsira HTML, buduca ce raditi tako da ce parsirati XAML i mirna Bosna! :) ).

Moje je misljenje da u cijeloj ovoj prici nedostaje jos jedna karika: naime, za generiranje (obicnih HTML) web stranica postoji citav niz tehnologija (ASP.NET, PHP, ROR, JSP itd), ali za sada ne postoji jos nijedna tehnologija koja omogucava dinamicko generiranje XAML (Silverlight) stranica. Jednom kada tako nesto bude postojalo (a samo je pitanje dana kada ce se to dogoditi), vise zaista nece biti razloga da itko pise web-aplikacije u arhaicnim gore navedenim tehnologijama koje je pregazilo vrijeme, koristeci 18 razlicitih jezika, alata i biblioteka, a sve to da bi se u konacnici postigao mrsavi efekt! Umjesto toga, ljudi ce imati tehnologiju koja ce omogucavati puno lakse i konzistentnije pisanje najmodernijih web aplikacija koje ce se izgledom i performansama moci mjeriti s najljepsim desktop aplikacijama!

Ja zivim za taj dan, koji ce brzo doci! A vi?

11. svibnja 2007. 20:51

Ja živim za prve dane godišnjeg odmora kad ću se, zajedno s klincima, sjuriti na neku pješčanu plažu i dane provoditi odmarajući kosti u nekom plićaku. I za lutanja po starim mjestima u potrazi za dobrom fotkom. I za male radosti koje život čine ljepšim. Mene tehnologija ne dovodi do orgazmičke ekstaze.

Ako ti svoje ispunjenje nalaziš u samozadovoljavajućem iščitavanju propagandnih članaka, to je tvoj izbor. :-)

Ti govoriš o formi, ali sadržaj je bitan. Zabadava tebi 1001 nova kontrola u turbo cool toolkitu ukoliko neće biti sadržaja. Na kraju neće pobijediti forma, pobjeđuje sadržaj. Hipertekst je super stvar, zašto bi se odrekli njega zbog toga jer se nekome dopada gumb koji se vrti?

Da svi razmišljaju kao ti danas više ne bi čitali knjige ni novine, ne bi slušali radio, već bi samo gledali TV ili bi radili ono što bi u tom trenutku bilo najmodernije. Što misliš, zašto su SMS poruke tako popularne? Po tebi je to sigurno izuzetno primitivan način komunikacije koji se svodi na slanje običnih slova koja bi trebalo zamijeniti nečim ljepšim i šarenijim?

A ti si promašila . Zar ti stvarno ne vidiš tko je najveći gubitnik zbog RIA klijenata? Klasične desktop aplikacije. Što to radi većina Flex/Silverlight/JavaFX/F3 demoa? Imitira desktop aplikacije. Network computer postaje stvarnost. Proklet bio taj Larry. A svima je 640Kb trebalo biti dovoljno. :-)

11. svibnja 2007. 21:21

Da, lijepo je ici na godisnji, ici na more, itd. Ali, ovdje nije bila rijec o tome. Inace, mene tehnologija dovodi do orgazmicke ekstaze - imam dosta dobar, moderan vibric! :P

Vuk kaze: "Hipertekst je super stvar, zašto bi se odrekli njega zbog toga jer se nekome dopada gumb koji se vrti?"

Ja odgovaram: Pa, upravo zbog toga jer se mnogima dopada gumb koji se vrti! :) I, osim toga, nitko se ne odrice hiperteksta, jer je XAML samo jos jedna vrta hiperteksta!

Dalje, vuk kaze: "Da svi razmišljaju kao ti danas više ne bi čitali knjige ni novine, ne bi slušali radio, već bi samo gledali TV ili bi radili ono što bi u tom trenutku bilo najmodernije."

Ja odgovaram: ovo sto si rekao je potpuno promaseno. Jer, ljudi su citali novine nekad i one su bile crno-bijele. Danas su u boji. Radio je nekad bio mono, danas je stereo. TV je nekad bila crno-bijela, s jadnim rasterom. Danas imamo HDTV! Napredak je nemoguce izbjeci, bez obzira na to koliko ga kocili oni koji zbog vlastite nesklonosti poboljsavanja stvari zele vjecno zadrzati status quo. U biti, ja tebe donekle i razumijem: vjerojatno se radi o tome da si ti dosegao razinu experta u sadasnjim "starim" web-tehnologijama, i stoga te nerviraju nove stvari, jer ce one sa sobom donijeti i nove eksperte! :) A sto ces, tako ti je to, moj vuce! :P

I na kraju, Vuk gadja ali promasuje, govoreci: "A ti si promašila ceo fudbal. Zar ti stvarno ne vidiš tko je najveći gubitnik zbog RIA klijenata? Klasične desktop aplikacije. Što to radi većina Flex/Silverlight/JavaFX/F3 demoa? Imitira desktop aplikacije. Network computer postaje stvarnost."

Ja odgovaram: pronadji mi gdje ja to u svom prethodnom komentaru pjevam ode desktop aplikacijama? Nigdje, ja samo govorim da ljudi zele da sadasnje web-aplikacije budu kvalitetne, brze itd KAO desktop aplikacije. Ali, one to danas nisu, zbog jadne tehnologije kojima su se web developeri prisiljeni sluziti. Ali, uskoro to nece biti tako, jer stize Silverlight! :)

11. svibnja 2007. 23:26

Mene ne plaše novi eksperti zato što vidim da se mogu nositi s njima, jer svi ti vrli, novi RIA klijenti ne donose suštinski ništa novo.Programski jezici su još uvijek isti, markup language za opis sučelja i slične fore su mi već odavno poznate, čak su i neki stari DOS alati (prezreni od strane novih stručnjaka) imali bolja rješenja za opis sučelja nego što trenutno ima MS s windows formsima.

Ajde citiraj rečenicu gdje ja kažem da ti pjevaš ode dekstop aplikacijama. Ja ti samo kažem da će RIA klijenti više naštetiti desktop aplikacijama i tu izmijeniti odnos snaga nego što će zbog njih patiti klasičan web.

I daj si nabavi neku normalnu tipkovnicu s našim slovima za taj tvoj vrli novi MediaPC, tako da možeš tipkati kako treba. S pravom tipkovnicom ti se lakše tipka, ne moraš citirati tuđe riječi da bi podebljala poruku. I kakva si ti uopće programerka koja koristi igračku, a ne pravo računalo? Tko te prisiljava na to? Pa ti si u gorem položaju nego jadni, izmučeni web developeri. :-)

12. svibnja 2007. 09:17

Pusti sada windows forme, one ionako nisu predmet ove rasprave. Ovdje govorimo o XAML-u, Silverlightu, WPF-u, a slozit ces se, tu vec stvari (gledano s aspekta softverskog dizajna) bitno bolje izgledaju nego u starim windows formama.

Slazem se s tobom da ce RIA klijenti najvise nastetiti desktop aplikacijama, ali se ne slazem s tobom kada kazes da se prodor RIA klijenata nece odraziti na "klasicni" web.

Ja bas mislim suprotno: klasican web ce postepeno sve manje i manje biti klasican, a sve vise i vise ce biti rich. Tako da na kraju ovo sto danas smatramo klasicnim webom vise nigdje i necemo moci naci (osim mozda ako bude dolazuilo iz vukove kuhinje, tog zadnjeg bastiona tvrdoglavog zatvaranja ociju pred novim trendovima :) ).

I zaista, ne treba imati nikakvu kristalnu kuglu za to predvidjeti, sasvim je dovoljno vidjeti sto se dogadja danas: danas imamo sve vece koristenje AJAX-a u svrhu kreiranja bogatijeg korisnickog experience-a. Ljudi s odusevljenjem gledaju te nove aplikacije koje imaju ono sto se do jucer cinilo nemogucim.

No, ljudi sada zele jos vise, jos brze i jos bolje, oni zele da web aplikacije sutrasnjice jos i vise nalikuju na desktop aplikacije i da budu komparabilne ne samo po izgledu, nego i po performansama. A s druge strane, developeri zele sve te ljepote isprogramirati sto lakse, brze, bolje, uz sto manju cijenu razvoja, i zele, naravno opet, da aplikacija ima dobre performanse, da se ne vuce sporo kao puz, itd. Zato mislim da je situacija naprosto idealna za kvantni skok ka jos bogatijim suceljima, ka Silverlightu! :)

A sto se tice tastature, navikla sam na englesku. Buduci da jako malo teksta pisem na hrvatskom, hrvatsku tastaturu rijetko koristim tako da trenutno niti ne znam ni gdje mi je! ;)

13. svibnja 2007. 17:52

Što bi naš narod rekao, ja šumom, tri drumom...Ono što donose RIA klijenti uopće nije ono što se do jučer činilo nemogućim. RIA klijenti imaju malo dužu povijest, a Silverlight nije nikakva nadnaravna tehnologija koja je došla od nikuda. Meni se čini da ti imaš jako malo iskustva iz realnog svijeta i razvoja aplikacija kad vjeruješ u brzo ostvarenje Silverlight bajke. Ja nikada nisam osporavao da će RIA klijenti uzeti maha, e pa da, čak sam to i predviđao. Ali svjestan sam tromosti poslovnog svijeta. Zar ti nisi svjesna koliko se još 'zastarjele' tehnologije vrti u poslovnom svijetu? Lakoća programiranja i savršeni razvoj s novim alatima? Prosječni developeri sporo usvajaju novu tehnologiju, a velikim sistemima da i ne govorimo. Tu je onda i uvijek prokleta potreba za kompatibilnošću sa starim sustavom koji nastavlja živjeti unatoč loših projektantskih rješenja. Koliko puta bi bilo lakše prekinuti s lošom praksom i sve napraviti (isprogramirati) od početka. Ali menadžment se u pravilu nikada ne odlučuje na to iako se na kraju pokaže da je prekrajanje i nadogradnja starog sustava vremenski puno zahtjevnija operacija i podložnija greškama.

Kao što već rekoh ti gledaš samo formu, a zaboravljaš sadržaj. Silverlight ili bilo koji RIA klijent nisu budućnost weba. To su sučelja. Budućnost će se prije naći u mikroformatima i različitim vrstama web servisa (novi API). Klasična računala će se sve manje koristiti za pristup Internetu, a sve više će biti novih uređaja (pametni telefoni i dlanovnici, konzole i slična aparatura koja kao predočnik koristi TV ekran) pa će izrada jedinstvenog browsera za sve to postati nemoguć zadatak. U takvoj situaciji je najjednostavnije ponuditi podatke, ponuditi API, a klijent se nek dalje snalazi sam, prema svojim mogućnostima...

U takvoj budućnosti će se naći i Silverlight, ali daleko od toga da će osvojiti tržišni postotak kakav je svojedobno imao IE.

13. svibnja 2007. 19:36

Vuk kaze: "Silverlight ili bilo koji RIA klijent nisu budućnost weba. To su sučelja. Budućnost će se prije naći u mikroformatima i različitim vrstama web servisa (novi API)."

Mozes li mi malo pojasniti ovo? Nije mi jasna ova zadnja recenica!