Web development - ad libitum...

Na začátku je slušné se představit

Dobrý den, jsem Miloslav.

Za více než čtvrt století, co působím jako 'freelancer' (tedy profesionál na volné noze, alias OSVČ), se mnohé změnilo. Když se ohlédnu zpět, můj 'profesní růst' působí poněkud diskontinuálně, kdyby mi bylo 30, bylo byla by to známka přelétavosti a nedůvěryhodnosti. Není mi 30. I když se cítím na 45, není mi ani 45;-) Celý ten čas od promoce na ČVUT do dneška lze zhruba rozdělit do tří etap.

Altavista.com, kde jsem měl své první HTML stránečky, je nyní Yahoo a informace se hledají spíše na Google, který tehdy ještě myslím ani neexistoval. Místo Facebooku byla Mammedia, později Mageo. Na počátku jsem ale nebyl programátor, živil jsem se tím, co jsem vystudoval inspirován tatínkem, scénografem Národního divadla a technickým ředitelem v Laterna Magica, totiž architekturou. Po krátkém zaměstnání v projektovém ústavu, jsem se nechal okouzlit novým fenoménem živnostenského listu. Tehdy šlo dělat i celkem velké zakázky, i když člověk byl sám a profesanty si najímal. Bavilo mě to hodně, a byl jsem hodně mladý. Pracoval jsem jako o život ale nemyslel na zadní kolečka.

Poslední můj projekt byl tuším autobusový terminál v Hrádku nad Nisou. To bylo zároveň poprvé, kdy už jsem se nedostal dál než k projektu pro územní řízení. Tender na projekt k realizaci vyhrála velká firma, už to prostě v jednom člověkovi dělat nešlo. Došlo mi, že jsem pro samé tahání čar zaspal dobu, a pokud bych nevybudoval firmu se zaměstnanci, nelze tuhle profesi dělat seriozně dál. Jako vlk samotář jsem se chtě nechtě musel s touto realitou popasovat. Tím prakticky skončilo moje období 'architektování'. Dodnes mě to mrzí, protože si myslím, že jako architekt jsem nebyl úplně nejhorší, přinejmenším na pár věcí jsem i docela pyšný a mají hezký zvuk (zámecký areál Ctěnice, teleskopické zastřešení zámeckého nádvoří pro Smetanovu Litomyšl či expozice ve zvinici Chrámu sv. Mikuláše nebo interiér PIS v Malostranské mostecké věži.). Bylo to období, které přinášelo spoustu stresu, ale i radost z hmatatelných výsledků. Dnes už bych projektovat nemohl, ujel mi vlak, neznám ani nové technologie, ani nové předpisy a normy.

Fokus jsem zaměřil poté hlavně na tiskovou grafiku. Té jsem se věnoval po troškách i předtím, začínal jsem v době, kdy se chodilo se 100MB ZIP disky (pamatujete?) na osvit a to pak nesl do tiskárny. Ba dokonce, první logo, které jsem kdy dělal (realitní kancelář Royal) jsem ještě kreslil Rotringem na pauzák;-) Grafiku dělám dodnes (kdo nepoužívá Adobe CC jako by nebyl), ale spíš jako nárazové zakázky pro své letité klienty, když sází na jistotu a chtějí se vyhnout chození kolem horké kaše. Nové zakázky v této branži už chodí spíše za mladšími profesními kolegy, kteří se líhnou každý rok po stovkách a jsou cool. To mi hraje do karet, protože tiskovou grafiku sice fakt umím (ostatně ve srovnání s architekturou nebo programováním je to technologicky triviální), ale dělat grafiku 20 let na plný plyn - to není realistická představa. Tohle řemeslo mám myslím celkem zvládnuté a když je zakázka zajímavá a inspirativní určitě je to milé zpestření - zvlášť složitější kouzlení v Photoshopu je fakt zábava. Ale to umí kde kdo... tedy alespoň to tak na mě působí z těch nádherných portfolií stovek grafiků.

Geneze programátora

Největší mojí neřestí je zvídavost. To byl i důvod, proč jsem při projektování už v juniorských živnostenských začátcích 'prokrastinoval' tím, že jsem na nadupaném PC 486 bastlil první HTML kódy. Nějak mě to k tomu táhlo už tenkrát. V Autocadu 11 jsem se snažil upravovat si ve zdrojáku alespoň menu a měl dětinskou radost, když mi ty LISPovské příkazy pak něco i vykonaly. Vlastně mohu směle říči, že jsem programování i 'studoval', protože na fakultě jsme psali cosi ve Fortranu, aby se to pak vyděrovalo na děrné štítky a nakeslila se kružnice. Super.

