Co zaujalo Daniela Steigerwalda

Páteční odlehčení v podobě osobních subjektivně komentovaných tipů na více či méně vývojářské čtení dnes připravil Daniel Steigerwald, enfant terrible mezi českými JavaScriptaři, známý např. jako autor mapového rozhraní a API Atlasu či jako autor článků o JavaScriptu.
Nálepky:

O autorovi: Daniel Steigerwald je AJAXový veterán, který – dle svých slov – konečně našel Javascriptový framework, který může používat, aniž by měl imanentní potřebu jej od základů přepsat.
RavenDB
Pojem NOSQL (not only SQL) dnes frčí. Někdo považuje dokumentové databáze za slepou cestu vývoje, jiný soudí to samé o databázích relačních. Pravdu/omyl však mají (jako obvykle) oba. Proč? Protože „use the right tool for the job“. Pro svůj současný projekt tak kromě MS SQL používám i NOSQL databázi, konkrétně RavenDB. Šetření je v dnešní době populární, proto vás ušetřím výkladu, proč a jak dokumentovou databázi RavenDB používám.
Co mne zaujalo, je srovnání RavenDB s CouchDB, která byla mimochodem Ayendeho ideovou inspirací. Je osvěžující vidět, že má platforma (.NET) drtí Ruby v něčem tak moderním a hypovém jako je NOSQL. Nejde o to, že RavenDB má více funkcí, ale o to, jakých.
Příklad: Nedávno jsem slyšel Karmiho přednášku z WebExpo, ve které se rozplýval z RESTového API. Ano, je fajn, když lze k databázi mluvit polopaticky, ale používat to denně? REST je neohrabanost sama. Co transakce, doménový model, unit of work, validace pomocí metadat, typová kontrola? Good times for .NET platform.
Kniha o Google Closure Library
je ve skutečnosti nejlepší kniha o Javascriptu a vývoji AJAX (Advanced JAvascript eXperience) aplikací, jakou jsem kdy četl. Teď se mi nesmějte, ale u některých pasáží mám pocit, jako bych je psal já sám. Například pasáž o vývoji ajaxových aplikací: Knihovna se jmenuje Closure, protože byla vytvořena jako uzávěr javascriptového šílenství, kterému programátoři Googlu (úspěšně) čelili. Nebo pasáž, která se dotýká Yahoo knihovny YUI (ač není jmenována) a její obsese jednopísmennými proměnnými a aliasy everywhere, což vede k nečitelnému kódu. Douglasu Crockfordovi pak věnovali celou kapitolu. Jsem rád, že někdo už konečně řekl nahlas, že Crockford šíří javascriptové bludy http://crockfordfacts.com/.
CSS3
No a kromě JS žiji CSS3 (zahodil jsem IE <8, IE6 rovnou přesměrovávám na fax), takže mohu přihodit pár užitečných linků:
Tohle a tohle ukazuji každému grafikovi na potkání, ať ví, co lze dnes pomocí CSS3 všechno udělat. CSS3 (a dropnutí IE < 8) je Panacea. Konečně můžu mít pěkné vektorové UI, je to nesmírné ulehčení práce, stejně jako CSS LESS. Pro dotnetisty přidám odkaz na jeden fajn tool: chirpy.codeplex.com.
Pozorný čtenář se možná zeptá: „CSS3 v IE8?“ Ano, s pomocí http://css3pie.com/. Ano, vše simulovat nelze. Vadí to? Ne.
Nevím jak koho, ale mě hrozně baví vyrábět image sprite. Jediné, co mě baví víc, je vyplňovat daňové přiznání. Ano, existují nástroje, ne, neřeší vše, třeba opakující se pozadí. Pro současné projekty tak využívám http://www.spritebaker.com/. Během vývoje použiji klidně třicet obrázků, pro deploy je všechny (< 32kb) embednu do stylopisů. I to je jeden z příjemných důsledků dropnutí IE < 8. Jaké jsou další?
Tak to bychom měli odkazy praktické, a nyní odkazy… jinak praktické.
Jinak praktické čtení
Máte svou „velkou věc“, na které děláte? Tak si dejte pozor, abyste se do ní nezamilovali. Sice vás to nabije tak, že vydržíte makat dlouhé noci (minimálně do příchodu exekutora), ale vynaložené úsilí se nemusí vrátit. Láska zaslepuje.
Předchozí odstavec vás nezaujal, protože zrovna řešíte něco „děsně zapeklitého“? Zásadní fičuru vaší úžasné nové a převratné aplikace? Stane se, a i taková metodologie, jakou je Scrum, mlčí. Vše se naplánovat nedá. Hlavně ne záseky nebo paralýza analýzou. Docela dobrá pomůcka, jak to rozseknout (možná se vydáte špatným směrem, ale i blbé rozhodnutí je lepší, než žádné), je zde http://www.lidovky.cz/fantazirovani-v-mori-mleka-d09-/ln_noviny.asp?c=A101113_000103_ln_noviny_sko&klic=239917&mes=101113_0.
Zaujalo mne, jak kardinální i zábavné rady mohou muzikant a malíř dát programátorovi.
- Nepotlačuj jedno na úkor druhého
- Pracuj jinou rychlostí
- Přijmi svou chybu jako skrytý úmysl
- Opakování je forma změny
- Ptej se svého těla
- Naopak
- Linka má dvě strany
- Jsi technik
- Smíš udělat jen jednou za čas jeden bod
Zábavný kardinál je i Vlk. Tedy ten Twitterový. Jeho pojetí duchovního života a víry je… jak to říct? Asi jako správná aplikace metodologie Scrum! Jsou to, čas od času, dobré rady, jen je třeba o nich přemýšlet, a hlavně je nebrat dogmaticky.
Scrum v deseti minutách. http://www.youtube.com/watch?v=Q5k7a9YEoUI
Který Javascriptový framework to Daniel našel?
Tipnul bych si že zmiňovaný Google Closure…
Ano, je to on.
Pozorný čtenář se možná zeptá: „CSS3 v IE8?“ Ano, s pomocí http://css3pie.com/. Ano, vše simulovat nelze. Vadí to? Ne.
– Předpokládám, že tedy to, co simulovat nelze, v projektech nepoužívá. Pokud ano, na soukromý projekty v pohodě (jen dopředná kompatibilita je ale idiocie), v případě byznysu je to sebevrah.
http://24ways.org/2009/ignorance-is-bliss
super odkaz, díky!
Jde mi o funkčnost webu. Do té třeba textshadow nebo css animace nepatří.
Doufam, ze Daniel si da zase pauzu a dlouho nic nenapise. Krom toho ze nadpis je mimo misu, tak forma a obsah je take jaksi mimo…
Pripomina mi to clanek/y tak pred 10lety, kdy nekdo neco vyplodil, pridal hromadu odkazu kdo vi kam (tady to uzavira ROXY a Vlk) a clanek byl na svete. Snad aby byl prvni, snad aby byl taky mezi temi co neco pisou.
Vzdyt se to neda cist! Nenese to zadny podstatny info, takovy steky do prazdna…
Neni pointou patecniho „Co zaujalo“ prave to, ze nejaka zajimava osobnost vezme par linku, da k nim neco malo komentaru a ctenar si vybere, co s tim?
siri bludy? a jake prosim ta?
Crockford se nikdy mentálně nesmířil s tím, že Javascript privátní ani chráněné modifikátory viditelnosti prostě nepodporuje. Proto se o jejich simulaci pokouší zneužitím closure a lokálních proměnných.
Tenhle článek je prostě omyl, a nikdo soudný by si z něj brát příklad rozhodně neměl. Přesto ho Crockford na svém webu má, a další a další programátoři se pak znovu a znovu vydávají na slepé cesty. Třeba zde: http://zdrojak.root.cz/clanky/javascript-a-oblast-pusobnosti-promennych-dil-druhy/
Tahle šílenost, z nějakého neznámého důvodu nazvaná ‚Classical Inheritance‘ měla z jeho webu zmizet už dávno. Volat metody předáním jejich názvu v řetězci? WTF? Bohužel, někomu v týmu jQueryUI to přišlo jako dobrý nápad, a zaplevelil tím celou library.
Zvlášť poslední věta je děsivá „I have been writing JavaScript for 8 years now, and I have never once found need to use an uber function.“
O tomhle už se mi snad ani nechce psát. Následující řádek pak značí, že už to bude asi hodně dlouho, co Crockford naposledy použil
for
.Crockford evidentně v Javascriptu už neprogramuje, mnohé jeho rady a doporučení jsou hraběcí, v knize je jeho antistyl cupován na více místech, část však vychází z tohoto dobrého článku.
Ale zase naopak v jednom videu krasne vysvetlil co to je this ked sa na kod pozerame z roznych kontextov (vo fnci, operator new a pod.).
No fajn, ale říkat o 30letém člověku „veterán“? :) Troufnul bych si leda o Oscaru Niemeyerovi napsat „veterán architektury“, a to ještě bych si zkusil zjistit, jestli se neurazí. :)
Oscar Niemeyer, takový líný mladík ,-) Díky, je to pro mne čest mít jeho jméno pod svým článkem ;))
Nejsem si jistý jestli mi něco tenhle článek přinese, ale rozhodně musíte uznat, že z hlediska psychologického je to zajímavý pohled do duše.
Ale nejen to, zároveň v tom totiž webdevelopeři mohou vychytat ty pověstné různé drobky(a tím nemyslím ty odkazy :P) které je svým způsobem nasměrují na mnohem užitečnější články :) Aspoň tak to bývá u mě, z každého článku si vyzobu ty drobnosti a pak googlim a googlim :)