Pozadí ubytovníčku: platforma

Konečně se dostáváme do trochu techničtější fáze, o které měl původně tento seriál celý být. Ovšem pro některé souvislosti a nasměrování i na trochu potřebné teorie byla odbočka směrem k Running lean nezbytná. Tato fáze vychází z některých polí v Lean canvasu a sice pole cena a pole zisk. Nejsem si jistý, zda tento způsob … Pokračovat ve čtení „Pozadí ubytovníčku: platforma“

Konečně se dostáváme do trochu techničtější fáze, o které měl původně tento seriál celý být. Ovšem pro některé souvislosti a nasměrování i na trochu potřebné teorie byla odbočka směrem k Running lean nezbytná. Tato fáze vychází z některých polí v Lean canvasu a sice pole cena a pole zisk. Nejsem si jistý, zda tento způsob zadání je možné považovat za korektní vyplnění těchto polí, ale popravdě – je mi to docela jedno.

V poli cena mám pouze dvě položky – platba za doménu a čas. Od toho se bude odvíjet veškerý návrh technické části. Všimněte si, že nikde není uvedena cena za hosting či virtuál, ceny za licence na ten který použitý software, cena za grafiku a další. Opravdu jedinou investicí by měl být můj čas.

Lean canvas
Lean canvas

Jaké technické řešení teda zvolit, když má být zdarma? Mohl bych si vybrat nějaký free hosting s podporou třeba php, ale vzhledem k mému odporu k tomuto jazyku to nehrozí. Jsem Javista a přestože mám v plánu pustit se do učení se nějakého dalšího nového jazyka, nemyslím si, že tohle je vhodná příležitost, takže zůstanu u té Javy. Možností běhu javy zdarma (alespoň několika instancí) na serverech je dneska už taky poměrně velké množství (Amazon Elastic Computing Cloud, Google App Engine, Heroku, Cloudbees, CloudFoundry a další), zkušenost mám pouze s Google App Enginem a Cloud Foundry, takže budu volit z nich. Volba je poměrně jasná, protože GAE je uzavřený (nejenom, svého času mě pěkně vytočil, když jsem se snažil udělat abstrakty pro persistentní objekty), navíc mi neumožní zdarma běh většího množství instancí a (jako bonus) můj odpor vůči této společnosti v poslední době docela stoupá, začínám na ni koukat jako na „evil one“.

O Cloud Foundry jsem mluvil už už minulý rok v Ostravě na Dev Skillz. A protože už o tomto řešení bylo napsáno více než dost kdekoliv jinde, tak se čtenář bude muset spokojit se základní informací, že se jedná o  PaaS řešení zaštítěné VmWare, které běží na jejich infrastruktuře, infrastrukturách jiných (AppFog, Uhuru), případně je možné sáhnout po komunity forku tohoto projektu a rozjet si jej na vlastních serverech. Spíše než o jazycích je vhodnější mluvit spíše o podporovaných frameworcích, kterýchž škála je poměrně pestrá: Spring, Grails, Lift, Play, Node.JS, Rails a Sinatra, persistence je zajištěna databázemi relačními (MySQL, vFabric Postgres) i NoSQL (Redis, MongoDB) a pro komunikační mezivrstvu je možné použít RabbitMQ.

Zásadní výhoda je tedy následující: s CloudFoundry mám možnost běhu aplikace zdarma, pokud bych vyžadoval více instancí, větší dostupnost nebo nějaké perličky, můžu si připlatit, nebo přímo přesunout aplikaci na EC2, či na vlastní infrastrukturu!

Jak jsem zmínil, Cloud Foundry přímo umožňuje využití některého z množství oblíbených frameworků, což rozhodně využiju, protože jsem člověk líný, abych začínal od píky. A jsem líný tak, že využiju nějaký RAD, v mém případě Spring ROO, protože nově podporovaný Play v době návrhu ubytovníčku ještě CF nebyl nabízen.

Roo nabízí využití některého ze dvou frameworků pro tvorbu view – Google Web Toolkit a Apache Tiles, takže sahám po Tiles v kombinaci s  jQuery a čistými JSP. Opět nepůjdu do detailů, zájemce odkážu na některý z mnoha tutoriálů na ovládání roo.