Vezmu-li to poctivě, moje 'IT' minulost sahá ještě dál, na škole jsem kromě baráčků (ty mi šly nějak samy od sebe) pečlivě studoval to, čemu se tehdy říkalo 'selekční jazyky' a vládlo jim Mezinárodní desetinné třídění. Rád chodím neprošlapanými cestičkami a tak jsem si vymyslel vlastní systém pro popis a třídění informací a udělal z toho 'studentskou vědeckou práci' (pro pamětníky SVOČ), která definovala hybrid na pomezí symbolických keywords a abstrahované hierarchie pro popis elementů a procesů tohoto světa - vlastně takový 'google' v době kdy sálové počítače tisky 'sjetiny' na jehličkových tiskárnách a já (blbec) nevěřil, že by z toho mohlo vylézat i něco hezkého na pohled. Vyhrálo to tehdy celostátní kolo jen proto, že nikdo nechápal, co jsem vlastně myslel a byla to jediná práce ve 'své' kategorii;-) Jako mládě jsem byl snílek (a kdo ne že...) a mám tak pěknou historku jako profesní background. Ta na psacím stroji vyťukaná a Ormigem rozmnožená vize informatické budoucnosti se právem utopila v meandrech času.

Navážno se dá mluvit o programátorských začátcích až když jsem začal dělat první pokusy s PHP a databázemi a postupně se dopracoval i k prvnímu pořádnějšímu webu pro naši neziskovou 'srdcovku' Chrti v nouzi. Dodnes funguje na původním vlastním systému a už několik let (marně) hledám čas, abych ho zmodernizoval jak si zaslouží. Tak snad letos;-) Od roku 2009, kdy jsem doménu koupil, je to už celkem slušný dinosaurus. Technicky ale překvapivě stále funguje. Ještě před tím jsem i 'lepil' pluginy v Drupalu a dokonce snad i Worpresu a už tehdy se naučil, že toto není má cesta. Jako u baráků jsem začal studií a přes prováděčku skončil až technickým dozorem investora, tak i u 'programování' to prostě raději všechno udělám sám (self made man, all inclusive), abych neztratil kontrolu. Je to pohodlnější, než se dohadovat s externisty a klient je ušetřen výmluv.

Weby mě bavit nepřestalo a v posledních tak pěti, osmi (?) letech, jak dělám méně grafiky, programování tvoří podstatné procento mé práce. Snažím se aby to nebylo čistých 100%, nechci na stará kolena vyhořet. Web development je navíc skvělý tréning mozku, protože neustále se objevují nové věci a je třeba je nejen vstřebat, ale i nějak odpovědně odhadnout, co je jen aktuální 'módní vlna' a co dlouhodobě udržitelná stálice. Mám ny mysli hlavně různé technologie, jejichž vývoj je překotný (javascript na serveru...). Co bylo před pár lety novinka, je dnes zastaralé... Co je dnes to jediné 'správné', bude patrně zítra vytlačeno něčím ještě 'správnějším'. Jde o to, aby s každým novým výkřikem nebylo nutné hned předělat co bylo již vykonáno - alespoň funkční jádro by mělo být dostatečně odolné vůči výkyvům, kabátek se převléknout může relativně snadno.

Tak tedy - kdo jsem na počátku tohoto století? Jsem Miloslav, programátor a kódér funkčních webových aplikací a prezentací, který se snaží složité věci zjednodušovat se zřetelem na dlouhodobou udržitelnost a provozní úspornost. Stejnou misi má i můj nedávno narozený Weboid a jeho minimalistický extrakt pro onpage editaci Wedit.

Na třicátá, čtyřicátá a padesátá léta 21. století zatím nemám žádný plán.... tak jsem zvědav. Jako dítě jsem chtěl být biolog, uvidíme....

Jak weby dělám?

Vlastnímu vývoji aplikace musí předcházet porozumění tomu, co klient od výsledku očekává a pro koho je určen. Bez toho by všechny další kroky stály na hliněných nohou. Podle povahy zakázky k tomu může stačit pár emailů, ale také to může naopak tvořit podstatnou část celé investované energie - příkladmo u pilotních projektů, kde přesné zacílení je klíčové pro výsledný efekt. Samotný uživatelský zážitek (UX), jasné směrování toku pozornosti návštěvníka k potřebné žádoucí odezvě a gradování jeho zaujetí je smyslem webu. Na to navazuje zpravidla funkční prototyp webu a wireframe jako podkald pro ladění a diskuze a pak pro vlastní technické řešení a webdesign.

