Mýtus Vývojář brouk pod kamenem

Často kolem sebe slyším, jak je to v pytli, že se nedaří nikoho najmout. Prý jsme my, čeští vývojáři, brouci pod kamenem. Dobří, ale nikdo o nich neví. Nepíšou, neprogramují veřejně – rozuměj mají alespoň jednou týdně jednu kontribuci na GitHubu. Na univerzitách to prý stojí za starou bačkoru, protože studentů je málo, poptávka je […]

A case against polyglot programming

We have been doing polyglot programming at GoodData even before Micro services get traction and honestly it was probably one of the biggest mistake we ever did. At the beginning (2008) our platform was simple LAMP stack with REST interface and bunch of JavaScript. We have been adding more and more languages as we followed […]

Proč je důležité dělat nedůležité

Hrajete počítačové hry? Všiml jsem si, že plno složitějších problémů nebo úkolů řeším, jako kdybych hrál počítačovou hru. Velmi mi to připomíná hraní her na hrdiny (RPG). Teď nemám na mysli to, že bych byl hrdina. Ostatně můžete kolikrát hrát za stranu padouchů a svůj herní charakter rozvinout jak kladně, tak i záporně. Při hraní […]

Neučme se z úspěchu

Deset rad, jak se z vás stane lepší programátor. Deset rad, jak vést firmu jako Steve Jobs. Deset rad, pomocí kterých zaručeně sbalíte holku. Deset rad, jak uspět s vaším startupem. Všechno s razítkem zaručené a nejlépe podpořené nějakou ikonickou značkou. Určitě jste narazili na přehršel podobných článků, které se vám snaží v kostce…

Jak jsem zkoušel býti digitálním nomádem

Často mi někdo říká: ty se máš, zabalíš si počítač a můžeš pracovat odkudkoliv na světě, případně pojedeme někam na trip, ty si vezmeš počítač a bude pracovat. Dlouho jsem tomu konceptu prostě nevěřil, obzvláště pokud je vaše práce týmová, respektive někdo závisí na vaší dostupnosti, což se stává z mnoho důvodů – rozjíždíte nový projekt,…

Mýtus nekódujícího architekta

V poslední době mi trochu chybí kódování a přemýšlím, jestli platí, že nekódující architekt je horší než žádný architekt. Největší nebezpečí nekódujícího architekta vidím ve ztrátě citu pro jemné detaily. Architekt musí mít hlavně kontext, ale udržet si kontext nějakého většího systému znamená, že si holt musí od problému trochu…

Když MVP dláždí cestu do pekel

MVP všichni tu zkratku milujeme nebo lépe řečeno to co se za ní skrývá. Minimum Viable Product – to nejnutnější minimum, které musíte dodat zákazníkovi, abyste vyřešili to nejdůležitější, co ho pálí. Zákazník to miluje, protože dostane v nejkratším čase to co chce nebo si to alespoň všichni myslí. Vývojáři to milují, protože se jim […]

(Ne)marný boj s technologickým dluhem

Naše řešení je technologicky složité a bylo by složíte, i kdybychom nestříleli sami sebe do nohou. Pokud děláte distribuovaný systém, bude ten systém prostě složitý. Máme složitý systém, který je navíc okořeněný různorodostí jazyků a middlewaru, a proto je důležité bojovat s technologickým dluhem, aby na nás neustále nepadal nějaký…

QA v roli Důmyslného rytíře dona Quijote de la Mancha

Čas od času slýchám, jak si někdo v agilním vývoji stěžuje na nedostatečnou kvalitu a zároveň vzývá QA inženýry a jejich klíčovou roli. Mýtus spočívá v přesvědčení, že především QA zajišťuje v agilním vývoji kvalitu. Použiji sportovní paralelu. To, že máte v brance nejlepšího brankáře na světě, ještě nic neříká nic o tom, kolik gólu…

Postupný rollout

Kolikrát už jsem jenom zažil tu situaci. Mám testy, kterým věřím, jsem skálopevně přesvědčený, že tahle změna nemůže nic rozbít, a pak se nakonec ukáže, že přece jenom rozbila. Tohle není litanie proti testům, v tomto článku se pokusím o zamyšlení nad tím, že kromě baterie testů, kterým věříte, potřebujete i způsob, kterým minimalizujete…

Svět mikro služeb

Architektura většiny aplikací odpovídá jedné velké kouli bahna, pro kterou se vžilo označení monolitická. Na úrovni aplikace jsou typickými rysy bobtnající závislosti na knihovnách, vzájemné svázané části aplikace vedoucí k nulové odolnosti vůči selhání jednotlivých částí. Na úrovni operačního systému se jedná o jeden velký proces s velkými…

Go není další Jenkins a je to dobře

ThoughtWorks oznámili uvolnění platformy Go jako open source. Go realizuje myšlenky, které ThoughtWorks dlouhodobě razí tj. Continuous Integration a především Continuous Delivery. Samotné Go je zajímavé z několika úhlů pohledu. Přestože existuje celá řada CI serverů, s uceleným konceptem realizace Continuous Delivery zatím nikdo nepřišel až do…