codecast

Ako som nenatočil codecast

Dlho som rozmýšľal, prečo nie je “codecasting” bežná vec. Tak som si to skúsil. A veľmi rýchlo som na to prišiel.

Čo je to vlastne ten “codecast”? Je to podobné, ako také tie “let’s play” videá, ktoré sú teraz veľmi populárne. Akurát v nich autor nehrá počítačové hry, ale kóduje. Diváci vidia autorovu obrazovku a počujú jeho komentáre. V prípade počítačových hier je to často zábavné alebo poučné.


Neskutočne vtipné hlášky tohto hráča Dark Souls pobavia aj tých, ktorí hru vôbec nepoznajú


Táto séria Petra Klimoviča o Minecrafte ma naučila viac, než všetky ostatné príručky a inštruktážne videá dohromady

Logicky by niečo také malo byť populárne aj u vývojárov. Sledovať niekoho šikovného, ako píše kód a pritom to komentuje, objasňuje svoje myšlienkové pochody, ukazuje rôzne finty… to by predsa bola fantastická možnosť niečo sa naučiť. Však? Žiaľ, v praxi to nefunguje.

Snažil som sa vygoogliť nejaké zaujímavé príklady codecastingu. Veľa som toho nenašiel. Na Twitch TV je kategória určená pre programátorov. Obvykle to vyzerá takto: Nejaký chalan má pustenú techno hudbu, píše kód a občas do toho nadáva. Väčšinou som nemal ani šajnu, čo sa pokúša nakódovať. Sledovať to bola nuda prekladaná frustráciou.

Povedal som si, že to skúsim na vlastnej koži. Než som začal písať Element Collector, zapol som nahrávanie. Snažil som sa uvažovať nahlas, vysvetľovať, čo robím, celé to nejako zmysluplne komentovať. Asi v polovici som nahrávanie vypol a zvyšok skriptu som dorobil v tichosti. Nefungovalo to. Prečo?

Problém je v tom, že pri písaní kódu sa potrebujete sústrediť. V hlave držíte spústu vecí naraz. Ak sa pri tom nútite hovoriť nahlas, spomaľujete. Keď sa sústredíte na vysvetľovanie jednej veci, občas vám uniknú súvislosti s inými vecami. Kódovanie je proste príliš komplexná a mentálne náročná činnosť na to, aby ste popri tom mohli chatovať s fiktívnym publikom. Keď som sa pozeral na záznam, tak sa tam striedali dve pasáže. Buď som niečo zrozumiteľne popisoval a vysvetľoval, ale na obrazovke sa nič nedialo. Alebo som ťukal kód, ale popri tom som len nezrozumiteľne mumlal.

Takže teraz už chápem, prečo codecasting nie je hit. Ale nevzdávam to. Keď nabudúce budem chcieť napísať nejaký menší skript, skúsim to inak. Najprv nahrám od začiatku do konca, ako na ňom pracujem. Vôbec sa nebudem snažiť čokoľvek komentovať. Budem sa plne sústrediť na prácu. Až keď bude hotovo, nahrám k záznamu komentár v reálnom čase. To by mohlo fungovať. Výsledkom by malo byť to dobré z obidvoch svetov. Ukážka toho, ako v praxi postupujem a zároveň vhľad do toho, čo sa mi pri tom ženie hlavou, čo riešim, ako a prečo.

