Slide 1

Slide 1 text

Jak vzniká junior.guru Otevřený „startup“ v jednom člověku

Slide 2

Slide 2 text

Kdo je Honza Javorek • Karviná, Brno, Praha • FIT VUT, FI MUNI • na volné noze 5 let, Mergado 2 roky, na volné noze 2 roky, Apiary 3 roky, Oracle 2,5 roku, junior.guru 2 roky • Python komunita 10 let

Slide 3

Slide 3 text

Co je junior.guru • Web pro všechny, kteří se chtějí učit programovat a případně si pak hledat práci v oboru • Příručka (rozcestník, rady) • Klub • Pracovní nabídky • Moje podnikání na plný úvazek

Slide 4

Slide 4 text

Jak to vzniklo • Python komunita, PyLadies, práce se začátečníky • Táborákové nápady: Job board? Vyrobíme za víkend přes Google Forms... • Příležitost uživit se komunitní prací? Jen vydělat na provoz webíku? • Mnoho měsíců uvažování, sbírání nápadů a názorů • Odchod z Oracle • Kdybych neodešel před covidem, asi by to nikdy nevzniklo?

Slide 5

Slide 5 text

Vzory • „Lean startup“ - en.wikipedia.org/wiki/Lean_startup • Pieter Levels (nomadlist, remoteok), Maciej Cegłowski (pinboard) • Indie Hackers, Open Startup List • MAKE: The Indie Maker Handbook (Levels), Getting Real (Basecamp) • Reconsider (DHH) - m.signalvnoise.com/reconsider/ • Apiary, LoukyKvět :)

Slide 6

Slide 6 text

Vzory? • EU je speci fi cký trh (GDPR, DPH byrokracie, různé jazyky) • ČR je speci fi cký trh (Stripe tu donedávna nebyl, spousta služeb není lokalizovaná, CZK místo EUR nebo USD) • Chybí návody jak něco danit, co a jak řešit :( • Málem jsem byl mezi prvními zákazníky Stripe v Česku • GitHub Sponsors jsem zkoušel mezi prvními • Nedivil bych se, kdybych byl první zákazník Memberful v Česku

Slide 7

Slide 7 text

Já jsem vzor na OpenAltu dělat nechtěl! Ale co mi zbylo. Třeba takhle aspoň někoho inspiruju.

Slide 8

Slide 8 text

One man show • Po letech práce v týmu jsem chtěl být zase chvíli sám • Využít všechno co umím, vč. např. marketingu, ne pouze programovat • Mít plnou kontrolu nad směrem podnikání, nad cílem fi rmy • „Když budu řešit nějaké problémy, aspoň to budou moje problémy” • Mít plnou kontrolu nad svým dnem a počtem meetingů • Soustředit se při práci, lidi si nadělit na oběd a na kafe

Slide 9

Slide 9 text

Udržitelnost • Vyskočit z kolotoče investic a akvizicí, kde jde nakonec vždy jen o peníze • Mít svůj internetový corner shop, kde se za pultem usmívám na reálné lidi • „Dělat svět lepší“ • Mít tak akorát peněz, aby to uživilo moji jednu rodinu • Makat tak akorát, aby mi to dělalo radost, mít fl exibilitu v životě • Mít možnost pracovat odkudkoliv a kdykoliv, dokud dítě nechodí do institucí

Slide 10

Slide 10 text

TL;DR Není to startup, spíš opak startupu

Slide 11

Slide 11 text

Služba jako produkt • Nechci a nemůžu prodávat čas - produkt funguje i když onemocním. Produkt škáluje. • V jednom člověku nemůžu nosit pager - technická omezení, žádný runtime • Pasivní příjem je blbost, automatizace je však mocná čarodějka • Nemám rád reklamy a paywally - nebudu je provozovat • Na kusový prodej (např. kniha) je v Česku malý trh, druhý den to bude na Uložto, neumím a nechci to tvořit jak na běžícím páse (Zibura) • Nedělám kompromisy - když to nevyjde, klidně půjdu někam programovat

Slide 12

Slide 12 text

Kapitál • 'Follow your passion' is wrong:
 Cal Newport speaks at World Domination Summit 2012 • Úspory z Apiary a korporátu • 10 let zkušeností: komunita, marketing, frontend, backend, komunikace, produktový vývoj, podnikání na volné noze… • Sociální kapitál

Slide 13

Slide 13 text

Investorka • S manželkou jsme v tom spolu, zásadní rozhodnutí konzultujeme • V prvním roce JG můj čistý příjem vydělal na nájem • V druhém roce JG můj čistý příjem vydělal na nájem :)))) • Každých několik měsíců počítáme rodinné fi nance a vymýšlíme co dál • Dítě (3 měs) si teď užíváme společně, fl exibilita a rodina > peníze

