Martin Sadový: Od Visual Basic k Androidu

Martine, oproti ostatním máš trochu výhodu v nevýhodě, protože tenhle rozhovor jsme začali v hospodě a já si udělala poznámku: Programoval od mala ve Visual Basic, pomocí kterého ovládal mechaniku. Myslíš, že se od toho můžeme odrazit?

Srandovní se na to podívat takhle do minulosti. Můj otec pracoval a stále pracuje v metrologii, kde jedna z jeho činností je měření tlaku na manometrech. Pořídil si na výpočty domů staré IBM, které v tu dobu bylo moderní zařízení, ale dneska už je to mašina patřící do muzea. Měli jsme na něm Windows s předinstalovaným MS Visual Basic a já jsem díky tomu mohl přičichnout k programování.

Už v tu dobu mě hodně zajímala tvorba programů, jak vůbec funguje operační systém, co všechno nabízí a podobně. Na internetu (měli jsme v tu dobu dial-up – vytáčené připojení) jsem si začal hledat tutoriály. 

Našel jsem třeba konkrétní příkazy, kterými můžu otevřít a zavřít CD mechaniku. Sestavil jsem pomocí nich program, ve kterém jsem měl přepínací tlačítko. Mohl jsem tedy mechaniku ovládat pouze myší, což bylo něco fascinujícího. V tu dobu jste totiž museli na mechanice zmáčknout fyzické tlačítko, aby se mechanika otevřela. Teď se bavíme o roku 2000, to mi bylo 7 let.

V Notion Team profilu máš napsáno: „Android vývoj, občas něco na DevOpsu a backendu, jinak zásobuju lidi cukrem.“

Začínal jsem na Visual Basic, později jsem přešel na na tu dobu modernější věci, jako je HTML. Bavilo mě, že jsem rovnou viděl stránky, které tvořím. Stačilo zmáčknout F5. 

Už v té době existovalo majoritní PHP a i já jsem si zkusil naprogramovat (jako každý PHPkář před 10 lety) vlastní framework, protože kdo neměl vlastní framework, ten neexistoval. To mě posunulo v chápání návrhových vzorů. 

Vždycky mě taky bavil hardware a zjišťovat do hloubky, jak fungují věci na pozadí. Proto mě víc přitahoval Android. Má blízko k HW, je to open source, kde si člověk může jednoduše napsat UI a nemusí se štvát s HTML nebo CSS (nemusí řešit tu černou magii, kdy IE8 funguje a IE9 už ne). Android je pro mě lovebrand.

Následující otázka tě moc nepřekvapí. Jak ses dostal do Cookielabu?

S Kubou, Tomášem, Patrikem se známe dlouhá léta. Kubu a Patrika znám z Posledních sobot a nette komunity, Toma ze Shipita a Martina, Michala a Radka z Goodbaby. Cookielab se vlastně začal nabalovat jako sněhová koule. Pár lidí v Goodbaby se postupně nabalilo na tuhle pomyslnou „kuličku“, až vznikl Cookielab.

Na jakých projektech se v rámci Cookielabu aktuálně podílíš?

V rámci Android vývoje řešíme aktuálně dva projekty. SensorSafe je chytrá autosedačka, která je napojená na aplikaci v telefonu. Uživatele upozorní, když nechá dítě v autě a vzdálí se. Umí taky měřit teplotu okolí a pokud je vysoká, pošle uživateli notifikaci, že je dítě v ohrožení. V jižní Evropě a Americe je dokonce legislativa vyžadující podobná opatření. Pozn.: Appku řešíme i v rámci iOS a víc se o ní rozpovídal Martin Blišťan.

Druhým projektem, zaměřeným nejen na cestovatele a coffee lovery (that’s me) je European Coffee Trip. Aplikace obsahuje bázi kaváren s výběrovou kávou, kde si člověk vychutná špičkovou kávu (italské a přepražené turky v nabídce nehledejte). 

Můžeš nám prosím víc přiblížit European Coffee Trip (ECT)?

Původně to byla pouze webová stránka, která nebyla moc optimalizovaná na prohlížení v mobilu. Když člověk cestuje, nechce vytahovat laptop z batohu a hledat na něm uprostřed rušné ulice zajímavou kavárnu. Nebo otevírat těžkopádný, dlouho se načítající web v mobilu. Mobilní aplikace tak byla od začátku v plánu.