Čo si o tom myslíte? Bolo by to pre vás zaujímavé? Skúšali ste niekedy urobiť vlastný codecast? Ako to dopadlo?

  • martinhruska

    Určitě to jde. Například geniální http://railscasts.com/ byly jednu dobu nejlepším zdrojem informací k Rails. Například třeba http://railscasts.com/episodes/253-carrierwave-file-uploads . Jistě na tom vydělal i nějaké peníze – část epizod je zdarma, pokročilé za peníze.

    Podle mě to ale nejde dělat tak, že natáčím aktuální programování. Musí se to točit s určitým cílem, mít připravený scénář a vyzkoušený kód. Není to asi sranda. Autor Railscasts vyhořel v roce 2013 a od té doby nic.

    Těším se na tvé výsledky!

  • Jozef Chocholáček

    Ukázať samotné programovanie asi nebude taký problém – ale ani tak prínosné. Ideálne by bolo to video potom zeditovať, a vložiť doň rôzne vysvetľujúce slajdy, podvideá, atď. No, práce ako na kostole.

  • To je možná důvod proč online programming kurzy na PluralSight jsou tak drahé (i když drahota je pojem relativní), cca 500Kč/měsíc, jestli si dobře pamatutuju cenu.

    Jsou dělané podobně jako codecast, ale s tím, že autor už má kód připravený a jen ho ukazuje a vysvětluje. Případně píše jen krátké kousky kódu.

  • Martin Cohen

    Schvalne skus urobit par prvych live videi, kde budes sat. Slub si ze to tam nechas 1 mesiac a normalne to pushnes do sieti (kludne i s poznamkou ze sa to ucis), ale pushni. To ta stresne, ale naucis sa to ovladat.

  • Nešlo o to, že by som sa hanbil to zverejniť. Problém bol, že to neplnilo ten účel, ktorý som chcel dosiahnuť. Poučil som sa, nabudúce to skúsim inak a kľudne to zverejním, aj keď to nebude dokonalé.

  • Vladimír Bělohradský

    Co zkusit live broadcast? Jen musíš dát bacha aby si uklidil z plochy porno a neměl v kodu super tajná hesla k serverům FBI. :)

  • Vláďo, to je práve to, čo podľa mňa nefunguje. Sledovať live broadcasty na Twitch.tv ma nebavilo. A keď som sa pokúsil nahrať kecanie aj kódovanie v reálnom čase, nedopadlo to dobre. Live broadcast sa proste na to, čo chcem dosiahnuť, vôbec nehodí.

  • matuš belis

    Zaujímaví pohlad na learning kódenia robiť ho ako lets play. Je naozaj skutočnostou že je to dosť náročne vytvárať akýkoľvek komentovaní obsah (aj lets playje) ale dúfam že Riki F. z toho urobí parádny produkt.

  • Ja zkousel jeden codecast (silent version) https://www.youtube.com/watch?v=WnVl2xs294A&list=UUGsQEpDxTop_jd8FxlIy1ZQ a musim rici, ze po mesici by to ten zvuk chtelo   ale ten tam muzu dodat, (a asi i dodam) pozdeji.(a snad ani nebudu muset vytvaret nove YT video, v tomhle je vimeo o neco lepsi, ze ti umoznuje aktualizovat soucasne video novou verzi) Tohle jsem tocil na 3x a finalni verzi jsem jeste stejne musel “sestrihnout”. Moc me to bavilo, a doufam ze se dostanu k dalsim, ale faktem je, ze je to silene moc prace. A to to ma 4min,coz je imho idelani delka (do 10min max). Spise vicero kratsich na sebe navazujicich, nezli jedno dlouhe.

  • Nedávno jsme si vzpoměl na tento tvůj příspěvek. Napadlo mě totiž, jak by to šlo udělat, aby to bylo zajímavé pro všechny. A tou odpovědí je:

    Pair-programming

    Všiml jsem si toho, když jsem dělal pair-programming pohovor. Přes Skype jsme si telefonovali a pomocí Floobits (https://floobits.com/) jsme na projektu oba pracovali v reálném čase. Uvědomil jsem si totiž, že záznam by mohl být velmi zajímavý. Splňuje to všechny tvé požadavky a zároveň se ti nestane, že tam něco začneš psát bez vysvětlování, protože se tě na to ten druhý zeptá.

    Myslíš, že by to tak mohlo fungovat? Nebo vidíš nějaký jiný problém?