Výber zaujímavostí no. 6

13.10.2015

Neviem, ako niektorí ľudia zvládajú programovať, študovať nové veci a popritom pravidelne blogovať. Keďže tento článok píšem po niekoľkých mesiacoch, tak je asi každému jasné, že ja pravidelne blogovať rozhodne nestíham. Behom tých mesiacov sa pritom odohralo toľko zaujímavých vecí, o ktorých by si zaslúžilo napísať aspoň riadok. Namiesto toho sa mi však len hromadia v bookmarkoch a otvorených taboch. Ale dnes nadišiel ten čas, kedy z nich niečo vyberiem, napíšem a aspoň niektoré bookmarky potom môžem víťazoslávne zmazať. Hurá do toho.

Vitajte pri zaujímavostiach za posledné obdobie.

GIT#

Ešte v januári vývojári z Atlassianu na svojom blogu predstavili novinku týkajúcu sa pull requestov na Bitbuckete. Dovtedy som si myslel, že v PR vždy vidím urobené zmeny a čo sa s kódom stane po mergovaní. Nuž, nie je to celkom tak. Rozhodne odporúčam si článok prečítať a to aj v prípade, že Bitbucket nepoužívate. Názorne, jednoducho a s obrázkami sa dozviete, čo sa deje pri tvorbe pull requestu, aké problémy vznikajú a aj to, ako sa s nimi v Atlassiane popasovali. Snáď sa to čoskoro dostane aj do GitHubu a GitLabu.

Urobiť undo v GITe môže byť niekedy celkom oriešok. A preto si treba zabookmarkovať tento fantastický flowchart:

Testovanie#

Tiež sa ženiete v projektoch po 100% pokrytí kódu testami? Pozeráte na Githube code coverage odznaky? A viete, koľko taký 100% code coverage vypovedá o kvalite a chybovosti kódu? Nuž, istá korelácia tam je, ale nie je taká jednoznačná, ako by si niektorí mysleli. Prečítajte si článok o tom, ako to neprehnať s testovaním a ešte jeden o tom, že 100% code coverage a zelené testy rozhodne neznamenajú, že váš kód je bezchybný.

PHP#

PHP svet som posledné mesiace moc nesledoval. V našich lokálnych vodách sa riešila budúcnosť Nette Frameworku a celkovo sa čaká na PHP7. V tomto som trochu zaspal dobu a priznám sa, že ani neviem, čo všetko nové v PHP7 bude. Napríklad taký null coalesce operator ma úplne minul a dozvedel som sa o ňom až z článku od Lorna Jane.

Knihy#

Prečítal som si knižku, ktorú napísal Paul. M Jones a ktorá sa volá Modernizing Legacy Applications In PHP. Z názvu ste asi uhádli, knižka pojednáva o tom, ako zobrať vašu špagetovú aplikáciu a urobiť z nej niečo, za čo sa už nemusíte hanbiť. Knižka je fakt dobrá a stojí za každý cent. Ak pracujete s legacy aplikáciou a chcete jej kód posunúť ďalej, tak táto kniha je must-have. Kapitoly sú štruktúrované veľmi podobne a každá predstavuje jeden krok na ceste k lepšiemu kódu. Je to pomerne podrobné a hoci som si veľakrát myslel, že autor na nejaké detaily zabudol, tak v otázkach na konci každej kapitoly som vždy našiel odpoveď. Verím tomu, že podľa návodu v tejto knihe by som vedel pretvoriť väčšinu legacy aplikácií, s ktorými som pracoval.

Symfony#

Ryan Weaver napísal článok o tom, aké zábavné veci sa dajú robiť so Symfony konzolou.

Dlho mi nešlo do hlavy, prečo je pre toľko vývojarov cudzie písať skripty a crony v konzole a radšej ich píšu ako klasické PHP skripty servované cez http server. Potom sme sa v robote bavili o konzolových nástrojoch ako bower, gulp, npm na Windows a vtedy mi docvaklo, že všetci vývojári, od ktorých som kedy počul nadávať na konzolové skripty (alebo ktorí ich odmietali písať), boli Windowsáci. Nuž, nezávidím im. Majú to s konzolou pod Windows ťažké a ani nevedia, o čo prichádzajú.

