Oficiální snippet Google Analytics vypadá jako zaklínadlo a ještě
zpomaluje načítání. Rozebral jsem ho řádek po řádku, vyhodil
zbytečnosti a nahradil script injection normálním HTML. Výsledek je
rychlejší, kratší a lidsky čitelný.
Chrome 44 beta posílal hlavičku „HTTPS: 1“, která přesvědčila PHP,
že běží pod šifrovaným spojením. Nette aplikace se pak točily
v nekonečné smyčce přesměrování. Workaround je triviální, ale
znepokojivější je, jak snadno šlo detekci HTTPS ošálit.
Nejpoužívanější PHP je zároveň nepodporované, a než ho vystřídá 5.4,
skončí podpora i jí. Převedl jsem Nette na 5.4, zbavil se šíleného
array() a zjistil, že workaroundů pro 5.3 bylo překvapivě
málo. Což je vlastně ta největší pochvala.
Převést samotné PHP soubory je trivialita. Ale rebasovat všechny větve na
takový master? Git filtry slibovaly elegantní automatizaci, realita dodala
záhadné konflikty a zamčené indexy. Nakonec zvítězilo tupé klikání
v TortoiseGit, protože hodinu klikat je pořád lepší než dva dny
studovat Git.
Monolitické frameworky se rozpadají na komponenty a kdo to ještě nepochopil,
ten zaspal dobu. Místo jednoho velkého balíku si poskládáte přesně to, co
potřebujete, aktualizujete po částech a nemusíte čekat na další velký
release. Nette to dotáhlo, ostatní se teprve snaží.
V anketě SitePoint 2015 skončilo Nette na bronzové příčce za Laravel a
Symfony. Kdo by čekal, že framework z malé české kotliny přepere
globální giganty? Spokojení uživatelé jsou prostě lepší marketing než
jakákoli jazyková mutace dokumentace.
Nette DI kontejner si zamilovali i uživatelé jiných frameworků, tak proč
ho nepoužít kdekoliv? Tři řádky kódu, stručná NEON konfigurace a máte
generátor kontejnerů, který vyplivne extrémně rychlý PHP kód. Ruční
skládání závislostí je pro masochisty.
LinkGenerator umí generovat odkazy i tam, kde žádný presenter neexistuje.
Ukážu, jak ho propojit s Latte a továrničkami, aby makra {link} a n:href
fungovala v emailech stejně pohodlně jako v presenterech. Včetně CLI a
vlastní domény.
Poznámky pro budoucího zoufalého mě: Safari v roce 2015 stále chce
prefixy, záleží na pořadí deklarací (ano, fakt záleží) a mezera mezi
flex prvky je hlavolam, který pokaždé řeším od nuly. Příště si tohle
prostě přečtu.
Být velkorysý v tom, co přijímáte, zní krásně, dokud vám URL lišící
se jedním písmenkem servírují úplně jiný obsah. Nette 2.3 končí se
shovívavostí k velikosti písmen a bude case sensitive. Kdo psal jak
motejlek, toho framework slušně upozorní.