WebExpo 2010 - pátek

Na WebExpo jsem letos vyrazil poprvé a docela jsem se těšil. Nabízelo poměrně atraktivní mix ze světa webových vývojářů - obchodem počínaje, přes kreativu a použitelnost až k programování. Ne všechno co vypadá dobře na papíře (webu) je ale takové i ve skutečnosti. Pocit, který si z WebExpa dnes odnáším by se dal popsat jedině slovem "nevyrovnané výkony" - a to jak z hlediska organizačního, tak i z hlediska prezentací. Mám-li být hned zkraje kritický, myslím, že některé věci by už na 3. ročníku měly být vychytané. Registrace nebyla připravená na takový nápor lidí a řada účastníků tak přišla o první prezentace, jen pro to, že musela stát frontu jak na banány před revolucí. V materiálech, které jsme dostali s registrací kompletně chyběl program a nějaká mapka, která by lidem usnadnila orientaci v areálu Univerzity (taktéž heslo pro WI-FI v materiálech chybělo). Některé věci (bloky, trička), zdá se, byly jen na požádání pro ty, co věděli kam jít. Dalším klasickým nedostatkem (což je ovšem standard všech konferencí, na kterých jsem byl) je nedostatek elektrických zásuvek - už si to musím někam zapsat, abych si vždycky s sebou bral alespoň pěti-psa.

Abych ale jen nekritizoval ...

Kvalita přednášek byla také kolísavá od excelentních (viz. pro mne Karel Minařík), přes ty, kde si přednášející spletli konferenci s PR akcí, až po ty, které byly velmi podprůměrné. Podle twitteru by mezi ty posledně jmenované patřila asi přednáška Vývoj v PHP řízený testy (osobně jsem na ní nebyl, takže nemohu soudit).

Mezi přednáškami mě velmi zaujala přednáška s názvem CouchDB - databáze pro web od Karla Minaříka. Pro mě (a podle twitteru nejen pro mě) to byla nejlepší přednáška pátečního dne. Pro webové použití má CouchDB skutečně několik velmi sympatických vlastností:

  • pracuje se s ní přes RESTful HTTP protokol - tj. část web prezentace vám může obsloužit přímo databáze sama
  • základním modelovým jazykem je JSON, který je pro web nyní již standardem
  • dá se jednoduše škálovat (díky použití HTTP protokolu lze nasadit libovolný balancer i web cache) a nastavení replikace je jednoduché
  • respektuje pravidlo, že cokoliv se může kdykoliv rozbít a nikdy nenechává data v nekonzistentním stavu (po nastartování není třeba žádný "recover" a databáze okamžite startuje do produkčního režimu a obsluhuje požadavky)

NoSQL databáze ovšem vyžadují myšlenkový posun, což pro vývojáře odkojené na relačních databázích může znamenat problém. Především správný návrh "datového modelu" - tedy struktury dokumentů a vazeb mezi nimy, s ohledem na konkurenční přístup nemusí být vždy patrný. Obdobně implementace složitější "dotazovací" logiky může být pro začátečníky oříšek. Konkrétně zde přednášející zmiňoval svou zoufalost při implementaci jednoho požadavku na složitý vyhledávací dotaz, než narazil na techniku indexování NoSQL dat pomocí Lucene. Pro mě zajímavou zmínkou byla i nově přidaná distribuce pro OS Android, která by mohla představovat zajímavou volbu pro mobilní vývojáře. Na Androidu by však mohl představovat problém claim CouchDB: "disky jsou levné, procesorový čas drahý" - který spočívá v existenci stejných dat na disku víckrát (optimalizace pro rychlost čtení a nikoliv úložného prostoru). To by v mobilním telefonu mohlo znamenat problém. Rozhodně jako DB platforma CouchDB vypadá velmi zajímavě, i když bez pořádné dávky prototypování se s ní do žádných větších akcí zatím pouštět nebudu.

