Why I will never attend mandatory meeting ever again

In the companies, it is sometimes a norm that some activities (most often meetings or training) are mandatory. In this article, I explain why I find this practice offensive and why I will never be the order follower and attent such activity ever again.

en 3 Dec 2019
Reading time: 2 minutes
Work Environment

South of Iceland in 5 days

Land of Ice and Fire. ― my traveling logs

en 23 Nov 2019
Reading time: 3 minutes
Traveling

Model domain in your codebase as a reflection of the reality

Sometimes in software development, we end up with software that lives in its own realm. There is stuff that's weirdly named, entities that have no meaning in the real world and every time we want to add a feature that requires an extension of the model we find limitations, conflicts, and paradoxes. This article tries to describe a practice, how to avoid this situation.

en 14 Oct 2019
Reading time: 1 minute
Design

Dependency Injection Container configuration is, in reality, a Code

When using the dependency injection container there is a need for a lot of configuration. This article proposes a practice of treating this configuration as a code and organize it (separate it) accordingly its domain.

en 17 Aug 2019
Reading time: 2 minutes
PHP

Kefalonia

Greek island in the Ionian sea full of goats and both white-"sand" (marbles) and golden sand beaches.

― my traveling logs

en 7 Aug 2019
Reading time: 2 minutes
Traveling

Weekend in New York

City That Never Sleeps ― my traveling logs

en 4 Aug 2019
Reading time: 5 minutes
Traveling

Replacing templating systems (Twig and Latte) with Components

The current market standard of server-side rendering in PHP is to use templating systems like Twig or Latte. This article will present an alternative that is type-safe (thus robust), easily testable and allow you to scale thanks to reusability.

In a nutshell: let's write some React components in PHP.

en 4 Apr 2019
Reading time: 5 minutes
PHP

Tests should be right next to the code

It is a common practice to put your tests apart from the actual code of the application, usually into the tests folder. In this article, I explain why I see it as a bad practice and why you should always put them right next to the code they are testing.

en 18 Sep 2018
Reading time: 2 minutes
TestingPHP

Via ferraty v okolí Arca 2018

V okolí Arca na ferratách jsem byl již podruhé. Tentokrát jsme nebydleli v kempu v Arcu, ale pronajali jsme si přes booking.com domek na úpatí hory nad Arcem. Cenově to je jen o trochu dražší než camp dole v Arco a luxus nesrovnatelný (pěkná sprcha, zahradní posezení s výhledem, krb na grilování,…). Vylezli jsme šest ferrat a zablbli si na windsurfech na Gardě.

cs 5 Aug 2018
Reading time: 3 minutes
Traveling

Dangerous implementations of time representation in today's programming languages

Many programming languages have some kind of object to represent time. In PHP it's DateTimeImmutable, in JavaScript it's Date. Python has it's datetime.datetime. All of them were designed in such a way, that they contain timezone as part of their time representation. And what's dangerous, they expose it (mostly directly via a method).

In this article, I will explain why it poses a danger to you and propose a technique to avoid it.

en 8 May 2018
Reading time: 4 minutes
PHP

Od-do a jiné intervaly jako matematické value objecty

Velmi často se s intervalem pracuje tak, že se prostě předají dvě hodnoty: dva parametry do funkce, dvě proměnné, nebo prostě "pole" o dvou položkách.

Tento přístup ale trpí dvěma neduhy:

  1. Předávání dvou objektů nezaručuje validitu intervalu.
  2. Operace nad intervalem vyžadují vlastní netriviální implementaci.

Řešení je snadné: interval vždy reprezentovat jako value object.

cs 24 Jun 2017
Reading time: 2 minutes
PHP

Jak na API (v PHP) bez controllerů

Skoro každá backendová aplikace má nějaké to API. Mnoho backendových aplikací dnes už komunikuje jen přes něj. Server-side rendering je na ústupu a frontendu vládnou aplikace v browseru a v mobilních aplikacích.

Jak tedy napsat dobře (v PHP) API? Tradiční způsob je použít důvěrně známé controllery/presentery a upravit routování. Proč to není nejlepší přístup a jak to zmáknout lépe.

cs 12 Jan 2017
Reading time: 7 minutes
APIPHP

Testování PHP kódu

Testování aplikací není vždy tak snadné, jak se na papíře jeví. Svojí zkušeností jsem dospěl k několika zásadám a postupům, které se mi osvědčily a které se tu pokusím sepsat a částečně i zdůvodnit. Pomáhají mi k psaní čítelnějších a udržovatelnějších testů. Za hlavní přínos pak považuji snadnou rozšiřitelnost testů, jejíž potřeba přichází s rozšiřováním fukcionality projektu.

cs 6 Dec 2016
Reading time: 10 minutes
TestingPHP

Ohlédnutí se za prací pro DámeJídlo

Více než rok jsem se podílel na vývoji Dámejídla. Seznámil jsem se s Doctrine 2, naučil se hodně o testování a nadchl jsem se pro čistý kód.

S odstupem času se pokusím zhodnotit co mi práce pro Dámejídlo dala a co naopak dát nemohla.

cs 2 Dec 2016
Reading time: 6 minutes
Work Environment