V poli zisk mám nejzásadnější položku – zkušenost. V praxi rád testuju různé nápady na lidech, jak se co ujme, jestli to vyhovuje…na malých částech, dalo by se to nazvat uživatelský prototyping. Nejinak tomu je i u tohoto projektu. Chci zkusit, jaký bude poměr registrovaným uživatelům ku uživatelům pouze využívajícím službu (jsem zastáncem možnosti anonymního využívání aplikací na webu, jako tomu bývalo odjakživa – před všemožnými facebooky a unifikovanými loginy v podobě openId a dalších) a prozkoumat zájem potencionálních zákazníků (provozovatelů ubytování), jak se budou stavět k nabídce využívání tohoto systému – vyzkoušet svoje „social skills“, totiž jak s „nepočítačovníky“ správně a slušně komunikovat.

Dalším pokusem (ziskem v podobě informace) bude sestavit vůbec funkční aplikaci nad Cloud Foundry – předchozí byly jenom pokusy v podobě helloworld a drobností pro zábavu – a získat pro ni nějaké reálné uživatele, na kterých se budu moci učit – ať už komunikovat jakožto „já projekt“, nebo ladit přivětivost systému, „zážitek“ z použití služby a další.

V neposlední řadě taky aplikaci zařadím do kategorie svých „pet projektů“, ke kterým se můžu uchýlit k odreagování se, když mě všechno ostatní točí a rád bych se jednorázově alespoň na chvíli věnoval něčemu jinému.

PS Jako side-project vznikl Air Cargo Forwarder, což je aplikace pro Android pro monitorování a ovládání aplikací běžících na platformě Cloud Foundry.

(Repost z ubytovnicek.cz)

Jak jsem šplhal na Etnu

Protože jsem do Catanie přijel především za účelem výstupu na Etnu, je jasné, že jsem se nemohl dočkat dne, až se tomu tak stane. A nijak tomu nepomohly toulky po rozpáleném (propršeném) městě, práce jdoucí od ruky, či stejky z mečouna. Takže jsem se prostě jednoho rána (odjezd už v 8:20!) sbalil a vyrazil na … Pokračovat ve čtení „Jak jsem šplhal na Etnu“

Protože jsem do Catanie přijel především za účelem výstupu na Etnu, je jasné, že jsem se nemohl dočkat dne, až se tomu tak stane. A nijak tomu nepomohly toulky po rozpáleném (propršeném) městě, práce jdoucí od ruky, či stejky z mečouna. Takže jsem se prostě jednoho rána (odjezd už v 8:20!) sbalil a vyrazil na bus tím směrem.

Approaching Etna
Approaching Etna

Samozřejmě, najít tam takhle po ránu někoho, kdo umí anglicky, je nadlidský výkon, tak jsem byl rád, že jsem si zapamatoval destinaci a s větičkou „Ciao, bus a Rifugio Sapienza?“ jsem chvilku pobíhal kolem, až jsem se ocitl v hloučku, kde byli i Indové, které jsem potkal předchozího večera v hostelu a chápal, že na Etnu nepůjdou. Docela mě znervózňovalo, že mají všichni jízdenky a když bus přijel (s cca 10 minutovým zpožděním) a řidič neměl drobné, tak jsem byl vyslán kamsi na druhou stranu nádraží do báru, kde prý je předprodej. Pokladní se samozřejmě věnoval kafi, takže  zpoždění autobusu se zvětšilo na cca 20 minut, ale konečně jsme vyrazili.

TODO: mapa

Ne však daleko – první zastávka byla na náměstíčku v Nicolosi, kde mají zřejmě autobusáci domluvený kšeft v místní kafárně, takže nás vyhnali z busu na nákup kafe. Indové nervózně běhali kolem s tím, že je právě státní svátek a potřebují sehnat jídlo a pití, protože se bojí zavíračky na Etně. Po další zhruba půlhodince, která se dá připočítat ke zpoždění, jsme pokračovali v cestě – přibrali jsme ještě nějakého místního dědulu, vzezřením bezdomovce, aby jako první v „refugio sapienza“ (1910 m.n.m.) vyskočil z autobusu a vrhl se k (nebo spíše do) nejbližšího kontejneru. Ostatní zatím na sebe postupně oblíkali všechno, co měli po ruce, teplota okolo patnácti stupňů, z třicítek dobrý skok.

Nicolosi
Nicolosi