Když se zakladatelé ECT rozhodli appku začít vyvíjet, přišel covid a nikdo nikam nemohl. Vývoj se tak odložil, ale nakonec se v roce 2021 podařilo appku spustit pro iOS a krátce poté pro Android. 

Princip appky je jednoduchý. V momentě, kdy člověk dorazí do města, řekněme Liverpool a chce se podívat na okolní kavárny, otevře v mobilu aplikaci ECT. Může pak vybírat podle preferencí, například si může vyfiltrovat kavárny, kde vítají digitální nomády a mají zázemí pro práci na laptopu. 

Stáhněte si průvodce těmi nejlepšími kavárnami v Česku i celém širém světě i vy: 

Pro iOS klikejte zde a pro Android tady.

Aplikace se nejdříve vyvíjela pro uživatele iOS, ale její vývoj trval poměrně dlouho a byl náročný i finančně, jak vypadal vývoj pro Android? 

Při tvorbě Android verze jsme už měli jasný základ a představu o jednotlivých funkcích a prvcích. Zbývalo jen vybrat technologii, kterou bychom mohli použít. 

Mohli jsme využít starý způsob – klasické XML šablony, adaptéry, fragmenty a podobně. Nebo jsme mohli jít moderní cestou, kterou Google v současnosti hodně tlačí dopředu. Vybrali jsme druhou možnost: JetPack Compose

Compose je technologie, která zjednodušuje vývoj UI pro Android. Je plně deklarativní, takže uživatelské rozhraní se popisuje voláním funkcí. Je to podobné jako práce v Reactu.  

I přes seznamování se s novou technologií se nám podařilo aplikaci dokončit za polovinu času, než byl původní odhad! Mimochodem prvotní funkční prototyp jsem vytvořil noc před odletem a v letadle na cestě do Liverpoolu. 

Co se nám trochu nepovedlo, byl management Google Play, kde schválení jakékoliv změny (byť jen obrázku) trvalo neúměrně dlouho, v našem případě přes týden.

Jak hodnotí aplikaci sami uživatelé?

ECT aplikace má v Google Play i v App Store hezká hodnocení a vysoký počet stažení. Ale důležitá jsou i data z Firebase Crashlytics, díky kterým víme, že aplikace neměla žádný crash od svého spuštění. To jsou pro nás jasné signály, že nová technologie je kvalitní a spolehlivá.

Teď k tomu zásobování lidí cukrem…

Já jsem věděl, že tahle otázka přijde. No comment! 😀

Docela jsme se k tomu rozepsali v předchozím blog postu. Vlastně jsme v rámci Cookielab hackathonu udělali addon k aplikaci Settle Up, říkáme jí lednička. Prostě si vybereš člena týmu, kterému chceš udělat radost, nascanuješ kód a aplikace všechno sama propíše do Settle Up. 

Máte Rule of Two jako ve Star Wars i v Android týmu?

Je to tak, prostě musíme být ve dvou a jinak přijde souboj. Né, teď vážně. Zatím jsme dva, ale určitě si nehrajeme na nějaké škatulky jako master a apprentice. V týmu je pro nás důležitá odpovědnost za vlastní práci bez ohledu na senioritu. Důležité je mít i přehled, umět řešit UX/UI, mít i vhled do byznys procesů…

Vzájemně se podporujeme, ale i hlídáme, a úplně nejlepší je, když někdo přijde s novým, efektivnějším řešením. Určitě nefungujeme v tom přežitém módu „takhle jsme to dělali vždycky, tak to děláme i dnes“, právě naopak!

Pro mě je to i taková mantra, z knížky Radikální otevřenost: „Najímáme lidi, aby nám řekli, co máme dělat.“ TL;DR Nehledáme obyčejnou pracovní sílu, ale lidi, kteří nám ukáží, co děláme špatně, a dokážou nás posunout i vnitřně.

Tvůj vzkaz dalším generacím?

Generace XYZ, moc nepracujte, protože všichni jsme workoholici! Je to výhoda v nevýhodě, jsme zapálení do práce a baví nás to. Problém je, že pak ne vždy stíháme i další události v našich životech.

Máme rodiny a přátele. Někdy je to prostě těžké skloubit náš osobní život s firemními deskovkami, wlan parties nebo teambuildingy na střelnici. Čas je omezený a my si moc vážíme, když se naskytne příležitost a my ho s kolegy můžeme trávit společně. Fakt.

Martin Sadový: Od Visual Basic k Androidu
Michaela Ročková
Marketing 🍪
By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.