Slide 14

Slide 14 text

Byznys model • Udělám stránku s nabídkami práce čistě pro juniory, je těžké je hledat jinde v záplavě dalších nabídek, fi ltry na existujících portálech jsou na houby • Aby tam chodili lidi, přidám nějaké ty rady, co pořád opakujeme začátečníkům: jak začít, jak získat praxi a pak šup na nabídky • Nabídek pro juniory nebude moc, ale kdybych je posbíral všechny, třeba mě to uživí nebo aspoň zaplatí provoz a údržbu toho projektu

Slide 15

Slide 15 text

Byznys model Udělám stránku s nabídkami práce ... PROFIT

Slide 16

Slide 16 text

Proč to nefungovalo • Měl jsem si spočítat, kolik těch nabídek může reálně být, analyzovat jejich počet na aktuálních job boardech, zhodnotit konkurenci • První rok jsem nechápal kdo je můj klient, vytvářel jsem víc obsahu a dělal marketing pro juniory a vůbec neřešil fi rmy, inzerovat ale měly fi rmy • Cesta od stránky „začni se učit programovat“ ke stránce „procházej nabídky práce“ trvá lidem třeba půl roku nebo roky dva • Covid-19 zbrzdil pracovní trh • Více na honzajavorek.cz/blog/spoustim-klub/

Slide 17

Slide 17 text

Proč to nefungovalo hodně chtění, málo počítání

Slide 18

Slide 18 text