Mezi dalšími přednáškami čtvrtečního dne mi přišla zajímavá ještě The Touch Events od Petera-Pavla Kocha. Na ní si člověk teprve uvědomil, jak je svět desktopových prohlížečů ustálený s jasně definovanými standardy, které moderní prohlížeče více méně dobře implementují. Na poli mobilních browserů (v současné době >15 typů) je situace ovšem radikálně jiná. Přestože řada z nich je postavená na WebKitu, i ty se ve svém chování různí. Co teprve potom samostatné implementace jako je Dolphin od Samsungu, Symbian prohlížeče, Opera atd. K vlastním touch eventům v browserech se přednášející dostal až k závěru, ale konečný pocit, který jsem si odnesl je, že optimalizovat aplikaci pro touch events je v současnosti pěkné peklo. Navíc, kromě iPhone prozatím nikdo nedává k dispozici v browseru gestures recognition, což si myslím je jeden z hlavních důvodů, proč chtít optimalizovat pro touch screen.

Přednáška o Cappucinu (Ext-JS pro mobilní aplikace psaná v, pro mě obskurním, Objective-J) byla zajímavá v tom, že porovnávala tento framework s jQuery Touch a přednášející zmiňoval blízké vydání jQuery Mobile obsahující tooly právě pro brosery v mobilních telefonech. Upřímně řečeno tyto dvě informace mne zaujaly víc, než vlastní Cappucino.

Velkým zklamáním pro mne byla přednáška Proč parsovat, když máme ATOM a JSON, kde se snažil člověk z Microsoftu odhalit podstatu Open Data Protocol, ale díky nakoplému prezentačnímu notebooku se neustále pohyboval ve stavu, že něco nefunguje. Dokážu si představit, jaká je tahle situace pro přednášejícího katastrofa, ale způsob, jakým arogantně tuto situaci komentoval, ve mně žádné sympatie nevyvolal. Druhá část, kterou jsem již nedoposlouchal popisovala PHP framework podobný JaxB v Javě, který překládá XML / JSON komunikaci v ODATA na práci s objektově reprezentovanými daty v PHP (pro Javu asi nejspíše OData4J).

Den jsem uzavřel panelovou diskusí Spolupráce s webovou agenturou. Jak se vyhnout tomu, aby se sen změnil v noční můru. Ta byla pro mne zajímavá především tím, že tam seděli lidé z oboru (webových agentur) a naproti zástupci zákazníků. Nevím jak vás, ale mně zajímají názory lidí z konkurenčních firem a potenciálních klientů ;-). Dojmy z panelové diskuse si nechám pro sebe, protože jsem předpojatý - nicméně odcházel jsem pozitivně naladěn. Především komentáře Pavla Kotyzy z Mediatelu byly jak zábavné, tak upřímné. Názory Marka Vícha z Kooperativy byly také velmi zajímavé především pro to, že trošku odkrývaly život a způsob práce a vedení zakázek ve velkých korporacích.

Dnešní překvapení:

  • pozitivní: čajovna s kvalitním čajem místo varnic s kafem, básničky od FlexiBee, množství MacBooků, věkový průměr účastníků
  • negatigní: množství retweetů, které dost znehodnotily vyhledávání zajímavostí, spamování twitteru nabídkou práce od Symbia v nové pobočce v Pardubicích

Nuže uvidíme, co přinese den druhý. Doufejme, že již nebude tolik nevyrovnaný jako ten dnešní a WebExpo budu opouštět s dobrým pocitem.

Na závěr ocituji pár tweetů, které mě dneska vážně pobavily:

  • @kom420: Pravé si před nás sedl 16 letej kluk v kvádru a vytáhl ipada. Asi jsem někde v průběhu svý kariéry udělal chybu. #webexpo
  • @Petr_P: V php room někdo ukazuje jak se NEMÁ testovat. Moc poučné. #webexpo #fail
  • @jantichy: Coze, to pivo od Microsoftu je nealko? No jo no, kazdy jejich produkt ma nejaky bug... #webexpo
  • @abtris: Problem tech horsich prednasek na #webexpo je ze prednasejici nevedi co chteji publiku vlastne rici.
  • @LukasUXD: Nenavážejte se do babiček, které prodávají na Ebay pletené ponožky. Díky social media vám klesnou prodeje. #webexpo
  • @jantichy: Prosímvás, a kde je tady ta blowjob hall? #webexpo
  • @plavacek: SEO a SEX mají minimálně jednu společnou vlastnost - snahu o dosažení co nejlepší pozice. #webexpo