JavaScript#

Viac, ako o PHP som sa posledné mesiace zaujímal o JavaScript. Holt, čoskoro uverejním jednu hru, tak sa chystám vyvíjať ďalšiu a tentokrát hlavne v JS.

V lete nám Ecma schválilo novú verziu Javascriptu pod názvom ES2015. Keďže však zmena názvu prišla celkom neskoro, tak všetci na webe píšu o ES6, čo bol pôvodne navrhovaný názov (teda, jeden z posledných). Novú verziu rozhodne vítam, vyrieši mnohé boľačky. Ale je tam aj zopár kontroverzných častí. Hoci rozumiem argumentácii, stále neschvaľujem pridanie kľúčového slova class a celkovo nového syntaktického cukru pre triednu dedičnosť. JavaScript má predsa oveľa silnejšiu prototypovú dedičnosť a žiadne triedy nepotrebuje, tak načo tento cukor. Len to vnesie viacej zmätku a pomýli nováčikov.

Axel Rauschmayer píše o novom JavaScripte knihu, pričom jednotlivé kapitoly vychádzajú aj ako články na jeho blogu. Jeden z nich je zároveň hutným zhrnutím noviniek v ES6. Veľmi dobrý zdroj, pokiaľ vás ES6 zaujíma.

Do pozornosti by som rád dal aj tieto články vysvetľujúce prečo je JavaScript super a aké sú výhody prototypovej dedičnosti.

Z každého rožku trošku#

Brandon Savage píše o tom, ako zarábať viac, pokiaľ ste freelancer. V podstate máte len dve možnosti: buď viacej pracovať, alebo si za svoju robotu pýtať viac. Ako však neodradiť klientov, keď si budete pýtať viac? Brandon ponúka jednoduchú odpoveď, s ktorou sa aj ja úplne stotožňujem: Investujte do seba. Vzdelávajte sa, učte sa nové veci, naberajte skúsenosti. Čím viac toho viete, tým ste pre klienta cennejší.

Asi ste už počuli o tom, ako sa jednému mladému rakúskemu študentovi práva podarilo dosiahnuť, že bola zrušená dohoda Safe Harbor. V Rakúsku to celkom oslavujú, ale nie je to úplne ružové. Armin Ronacher píše o technologických aspektoch a problémoch, ktoré zrušenie Safe Harbor prinesie pre každého, kto chce prevádzkovať webové služby aj pre nekrajanov.

V Prahe bolo WebExpo a Česká Televize má na svojom webe videozáznam niektorých prednášok.

Assets#

Nová alternatíva ku Gruntu a Gulpu vzniká poslednú dobu snáď každý týždeň. Najnovšie sa na SitePointe písalo o Munee. To ma teda rozhodne nepresvedčilo.

Na popularite značne získal Webpack, ktorý sľubuje vyriešiť snáď každý problém sveta. Stojí za vyskúšanie. Ak však chcete skúsiť niečo menej ambiciózne, tak si pozrite napríklad Broccoli.

Virtualizácia#

Zdá sa vám Vagrant príliš zložitý? Hashicorp prišiel s nástrojom nazvaným Otto, ktorý sľubuje veľmi jednoduché vytváranie virtuálnych mašín pre vývoj aj deploy. Znie mi to moc sladko a jednoducho, ja zatiaľ zostávam pri Vagrante :)

Zábava na koniec#

Na GitHube sa objavil plugin pre phpunit, ktorý zabezpečí, že v CI prostredí všetky testy prejdú a to aj v prípade, že v normálnom prostredí by zlyhali. Plugin sa volá phpunit-vw a podobnosť so škandálom Volkswagenu je čisto náhodná :) https://github.com/hmlb/phpunit-vw

Nasledovný obrázok ste zrejme videli:

Čo ste možno nevideli, je plugin pre git nazvaný git-fire, ktorý prvé dva kroky z obrázku urobí automaticky za vás: https://github.com/qw3rtman/git-fire

Na záver tu mám ešte jeden obrázok držiteľky tohtoročnej Nobelovej ceny za medicínu:


  Git Php Es6 Javascript Knihy Testovanie

Diskusia