Příručka • Chtěl jsem zvýšit tra ff i c na nabídkách práce, tak že napíšu nový obsah přímo pro lidi, co si tu práci hledají • Nějak mi to ujelo a místo krátké nové stránky jsem napsal desítky normostran rad :(( • Řešil jsem jak to u fi nancovat, vydání za paywallem nebo jako knihu jsem zavrhl, zkusil jsem sponzorská loga a dobrovolné příspěvky • Oznámil jsem vydání a pokusil se vytvořit marketingové FOMO, o příručce napsalo několik médií (můj první kontakt s médii)

Slide 19

Slide 19 text

První velký klient • Validace byznys plánu, je zájem! Známé jméno, přitáhne další klienty • Speci fi cké požadavky, musel jsem vyrábět spoustu věcí, které žádný jiný klient nepotřeboval • Uzavřít deal je velká byrokracie a trvá to strašně dlouho • Zaměřil jsem se pak na menší a střední fi rmy, kde je deal hotový za týden • Mám už rok rozjednaný deal s dalším gigantem, ale vlastně jim ani nepíšu

Slide 20

Slide 20 text

Dobrovolné příspěvky • Inspirace: Fuka, PHPStan, yablko • Experiment, nic moc jsem od toho nečekal • Patreon, GitHub Sponsors, účet • pravidelné/jednorázové, zdvojnásobování • Celkem 52.000 Kč za 2020 • Celkem 54.000 Kč za 2021 (listopad) • Upozaďuju na úkor klubu, ale stále velká pomoc (21 % příjmů) • Bez nich by už asi JG neexistovalo?

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Média • V ČR nemáme HackerNews nebo ProductHunt • Pokusy s tiskovými zprávami • Reálně je potřeba mít zajímavé téma, znát novináře, exkluzivně pro ně něco napsat (nebo mít peníze na PR článek) • Podzim 2020 úspěchy, ale to ještě nebyl klub, návštěvnost vniveč

Slide 23

Slide 23 text

Pivot

Slide 24

Slide 24 text

Aktuální byznys model • Junioři si platí členství v klubu, měsíční fee, tzn. buduji MRR • Mají za to mou pozornost a unikátní komunitu se mnou jako zahradníkem • Firmy se také mohou stát členy, mají z toho CSR, D&I talent pool, případně službu pro své studenty/juniory • Narovnání toho, kdo je můj zákazník a komu se zodpovídám, mohu být kritický ke vzdělávacím agenturám nebo neférovým fi rmám • Cílem je stabilní příjem aspoň 30 tis čistého (aktuálně stagnuju na 20 tis) • V zahraničí to frčí (NomadList, Rosie Sherry, mnoho dalších paid communities), ale u nás první? Víte o podobných klubech? (Rozumný investor?)

Slide 25

Slide 25 text

Sales • Neumím, nebaví, nechci • Nemám problém dělat sales cally a komunikovat s klienty • Mám problém chodit jako podomní prodejce a nabízet • Udělal jsem si dlouhou „CRM“ tabulku s fi rmami k oslovení a nikdy žádnou neoslovil • Povedlo se vyřešit pivotem, fi rmy chodí samy ¯\_(ツ)_/¯

Slide 26

Slide 26 text

Česko vs svět • Doménu .guru jsem vybíral tak, aby byla mezinárodně pochopitelná • Když jsem měl byznys model založený na nabídkách práce, uvažoval jsem zda neudělat expanzi do zahraničí • Překlad webu není totéž co jeho úprava na místní podmínky (ani Praha a Bruntál nemají stejný trh, natož Londýn, Atlanta, Dublin, Dillí), musel bych dělat vše dvakrát (EN, CS) • Faktura do zahraničí = plátce DPH, byrokracie navíc, zprvu jsem to chtěl dát zdarma jako průzkum • Úvahy o MVP pro Dublin nebo Londýn, pokukování po Brexitu (DPH) • Nakonec neřeším, pro klub je v ČR trh velký dost na to, aby mě to uživilo • Angličtinu neplánuju, Čeština snižuje začátečníkům bariéru • Slovensko plánuju

Slide 27

Slide 27 text

Covid-19 • Zabil trh s nabídkami práce zrovna když jsem se rozjížděl • JG se dostalo do „koronápadů“ apod. věcí jako „co dělat když se nudíte doma v karanténě” a tím se o něm dovědělo hodně lidí • JG klub je online a lidi tráví víc času online (ale klub by asi fungoval i tak, pro lidi z vesnice, introverty, lidi co nemají večer čas a chuť někam chodit…) • Jen díky klubu mohu být teď v kontaktu s reálnými juniory a nejsem odtržený od jejich problémů • Chtěl jsem pracovat z domova a nadělovat si lidi na oběd, na kafe, na pivo, ale místo toho došlo k mojí izolaci

Slide 28

Slide 28 text

Otevřený kód • Taky vás vždycky štvalo, že vidíte na cizím webu překlep, ale nemůžete poslat PR s opravou? • Od začátku otevřený kód na GitHubu • MIT licence na kód • CC BY-SA licence na texty • Zatím spíš open-sourced než open source, pracuje se na tom • Nikdo mi nic zatím „neukradl“ :))

Slide 29

Slide 29 text

Technologie • Continuous Delivery: GitHub, CircleCI, žádné feature branches
 (YouTube: Dave Farley) • No Runtime, No Pager (statické stránky + build na CI, kde jede backend) • Outsourcing: Google Sheets/Docs/Forms, Memberful, Discord, SendGrid, Mailchimp… • HTML, SCSS, Python, Flask, SQLite, Scrapy, Frozen-Flask, Jinja2, Vercel, vanilla JavaScript, discord.py

Slide 30

Slide 30 text

Změny v technologiích • SCSS špagety → SCSS BEM → SCSS Bootstrap • Vercel → GitHub Pages • SendGrid → Gmail SMTP :)) • MailChimp → (zrušeno) • Flask, Frozen-Flask → MkDocs • HTML, Jinja2 → Markdown, Jinja2 • Google Analytics → Simple Analytics • 1 vanilla JS soubor → 10 vanilla JS souborů → 5 vanilla JS souborů :))

Slide 31

Slide 31 text

Otevřený startup?

Slide 32

Slide 32 text

Otevřené příjmy • Nejdřív v článku na blogu, nic se nestalo • Levels svoje fi nanční výsledky tweetuje běžně, je to etiketa i u Indie Hackers • Dal jsem do patičky webu (Fio API a Google Sheet) • Transparentnost pro lidi, kteří mě podporují • Důvěryhodnost pro juniory (kdo mě platí?) • Na obrázku stav k 5.11., ale čekám na zaplacení dvou velkých faktur, takže to je reálně kolem 20.000 Kč