Chvilku jsem obcházel „basecamp“, ale protože byl plný cetek, turistů a předraženého obžérstvení, mířil jsem směrem nahoru. Minul jsem boudu, kde se Indové snažili usmlouvat cenu za průvodce (nějakých E70) a minul jsem i lanovku (přestože jsem ji chtěl využít, ale vysolit bratru E30 za krátké svezení jsem opravdu nechtěl) a protože jsem si umanul, že se nahoru dostanu, utáhnul jsem pořádně boty, poprvé zanadával a vyrazil vzhůru pěšky – jako jediný. Bohu díky za stažení slepé mapy z OSM (není na ní vůbec nic, ale díky GPS jsem zhruba tušil, na které straně „cesty“ se právě nacházím), protože jsem se rozhodl nejít po „silnici“, ale po v mapě zaznačené turistické „stezce“.

To by člověk neřekl, jaká je takovýchto pár kroků fuška
To by člověk neřekl, jaká je takovýchto pár kroků fuška

Následujících pár hodin je vyplněno pouze focením všeho na všech stranách, sypáním písku z bot každých pár kroků (dementní nápad jít v ultra prodyšných křuskách), pliváním, klením a nadáváním a přemýšlením, jestli na mě nevletí nějaký správce, protože jsem mimo neviditelnou cestu (zajímavé je, že mě jedinkrát nenapadlo se vrátit). Krok, krok, sklouznutí zpět. Na druhou stranu výhledy však byly dechberoucí, stejně tak i vítr, který občas z některé strany zadul. O pár set metrů výš ještě krátký travers a udýchaný, žíznivý jinoch stanul na relativní rovině, kde se už producírovaly skupinky jdoucí od lanovky a jezdily čtyřkolky ještě výše. V tomto bodě mě poprvé napadlo, že dojít až nahoru nestihnu, pokud tu nechci nocovat (v zákazu a na sněhu, navíc bez vybavení, takže je jasno).

Poslední travers!
Poslední travers!

Takže jsem vynechal plánované jídlo, hodil jenom do pusy hrst rozinek a buráků a zapil to banánem a whisky (pití došlo) a serpentinama pokračoval dále. Jeden bus nahoru, dva dolů – už jdu po „silnici“, tak si aspoň s děckama máváme. Rychlost větru stoupá, teplota klesá. Dostávám se k boudě u Torre del Filosofo (2920 m.n.m.) a uvědomuju si, že dál už to nejde a tudíž jsem to vlastníma silama dokázal! Drápu se teda ještě k volně přístupnému kráteru jižně od boudy, abych se nadýchal sirných par a doslova se opřel o vítr na úplném vrcholku (takovou fujavici jsem ještě nezažil!) a volně pokračoval směrem dolů rychlým stylem „Hopsa-Hejsa“.

Torre del Filosofo
Torre del Filosofo

Cesta s kopce byla namáhavější. Drobně přesitý písek v botách tvořil „šmirgl“, který mi rozbrousil některé prsty na nohách, takže došlapování bylo docela bolestivé. Rituály vysypávání písku tak byly o něco častější. Nahoru se drápající rodinky s dotazy „how far is the top“ nalévám optimizmem odpověďmi stylu „co by kamenem dohodil“, dojídám whisky a dopíjím poslední banán.

Jeden z postranních sopouchů
Jeden z postranních sopouchů

U horní stanice lanovky, jsa přesvědčen, že dolů je to už kousek, provádím potřebné chirurgícké zákroky na chodidlech, spolu se zapudrováním a přebalením (stále mluvím o chodidlech). Což jinými slovy znamená, že se konečně za celý den pořádně sedám! Ovšem jenom na pár okamžiků – jsou čtyři hodiny a autobus odjíždí o půl paté (snad – horší varianta je 16:20). Takže se dávám (teď už po „silnici“) serpentinama dolů. Za každou zatáčkou očekávám podobný pohled, jako když jde člověk s tmou v zádech z Jelení studánky na Červenohorské sedlo (to mě v těch okamžicích napadalo). Taky mě napadlo, že pokud v 16:15 neuvidím, jak blízko basecampu jsem, tak se rozeběhnu a taky tak činím.

Cesta dolů (po levici serpentiny na Belvedere)
Cesta dolů (po levici serpentiny na Belvedere)

