SoloLearn? Nebo raději ne?

11. 11. 2016

Před časem jsem narazil na aplikaci SoloLearn. Jsem webdeveloper, dělám v PHP. Myslím si, že celkem dobře. Chtěl jsem se ale naučit základy Pythonu. Knihy a kód považuji za nejlepší volbu. Ale narazil jsem na aplikaci do telefonu co mi přišla celkem zajímavá. Takový trošku jiný přístup. Bude to vůbec fungovat? Jak moc do hloubky mě to co naučí? Co to nabízí vedle učení navíc? Poskytuje to alespoň kvalitní základ? Jaká je cílová skupina těchto aplikací? Jsem zvědavý, zkusím to.


Jdu to zkusit

Kurz, kterým jsem SoloLearn okusil, byl Python. Jazyk pro mě neznámý. Něco, co jsem viděl, ale nikde aktivně nepoužíval. Neznám jej. Potřebuji tedy úplné základy. Nevím, co od aplikace čekat. Jestli je pro lidi co programují a jen se chtějí učit jiný jazyk (já) nebo pro výuku programování úrovně střední školy. Nebo to snad může naučit i něco víc než jen Hello World?

Appku nainstaluji (případně to funguje i v browseru) a po spuštění se můžu rovnou začít učit. Na obrazovce je několik různých témat co mě provedou celým kurzem. Nemůžu de facto nic jiného než se začít učit Basic Concepts. Jdu na to. Každé téma se dále dělí na dílčí části. První část What is Python!.

Vidím první informační slajd. Několika srozumitelnými větami dostanu vysvětleno, že je to vlastně high-level programming language, very popular ... and used by organizations such as Google, NASA, the CIA, and the Disney. Pod tím je pak ještě žlutý rámeček který doplňuje důležitou infomaci nebo něco upřesňuje. V tomhle případě Python is processed at runtime by the interpreter. There is no need.... Na interpreter je možné najet a dostanu hint. To mi přijde sympatické, pravděpodobně nebudu muset žádný termín dohledávat jinde. Když mu třeba nerozumím.

Vedle informací mám k dispozici Q&A Forum obecně k danému kurzu. Pod otázkou pak ještě komentáře jiných uživatelů přímo k danému slajdu. Vstřebal jsem informace a jdu dále. Continue.

Následuje otázka. Tady se mě ptají Python is a a na výběr mám několik odpovědí. Jen jedna je správná. Když odpovím špatně, vrátím se zpět na informační slajd. Když odpovím správně, dostanu se na další informační slajd.

Tímhle jednoduchým způsobem (informace - ověření) se pak postupně projde celý kurz. Informace jsou psané jednoduchou angličtinou následované ověřovacími otázkami. Často jsou možnosti na výběr (a, b, c). Někdy může být více správných odpovědí, na to jste upozornění. Někdy je potřeba psát. Někdy poskládat chybějící puzzle do ukázkového kódu (aby dával smysl nebo produkoval požadovaný výsledek).

Naučil jsem se něco?

Kurz jsem procházel možná 2, 3 týdny. Vždy chvíli, když byl čas. Jsou to opravdu naprosté základy. Vůbec nic víc od toho nečekejte. Je to ale řešeno pěknou formou. Dobré při vyplnění času při čekání na něco. Máte to vždy s sebou (mobil). Lepší, než čumět do zdi nebo sedadlo před sebou, ne?

Pro základní přehled o jiných jazycích by mi to mohlo postačovat. Člověk by se měl naučit jeden programovací jazyk každý rok. Tohle mi přijde jako skvělá příležitost, jak velmi snadno a rychle proniknout přes základy. Další rozvoj je pak už na mě. Jestli s tím jazykem chci více pracovat, budu ho muset používat. Aby mi přišel pod kůži. A tam je pak tenhle mini kurz opravdu málo a chce to pořádnou literaturu a další zdroje (+ přemýšlet, psát, číst).

Jestli už nějaký jazyk ovládám, tenhle kurz mi umožní číst jazyk který jsem neznal. Kolečka do sebe rychle zapadnou.

U Pythonu zmínili i The Zen of Python. Co je to PEP. Že existuje něco jako PyPI.

Nakonec - jestli takhle budou vypadat i další kurzy, pěkný. Něco mi to dalo.

Ideální cílovka

Naprostý začátečník co nemá o tématu ani páru. Pokud nevím ani co je proměnná, podmínka, cyklus, funkce, ... Ideální!

Na druhou stranu i když již ovládám jiný jazyk, může to přijít vhod (můj případ). Když chci snadno proniknout do nového. Před knihou jako taková pěkná předehra. Dobrý!

U Pythonu mě kurz příjemně překvapil, čekal jsem, že se z něj naučím daleko méně. Pěkný základ. A můžu jít na knížku :-)

Když už téma ovládám

Má ten kurz vůbec význam když už dané téma ovládám? Naučím se něco nového?

Zkusil jsem si projít PHP, JavaScript a SQL. Dokončil jsem tyhle 3 kurzy celé. Nečekal jsem, že se dozvím něco nového. Nedozvěděl. Mohl jsem se ale zaměřit na tu aplikaci a případné její chyby, nedostatky.

Zásadní nedostatky (rozepíši jen k PHP)

  • Composer? Nedovedu si bez toho představit ani jednoduchý projekt.
  • Zmínka o code style? Alespoň ať to jeden člověk píše vždy stejně.
  • Nemíchejte PHP a HTML (mám špagety rád, ale jen na talíři).
  • PHP umí taky objekty. Namespaces. Traity. Generátory. Výjimky. Etc.
  • PHP CLI. ´echo 1 + 2´ je zbytečné prohánět přes webserver.

Určitě by se toho našlo více. Co mi z toho vychází když se kouknu na kurz kterému rozumím?

SoloLearn = nejzákladnější základy co si dokážete představit.

Nevím čím to, ale Python mi přišel nějak lepší než ty ostatní kurzy.

Vážně je to jen tím, že Python jsem se učil jako nový jazyk? Nemyslím si, že tak úplně.

  • U Pythonu řeší PyPI, u PHP na Composer z vysoka kašlou.
  • U Pythonu řeší OOP, u PHP z vysoka kašlou.
  • U Pythonu řeší výjimky, u PHP z vysoka kašlou.

Takže vážně, jednotlivé kurzy jsou trošku nevyvážené - jinak objemné.

Možná se u PHP, JavaScriptu a SQL zaměřují na větší začátečníky než u Pythonu. Nevím. Toto mě zklamalo.

Konečný verdikt

Určitě to má svoje místo.

Ať už nikdo neříká, že se nedokáže naučit základ. Třeba kodér se takhle může opravdu snadno naučit základy PHP a JavaScriptu. Nebude umět psát složitější aplikace. Ale bude schopen základních věcí. Bude schopen číst. Překoná vstupní bariéru do něčeho nového.

A to všechno:

  • zadarmo (mobil máte)
  • snadno (mentálně jednoduchá forma i hloubka)
  • rychle (kdyby v kuse, tak za víkend)
  • bez časové investice (vytáhnu mobil když na něco čekám)
  • máte k dispozici Q&A, komentáře

Neodsuzoval bych to. Pokrývá to zkrátka úplné základy. Osobně si projdu další kurzy co nabízejí. A vím, že se extrémně snadno naučím základy dalších jazyků.

Jestli pak s něčím zamýšlím něco víc, kurz poskytnul základy a musím sáhnout po dalších zdrojích - třeba pořádnou literaturu. A těm jazykům se věnovat. Jinak je aktivně ovládat nebudu.

Have you enjoyed this article?

Tweet