Slide 33

Slide 33 text

Otevřená návštěvnost • Původně GA, přestal jsem tam chodit (pomalé, nepřehledné, nerozumím) • Původně vytahování čísel z GA přes API a zobrazení na webu nebo posílání v emailu, pro fi remní klienty • Přecházím na Simple Analytics • Privacy, EU, GDPR, žádné cookies • Přehledné • Veřejný dashboard, podporuje permalinky, které mohu poslat i klientovi (např. před fi ltrované na stránku s inzerátem)

Slide 34

Slide 34 text

Otevřené poznámky • Vzory: Čaj týdne, David Nogol, Simon Willison • Uspořádávám si myšlenky, dostávám zpětnou vazbu • Levels tohle dělá na Twitteru, tam mi to moc nefungovalo • Nemám depku, že je pátek a nic jsem nestihl • Transparentnost pro podporovatele • Marketing jak sviňa

Slide 35

Slide 35 text

Víc čísel? Víc grafů? • Chtěl bych, nemám zatím čas udělat, snad do budoucna • Počet platících individuálních členů, členů kteří přišli přes fi rmy • Samotnému by se mi to hodilo, místo do Google Sheets teď chodím do patičky webu koukat kolik vydělávám (načítá se to rychleji ¯\_(ツ)_/¯ ) • Vývoj v čase, ne pouze aktuální stav

Slide 36

Slide 36 text

Proč otevřenost? • zpětná vazba, nápady • marketing - jsem outsider, lidi sledujou můj příběh a cítí se být jeho součástí, fandí mi jak Trabantům, je to chytlavý • transparentnost a důvěryhodnost toho co dělám směrem k juniorům • mám rád open source, transparentnost, upřímnost, vždy jsem to všude prosazoval a je to v DNA všeho, co jsem se snažil dělat třeba v Python komunitě (viz docs.pyvec.org ) • mám věci zadarmo! třeba CircleCI, logo.junior.guru • můžu časem budovat komunitu i skrze kód, dát někomu spravovat stránku v příručce… Co mají fi rmy z toho, když dělají OSS? Hiring, marketing, komunitní efekt pro jejich produkt. Je to práce a risk navíc, málokdo to umí dobře.

Slide 37

Slide 37 text

Je to jenom mediální kampaň!

Slide 38

Slide 38 text

Marketing?

Slide 39

Slide 39 text

Náplň práce • Mega mě to baví. Dlouhodobě. Tím jsem si v začátku jistý nebyl, ale teď jsem přesvědčený, že to dokážu dělat klidně „do důchodu“. • Nemám meetingy, které si sám nedomluvím :) Nemám žádné pravidelné meetingy. • Střídám činnosti. Píšu, propaguju, programuju backend, přednáším, dělám rozhovory, programuju frontend, bavím se s lidmi, radím. Neomrzí se. • Jsem programátor a zároveň řeším problémy konkrétních lidí, nevytvářím pouze něco, co neadresně „škáluje“ (ačkoliv moje řešení škáluje).

Slide 40

Slide 40 text

Škáluje? • Kdyby komunita začínala být moc velká a já bych nestíhal, pro nové členy zdražím. Některé věci by šlo automatizovat. • Kdyby fi rem bylo moc a já bych se jim nestíhal věnovat, zdražím. • Některé složité věci časem ruším nebo zdražuji (newsletter, zasílání statistik mailem, ruční zadávání a kontrolování vložených inzerátů…). • Špatně škálující robot na třídění inzerátů zda jsou juniorní? Vyřeší ML :) • Údržba rozrůstající se příručky? Zapojení více lidí z komunity, třeba v rámci barteru (garanti obsahu).

Slide 41

Slide 41 text

