pátek 28. května 2010

My z komplikovaného světa

Proč máme posedlost v přetechnizovaných řešeních? Není to dávno co jsem se přistihl při tom jak, mažu část zdrojových kódů v SVN. Jako memento bych si nejraději vypálil na pravé předloktí zkratku KISS (keep it simple and stupid). Pochopitelně raději čínsky, abych v nejhorším prohlásil, že to je část z jídelního lístku činského bufetu za rohem a důsledek mladické nerozvážnosti. Kdo z nás může s klidným svědomím říci, že nikdy neudělal nic co by nebylo přetechnizovaného.

Přetechnizovaní je stav kdy používáme technologie, postupy a vytváříme abstrakce, které nám z krátkodobého hlediska házejí klacky pod nohy a z dlouhodobého hlediska nemají ten efekt, který očekáváme.

Pro jeden z projektů jsem potřeboval úložiště dat. Vesměs sada XML dokumentů hierarchicky orgranizovaných plus metadata. Strávil jsem skoro čtrnáct dní implementací tohoto úložiště. Samozřejmě k úložišti bylo potřeba udělat uživatelské rozhraní pro správu dat. Jak to tak bývá, ukázalo se, že drobná změna zadání a praktická zkušenost rozcupovala mé představy o tom, že úložiště je skoro hotové. Po několikahodinovém souboji vlastního vědomí a svědomí jsem racionálně zvážil všechna pro a proti a raději existující kód smazal, aby mě v zbytečně neprovokoval. Asi za dva dny jsem naimplementoval a otestoval tu samou funkčnost nad obyčejným souborovým systémem. Hierarchie je pomocí adresářů, některá metadata byla nahrazena prostou konvencí v názvech souborů resp. jejich přípon a metadata jsou obyčejné XML dokumenty. Jako uživatelské rozhraní lze použít jakýkoliv souborový manažer. Trvanlivost dat a jejich verzování lze zařídit jakýmkoliv Version Control System nástrojem (SVN, CVS atd.).

Jaké ponaučení jsem si odnesl? Někdy je potřeba udělat krok zpět, aby mohl člověk udělat dva dopředu. Z jakého důvodu vytváříme stále přetechnizovaná řešení je mi neznámo. Možná jsou více vzrušující, když je nosíme v hlavě. Možná máme prostě utkvělo představu, že to není vlastně tak složité. Možná nevěříme, že 80% je hodně a kvůli 20% to obětujeme. Občas si prostě vybájíme architektonická omezení, která nás mají ochránit před nukleární katastrofou a přitom nám hrozí nanejvýše prvomájový deštíček. Tak či onak KISS.