Jádrem jakékoli webové aplikace, která má být i online editovatelná, je tzv. backend. Engine, který zajišťuje nezbytné procesy při práci s daty a jejich bezpečnost. Ten běží na hostingovém serveru, backend programuji v PHP7. Jak moc 'složitý' musí být, je základní strategická volba odvozená z požadavků na jeho funkčnost - současnou i předpokládanou budoucí. Pro několikastránkovou osobní prezentaci jistě není potřeba totéž, co pro složitou aplikaci pronajímanou koncovým uživatelům s množstvím různorodých interních procesů, pestrou skladbou zpracovávaných dat a závislostí na API třetích stran. Pro ty jednoduché případy by složitý engine postavený nad robustním frameworkem byl přítěží, u složité aplikace naopak je využití mezivrstvy účelového frameworku zjednodušením vývoje i budoucí údržby. Vývoj má výstupy na mém serveru na pracovní doméně. Vývojové fáze a verze uržuji v GIT.

Od okamžiku, kdy je účelné věnovat se veřejné části webu - frontendu - je možné i přímo posoudit její vývoj. Koneckonců webdesign je zpravidla to, co klienta subjektivně zajímá nejvíce. Vzhled webu je vždy nezávislý na zpracování dat, není tedy technický problém webdesign podle libosti upravovat. Je to jen časově náročné, ale funkcionalitu backendu to neovlivní. Díky tomu může probíhat následné uživatelské testování snadno i jako A/B testy různých variant UX či vzhledu. Je-li na to ovšem v rozpočtu prostor - testování je relativně drahé a často je z úsporných důvodů suplováno 'beta provozem'. Při řešení frontendu (kódování) kladu důraz na optimalizaci načítaných zdrojů (CSS a zejm. javascriptové knihovny, obrázky, apod.) s ohledem na rychlost zobrazení. Toto je nesnadné při využití zakoupených HTML5 šablon, které sice vypadají na pohled pěkně, leč často za cenu neskromných nároků na cizí knihovny. Javascript je praktický zejména pro asynchronní přenos dat ze serveru (AJAX) a reaktivní změny vzhledu stránek. Kdyby byly cílem nejrůznější vizuální efekty, možnosti javascriptu zejm. ve spojení s WebGL jsou snad nekonečné. Spíše než efekty je mým cílem při práci na frontendu respektování pravidel přístupnosti, uživatelského pohodlíSEO.

Kolik stojí web

Rozpětí možné ceny je veliké. Tak jako je veliký sortiment možných výsledných produktů. Malý web postavený na mém mikrosystému Wedit (nebo na nějakém jednoduchém OpenSource minisystému, který jsem si vyhodnotil jako 'best of' - přívětivý Bludit, či geniálně jednoduchoučký Wonder) může přijít na několik tisícikorun. Náročnější webová prezentace či katalog poháněný mým oblíbeným CMS/CMF ProcessWire se pohybuje řádově v desítkách tisíc korun. Cena technologicky komplikovanější aplikace může vyšplhat klidně i na 200 tisíc a více. Spravedlivě lze cenu odhadnout toliko na základě rozboru očekávané funkcionality a složitosti nároků, které musí splnit. Jak píši výše, mým cílem je pro klienta hledat takové řešení, které je pro něj dlouhodobě nejefektivnější. Tlak na extrémně nízkou cenu bývá krátkozraký a může mít své opodstatnění jen u účelových mikroprojektů, s krátkou očekávanou životností. Složitější projekty s limitovaným rozpočtem může být účelné rozdělit do funkčních etap.

Cena mého pracovního času se pohybuje mezi 500 až 650 Kč (podle intelektuální náročnosti a povahy zakázky). Je do ní promítnuta skutečnost, že volný čas věnuji neustálému dovzdělávání v oboru, který je nejen široce rozkročený, ale i překotně se vyvíjející. Stále tak aktualizuji znalosti, jež promítám do své práce i konzultací.

První dvě hodiny konzultace vnímám jako zdvořilé seznámení a úvod do záměru, který chcete realizovat a jsou tedy zcela zdarma. Rozšiřují i mé obzory, tedy jsem za ně sám vděčen. Zpravidla je to i postačující čas pro zjištění, zda je oboustranně výhodné, abych se zapojil do vašeho projektu, nebo je praktičtější vydat se jiným směrem. Písemná forma e-mailu je pro to stále nejjednodušší způsob, jak si v klidu utřídit myšlenky.

Nemusíte se tedy obávat stručně popsat svůj konkrétní záměr, dostanete tak zpětnou vazbu, která vám zprostředkuje vnější pohled na problém a možná i usnadní další rozhodování.

Příjemný den přeje Miloslav

Město Klatovy - informační web

This website uses cookies to ensure you get the best experience on our website