Pracovní benefity • Mohu pracovat odkudkoliv, celé je to „na dálku“. Mohu pracovat kdykoliv, celé je to asynchronní - levels.io/async/ Užívám si mimino! • Když na to nemám čas, celé to funguje dál. Není to bez údržby nebo bez mojí aktivity, ale může chvíli být, pokud je to potřeba. Mohl bych automatizovat víc věcí. • Nemám stravenky ani příspěvky na penzijko :(

Slide 42

Slide 42 text

Psychika? • Nemám kolegy :( Mám jednoho „symbiotického“ kolegu, Daniela Srba z CoreSkill <3 <3 <3 • Stále se učím psychickou pohodu a zvládání stresu z toho, že JG krachne nebo že tomu nedávám dost, nebo že nedělám prioritně ty správné věci • Po přednášce Tomáše Rektora o workoholismu myslím, že jsem guilty as charged :( • Na JG myslím ve sprše, v noci, když se budím, když usínám, když jdu v parku :(

Slide 43

Slide 43 text

Životní minimalismus • Zaplatí to nájem. Potřebuju víc, ale prostor pro růst rozhodně vidím, stačí to nepokazit a užonglovat. Holička říkala, že byznys jí trvalo rozjet 3 roky. • Nemáme auto, dům, byt, jachtu, tzn. neřešíme spoustu problémů, spokojíme se s málem. Jednorázové výdaje jsou OK, pravidelné ne. • Kupujeme si hlavně věci, které FAKT potřebujeme, nebo nám zjednodušují život (ne zesložiťují), tzn. nemáme auto, máme robotický vysavač ¯\_(ツ)_/¯ • Nedávalo mi smysl ve vydýchaných zasedačkách na nekonečných callech vydělávat peníze, které nejsem schopný utrácet. • OSVČ, neplátce DPH. Pokud můžu, za každou cenu se vyhýbám zbytečné byrokracii navíc, i když mě to třeba stojí peníze.

Slide 44

Slide 44 text

2021 • Spouštěl jsem klub a budoval jeho základ, bota, rozjel přednášky v klubu… • V létě jsem natáčel videa s Engeto Academy (stále nejsou uveřejněná) • Dělal jsem na nové produktové stránce pro klub: junior.guru/club/ (vyšší konverze, lepší vysvětlení produktu, odlišení od „konkurence“) • Překopal jsem příručku, sloučil, zpřehlednil, loga fi rem dal na více stránek (hned si jedna fi rma jedno nově zaplatila) • Snažím se teď o marketing, aby o JG vědělo víc lidí (výsledky uvidíme?)

Slide 45

Slide 45 text

Výhledy do budoucna • Víc čísel a grafů, abych se mohl lépe rozhodovat. Teď mám v číslech binec, tak se rozhoduju intuitivně spíš podle toho, kde cítím aktuální slabiny • Cítím slabinu v marketingu, lidi o JG málo ví a mělo by jich do klubu přijít víc. Firmy taky hezký, asi bych mohl pár i sám oslovit a měl bych víc peněz, ale chtěl jsem jádro byznysu postavené na juniorech • Psaní článků do Heroine - Ženy v IT (barter, boxík s logem u každého článku) • Vydání videí natočených s Engeto Academy • Tahle přednáška :)) • Do konce roku má manželka mateřskou, pak zase spočítáme fi nance

Slide 46

Slide 46 text

Budoucnost produktu • S produktem, jak je v mé hlavě vymyšlený, jsem spokojen a myslím, že má potenciál vydělávat a uživit mě, chtějí/milují to lidi i fi rmy, řeší to problém • Postupnými kroky překopávám web, aby se zahladil otočku při pivotu a víc odpovídal novému směru (nová stránka pro klub, sloučená příručka, nová homepage, nová stránka pro fi rmy…) • Dát lásku stránce s přednáškami • Dát lásku příručce: nové dělení, úvodní rozcestník, nový obsah • Nový produkt - katalog vzdělávacích agentur, kurzů?

Slide 47

Slide 47 text

Nabídky práce • Významný zdroj návštěvnosti (paradox vzhledem k původnímu plánu :D ) • Robot teď neškáluje, přesunout na ML, omezit ruční vkládání nabídek • Postavit se na stranu juniora, naservírovat informace o fi rmách, odkazovat na Atmoskop • Agregovat více zdrojů • Evidovat frekvenci inzerce (vyvozovat růst nebo fl uktuaci?) aj. statistiky • První pracovní server, který bude mít kandidáta na prvním místě ]:-) • Příručka pro fi rmy, jak to dělat správně? Rada od kamaráda: „Neukazuj na ty, co to dělají blbě, ale dávej za vzor ty, co to dělají dobře.“ Inzeráty: 4.4k Příručka: 6.6k

Slide 48

Slide 48 text

Dík