V protisměru potkávám cyklistu (vzájemně na sebe koukáme jako na kokota) a po pár minutách běhu (pískem a šutry z prudkého kopce a s krosnou na zádech) zase zvolňuju, protože jsem se vnořil do mračna a nevidím vůbec nic. Jestli bus jede 16:20, tak jsem ho právě prošvihl, takže sázím na poslední kartu a sbírám poslední zbytky sil a klusám dál. Už jsem u odbočky, kde jsem ráno sešel, už jsem u lanovky a už přibíhám na zastávku. Rudej, udýchanej, spocenej, spokojenej. Kašlu, nadávám, lidi na mě koukají jako na zjevení a autobus přijíždí. Nastupují Indové, bezdomovskej dědula (ve fungl nové goráčové bundě s utrženým rukávem), já a ještě pár dalších takyturistů. V přetopeným autobuse pomalu popadám dech a začínám se samolibě usmívat. Večer si zasloužím gyros!!

Nashle příště, Etno jedna!
Nashle příště, Etno jedna!

Proč jsem šťastný

Dneska, když vidím venku to sluníčko a čerstvej sníh, tak se radost z toho, že „freelanceřím“ jenom násobí. Když jsem sekl s prací, lidé se rozdělili do několika skupin – někteří byli naštvaní (ex-spolupracovníci), někteří mi fandili a gratulovali k odvaze (přátelé), někteří mi říkali, že jsem udělal chybu (pra-rodina) atd. Já sám si říkám, … Pokračovat ve čtení „Proč jsem šťastný“

Dneska, když vidím venku to sluníčko a čerstvej sníh, tak se radost z toho, že „freelanceřím“ jenom násobí. Když jsem sekl s prací, lidé se rozdělili do několika skupin – někteří byli naštvaní (ex-spolupracovníci), někteří mi fandili a gratulovali k odvaze (přátelé), někteří mi říkali, že jsem udělal chybu (pra-rodina) atd.

Psí závod, ne krysí!!
Psí závod, ne krysí!!

Já sám si říkám, že jsem udělal velmi dobře. Ne tak proto, že mám rád jakousi nejistotu (možná proto, že jsem se na ní stal závislým – z pohledu cestovatele, který se někdy nad ránem vzbudil vyhozen z vlaku někde neznámo kde, nebo si spletl přístaviště…), ale že dnešní zubaté sluníčko mi poodkrylo stav, jak se skutečně má: když jsem chodil poctivě do práce, ráno jsem vstával a hodinu trpěl ve vlaku, prohlížel RSS čtečku a babral se v mejlech. V práci jsem si odkroutil nějakých těch 8, 9, 10… hodin (dle potřeby) a chvátal na vlak, kde jsem pročítal články za ten den nashromážděné v ReadItLater, případně studoval dokumentaci, v tom lepším případě přelouskl nějakou kapitolku v knížce. Doma jsem potom zhltnul večeři (u počítače) a věnoval se věcem, které jsem za den nestihl v práci, nebo soukromým projektům (když bůh dal). Den za dnem, týden za týdnem a rok za rokem stereotypně mizel život.

Dneska ráno vstanu, v klidu posnídám, vyženu ven psa (a posledních pár týdnů vpustím do baráku zedníky) a nějaké dvě hodinky se věnuju práci. Potom si navařím oběd a poobědvám. Na chvíli jdu se psem ven, dokud je pěkně, a pak se dle potřeby opět pouštím do práce. Navečer můžu obejít rodinu a známé a večer jdu klidně na pivko, nebo se podívám na film. Čas běží o hodně pomaleji, vytěsnil jsem spoustu zbytečných věcí (pravidelné procházení Twitteru a RSS čtečky), za těch pár měsíců, co jsem z krysího závodu venku, jsem viděl spoustu lidí, které jsem předtím neviděl několik let a všeobecně z toho mám mnohem lepší pocit.

Pravda, příjem není pravidelný ani vysoký (pokud vůbec je), ale protože jsem – ne odvážný, jak jsem zmiňoval na začátku – ale chytrý, tak vycházím. Proč chytrý? Nemám závazky! Žádné splátky půjček, žádné přemrštěné částky za telefon ani závislost na nakupování. Možná je to spíše o štěstí. Proto doufám, že se mě bude držet i nadále. A komukoliv dalšímu přeju to stejné, stojí to za to, jsem prostě šťastný!! 🙂