Should I Stay or Should I Go
Poté, co jsem měl poslední dva roky utrum s technicko-pracovním vzděláváním, se na mě usmálo štěstí a zásluhou nového zaměstnavatele jsem vyrazil na svoji první zahraniční konferenci.Nových věcí v nové práci je (a bylo) dost a tak jsem měl poměrně široký výběr (technických) domén, ale nejvíc mě to táhlo ke Golangu - i když jsem k němu přišel jak slepý k houslím, tak jsem si ho velmi rychle oblíbil. A tak, když se v mém Twitter feedu mihnul @GopherConUK, bylo rozhodnuto - vyrazím do Anglie!
London Calling
Konference se konala ve dnech 1.-3. srpna v Londýně a ne jen tak ledaskde, ale přímo v The City, v prostorách bývalého pivovaru z 18. století, The Brewery. Luxusní místo pro konferenci.První den byly workshopy (kterých jsem se neúčastnil) a pak dva dny klasických přednášek (to je gró, proč na konference chodím). No a samozřejmě, sociální události (kterým se, jakožto introvert, striktně vyhýbám).
The Brewery, konference venue |
Thursday's Child
Celkově, čvrteční přednášky mi přišly slabší, než ty páteční. Možná je to i záměr organizátorů?
🔑 You Might Be a Go Contributor Already and Not Know It
Úvodní keynote Aditya Mukerjeeho (@chimeracoder) se točila kolem různých způsobů kontribuce - jako gopher (fanoušek Golangu) můžete:- ptát se a odpovídat na StackOverflow,
- reportovat issue na GitHubu,
- pořádat MeetUp,
- publikovat články
- a samozřejmě, sdílet svůj Go kód na GitHubu.
Záznam přednášky
👍 Three Billy GOats Gruff - a developer's tale from VMs to serverless
Občas mají přednášky obskurní názvy, ovšem tahle byla dobrá. Michael Hausenblas (@mhausenblas) prezentoval přechod z jednoduchého monolitu (majícího 2 goroutines), přes rozpad stejné funkcionality do kontejnerovaných micro-servis (běžících na Kubernetes) a skončil u serverless funkcí (implementovaných jako AWS Lambdas).Michael pracuje v Red Hatu (a tudíž OpenShift), takže nepřekvapí, že jeho doménou byly hlavně kontejnery (v Lambdách měl dokonce jeden anti-pattern), ale jeho prezentace pěkně a jednoduše ukázala, jak by taková transition mohla vypadat.
Záznam přednášky
Canary Wharf |
😐 Broadcasting Channels: Writing a timeout-aware abstraction to enable asynchronous fanout in Go
Sean Kelly (@StabbyCutyou) má hodně rád svého psa - jeho slidy se jím jenom hemžily. Nicméně celkem vtipné to bylo. Sean si jen tak pro radost (a studium) naimplementoval broadcasting pomocí channels.V podstatě bylo vyznění jeho přednášky víc o Enterprise Integration Patterns (ačkoliv je nikde explicitně nezmínil), než o Go (kterého stejně moc neukázal). I když si původně myslel, že to bude jednoduché, tak se postupně dopracoval k věcem jako Error
Záznam přednášky
👍 Orchestration of microservices
Bernd Rücker (@berndruecker) je spolu-zakladatel workflow enginu Camunda. Ani v jeho případě nebyla přednáška moc o Go, jako spíš o BPMN, workflow enginech a problémech distribuovaných architektur. Pokud do toho posledního něco málo děláte, asi by vás v jeho prezentaci nic moc nepřekvapilo, ale přednáška byla vtipná a svižná.Dva, tři nejzajímavější body zahrnovaly:
- Strategie pro Fallacies of distributed computing (ignore | re-throw error | retry | stateful retry)
- Konzistence - těžký problém všech distribuovaných architketur. Tady mě pobavila hláška "Grownups don't use distributed transactions". 😁 Lepší je použít kompenzace (Saga pattern).
- Orchestrace a Choreografie - choreografie zatemňuje viditelnost procesu, tj. je obtížnější a víc náchylná k (designovým) chybám.
Cutty Sark |
👎 Component and integration tests for micro-services
Jednoznačně nejslabší přednáška celé konference - Dmitry Matyukhin měl prvně dlouhé intro pro začátečníky o základech testování a pak se podělil o to, jak napsali nějaké služby v Go, ale testovali je... v Ruby!?! Takže místo Golangu jsme koukali, jak se dělá BDD v Cucumber 😩 Já jsem teda valil oči a přemýšlel, jestli si chlapec nespletl konferenci. 🤦Záznam přednášky
👍 Documenting Go Code with Beautiful Tests
Přednáška Pawła Słomky (@pawel_slomka) byla jedna z nejtechničtějších a taky nejvtipnějších toho dne: hodně jsem se zasmál jeho vtipu o Schrödinger's TDD - is it TDD alive, or dead? 😹Ohledně testování v Go zmiňoval:
- Používání Testing flags, zejména -race pro detekci data race.
- Assertion knihovnu Testify.
- Check functions - inspirace z httptest package.
Záznam přednášky
Canary Wharf, pohled od Royal Observatory, Greenwich |
🔑 Code, Content, & Crafting Your Voice
Závěrečná keynote Amy Chen (@TheAmyCode) byla velmi... milleniálská. Jak formou, tak obsahem. Doporučuju, pokud chcete budovat svůj personal brand. Zejména formou YouTube kanálů a všech těch moderních sociálních sítí, bez kterých Generace Y nedokáže žít. Možná, že Amy je dobrá kóderka... ale já to zjišťovat nebudu.Nicméně, abych to úplně nezahodil, jeden dobrý bod tam byl - pokud chcete být jakkoli virtuálně přítomni ve veřejném prostoru, tak prvotní by mělo být si definovat identitu - jak se chcete prezentovat, jak chcete, aby vás vaše audience vnímala. Aneb "Followers follow your identity."
Záznam přednášky
Západ slunce za The City (bedlivým okem můžete rozeznat The Shard a The Gherkin) |
Friday I'm in Love
Na přednášky ze (zajímavějšího) druhého dne GohperConu se podíváme v příštím článku: GopherCon UK 2018, den 2. Plus nějaké celkové shrnutí konference.Mind Map
GopherCon UK 2018, den 1. |
Související články
- GopherCon UK 2018, den 2
- GeeCON Prague 2016, den 1
- GeeCON Prague 2016, den 2
- Můj pohled na Agile Prague 2014