Jak vznikala mobilní aplikace pro Android

Asi jako každý mám občas problém reflektovat všechny úžasný věci, který se během dne stanou. Některý jsou menší a některý větší. Mobilní aplikace pro prectime.cz je rozhodně při pohledu do mýho zpětnýho zrcátka tou větší věcí, která vyžaduje tisíce hodin práce než vidíš nějaký výsledek, získáš zpětnou vazbu. Prectime.cz totiž nevyrábíme jako masovku, nenajímáme tým o dvaceti lidech, ale je pro nás důležitý na projektu růst a bavit se samotným procesem tvorby. Zatímco se u nás ty učíš (nejenom) cizí jazy, my se učíme trochu jiný cizí jazyky, většinou ty programovací. Nebo nastavujeme po různu servery v cloudu, což není vždy úplná hitparáda, abych pravdu řekl.

Google Play
První verze aplikace v Google Play pro Android

Jak člověk začne programovat webovou aplikaci

Když jsem se před 4 lety naučil základně skriptovat v Pythonu a vytvořil poté první jazykový datový analýzy, nenapadlo mě, kam cesta povede dál. V jednom ze zpackaných projektů asi před 5 lety, který jsem zadal vytvořit kamsi na východ, protože jsem díky tehdejším panickým záchvatům programovat fakt nemohl, jsem pomocí (ať to zní honosně), reverzního inženýrství, kdy se učíš zpětně z hotového díla, omrkl kód "své" první zamýšlené (failnuté) webové aplikace. Moje poznatky se daly laicky shrnout asi jako ... aha, když na něco kliknu, spustí se kus kódu a ten něco udělá na serveru (uloží data do databáze, pošle email, něco spočítá) a ideálně dá klientovi (prohlížeči) nějakou zpětnou vazbu o tom co se stalo. Tenhle základní princip stačil. Tři roky zpět tak díky tomu vznikla první verze prectime.cz psaná (pro tech geeky) v čistém PHP a běžící na sdíleném hostingu. Během 3 let, kdy jsem si naprogramoval snad celou knihovnu funkcí připomínající framework mi došlo, že v tom je slušný bordel, který bude brzdit další vývoj. A tak jsem v září 2017 začal dumat co s tím. Jako první krok došlo k převedení serveru na Amazon (AWS). Opět můžu od srdce říct, že jsem z toho měl pěknej vítr a i teď ve mě příkazový řádek konzole v Linuxu vyvolává ne vždy hezké chvilky :-).

Google Play
Server prectime.cz očima vývojáře vypadá jinak než jak ho vidíš ty.

Díky interaktivním cvičením a dalším službám jsou z toho nyní servery 3, konkrétně webserver, databáze a memcached na výpočty v paměti. K tomu, aby vznikla mobilní aplikace, bylo nutné přelouskat dokumentaci nějakého frameworku a celé prectime přepsat. Na začátku prosince jsem vše začal psát v Angularu a koncem prosince zjistil, že z toho mám příliš velký strach a veškerou měsíční práci stiskem klávesy delete smazal. V lednu volba padla na Laravel, tedy PHP framework, který je pro účely prectime.cz z mého úhlu pohledu parádní. Trvalo 4 měsíce, než jsme nové prectime zveřejnili. Mezitím už ale probíhala příprava na vývoj mobilní apky. Jo, vlastně příprava vesměs v hlavě, to jsem trochu opomněl říct, ale když si věříš, víš, že to dopadne. Asi nejobtížnější je přepínat mezi jazyky - něco jako když u jednoho stolu najednou mluvíš se třemi lidmi anglicky, neměcky a španělsky (dělal jsem dřív často v práci). U programování to u mě funguje podobně, jazykům se říká jen jinak, Python, PHP, Typescript, Javascript, Bash a mají různou formu zápisu jQuery, Laravel, Ionic, Angular. Člověk tedy umí programovat, je ale nutné neustále přemýšlet, jak kód na různých místech zapsat, nebo luštit dokumentaci a nezbláznit se u toho :-).

Upřímně řečeno jsem neměl páru jak se mobilní apka dělá. Pár lidí zmiňovalo, že je fajn používat Ionic, stavící na Angularu a Javascriptu/Typescriptu obecně mimo jiné i kvůli možnému zveřejnění aplikace jak na Android tak na iOS bez nutnosti používat další programovací jazyk (už jich mám v hlavě i tak dost). Během asi měsíce jsem prošel velmi intenzivně megakurzem na Udemy jak na Angular tak na Ionic a začal apku psát. Musím říct, že to bylo ohromné sousto. Suma sumárum to bylo dalších 5 měsíců super zkušeností zakončené včerejším nahráním první verze do Google Play.

Udemy
Školu nepotřebuješ, dnes se naučíš cokoliv z pohodlí domova.

To byla i nejtěžší část, kterou jsem dost odkládal. Vždy když něco vyvíjím delší dobu a zároveň se něco učím, je tam vždy pravděpodobnost, že něco nebude fungovat dle představ. Navíc v dnešní době milionu různých zařízení a verzí operačních systémů v nich. A čím víc se to snažím minimalizovat, tím víc pochyb mám. Je to ale dobře, protože by jinak člověk ve směru, který si zvolil nerostl. Je tedy možný, že v apce narazíš na nějaký problém nebo se ti něco nebude líbit. V tom případě nám určitě napiš na podpora@prectime.cz, protože tvůj názor fakt potřebujeme a na základě všech budeme systém neustále dolaďovat. Aplikace by měla běžet na všech neprehistorických verzích Androidu (5+). Verzi pro iOS budeme uvolňovat hned, jak zjistíme, že u Androidu vše základní funguje správně.

Mobilní aplikace
Takto vypadá mobilní aplikace ve své první podobě.

Co bude dál?

A teď jen pár slov k tomu co bude dál. Strašně se teším na aktualizaci slovníků, alternativních překladů. S tím bude i souviset širší namluvení slovníků umělou inteligencí. V 11/2018 máme namluveno cca 30 000 top slovíček u každého přízvuku a tohle číslo buď vzroste nebo začneme namlouvat úplně vše v reálném čase (uvidíme). Vzhledem k tomu, jak rychle se posouvá umělá inteligence, troufám si tvrdit, že za pár měsíců budeme namlouvat 30 000 audio knih v reálném čase ve 20 anglických přízvucích ... ale uvidíme.

Už cca rok nám necháváte hlášení o alternativních překladech v interaktivních cvikách. Čeština je pěkná potvora a některé věty jdou říct mnoha mnoha způsoby (čím složitější věta, tím větší šance). Koncem měsíce uděláme nad rámec vašich hlášení další velký update. Jinak řečeno, zkusíme doladit cvičení k dokonalosti, abyste nebyli frustrování, když systém odpověď neuzná :-). Tolik z psacího koutku, odkaz na apku je níže. Pokud byste v ní hledali platby, tak marně, pro prodloužení předplatného budete odkázání do webové. Za tuhle formalitu může 30% (ano, není to překlep) poplatek za platbu u Googlu :-)

Díky, Honza - prectime.cz


Autor: Jan Hovad, minimalista, essencialista, metalearner, biohacker, stoic & tech guy

Vystudoval doktorát v IT, pracoval na projektech v USA/Číně, postavil vlastní hvězdárnu, zkolaboval. Začal se věnovat efektivnímu a rychlému učení. Provozuje individuální koučink na metalearning.cz. Založil DATABENDERS s. r. o., Werifi Inc. a vytvořil projekty jako prectime.cz, bettermind.cz,metalearners.cz či youtube kanál metalearning.cz. Najdete mě i na Instagramu

autor