Daniel Kolman

Funkcionální JavaScript - Rekurze s ocasem

| 0 comments |

Rekurze patří mezi základní techniky funkcionálního programování, protože umožňuje velmi hutně a stručně vyjádřit, čeho chceme dosáhnout, a to bez použití cyklů. Mezi programátory má ale velmi špatnou pověst, protože je velmi jednoduché "vyrobit" stack overflow. Není to však vždy pravda. V moderních jazycích (jako je v JavaScript) může mít rekurze ocas a pak je stejně efektivní jako cyklus. Ne, "ocas" není žádná zkratka z angličtiny ani hipsterská šifra, je to prostě normální český vocas, oháňka, ohon, chvost.

Funkcionální dobrodružství v JavaScriptu

| 2 comments |

Funkcionální programování je boží, bohužel tady prostě zatím nemá vybudouvanou tradici. Asi proto, že tu lidi málo hu.. studujou funkcionální jazyky. S příchodem ES2015 alias ES6 alias JavaScriptu budoucnosti se ale FP konečně může dostat do mainstreamu, a tak se nabízí otázky: Co všechno ES2015 nabízí? Kam až nás může ES2015 posunout? Jak by vypadal JavaScript, kdybychom ho psali striktně funkcionálně? Pohodlně se usaďte, otevřte si popcorn a oblíbenou láhev, začínáme! Vítejte v budoucnosti JavaScriptu, v roce 2015!

Být manažerem

| 12 comments |

Setkávám se s tím zas a znova - mladí programátoři touží stát se manažery. Zřejmě za to může rozšířený mýtus, že po třicítce měkne mozek a že starý programátor je špatný programátor. Nebudu tady moralizovat, protože před lety jsem to chtěl taky. Naštěstí jsem byl vyléčen a tak vám můžu popsat, do čeho se řítíte.

GOTO 2013 Amsterdam - Legacy Systems

| 3 comments |

Když se řekne "legacy code", asi se vám vybaví dost netechnické pojmy: Hnůj, špagety, případně roztoky proměnlivé hustoty vyúsťující z různých tělesných otvorů. Starý kód je po technické stránce téměř vždy problém, protože je těžké mu rozumět a změny mohou mít nezamýšlené vedlejší efekty. Jenže je tu i jiný pohled: Starý kód je užitečný, má klienty a vydělává peníze. Už jen fakt, že přežil tak dlouho, je známka toho, že ho někdo potřebuje. Ať se nám to líbí nebo ne, ten starý hnusný kód bez testů je úspěšný kód. A o tom byl track "Legacy & Big Systems" na konferenci GOTO 2013 Amsterdam, kam jsem se podíval díky Vendavu.

Jak v javě strukturovat testy velkých tříd

| 0 comments |

Pro každou třídu typicky existuje jedna testovací třída. Tento klasický pattern má ale nevýhodu, když testujete velkou třídu, která se používá v různých scénářích. Testovací třída pak obsahuje mnoho testů, setup různých situací vyžaduje ještě další metody navíc. Pokud mají vaše testovací třídy mnoho metod, měli byste se zamyslet, jak je lépe strukturovat.

Co s novým mekbůkem aneb rady pro konvertity

| 3 comments |

Dnes je to přesně rok, co jsem v mém novém zaměstnání ve Vendavu rozbalil krabici s novým MacBook Pro a stal se po letech s Windows spokojenou apple ovcí. Nikdy jsem toho nelitoval, i když se mi občas zastesklo po některých okenních vychytávkách. Pro zrádce a renegáty jako jsem já tu mám pár tipů, jak si ulehčit nový začátek.

TDD Outside-in v Ostravě

| 6 comments |

Předevčírem jsem na JUG Ostrava mluvil o unit testech a test-driven vývoji. Na rozdíl od WebExpa jsme měli víc času, a tak jsem se dostal i k tomu, proč nejsou unit testy dobré k odhalování chyb, co vám unit testy říkají o testovaném kódu a v čem je jejich nejsilnější stránka.