11 inšpiratívnych kníh, ktoré by si mal prečítať každý vývojár

Často o Techloop hovoríme, že je “vyvinutý vývojármi pre vývojárov” - vývojárov je totiž plný, či už bývalých, súčasných alebo občasných. Preto sme sa rozhodli od nich vytiahnuť zoznam kníh, ktoré ich najviac obohatili a podeliť sa o náš Techloop “Must-read” zoznam s vývojárskou komunitou. Tu je. :-) 

 

 

Daj nám vedieť, či s našim výberom súhlasíš, či sme nejakú knihu nezabudli spomenúť a či sme ťa inšpirovali vyraziť do kníhkupectva. 

TIP: Veľká časť z nich vyšla určite v češtine a slovenčine, takže ak nespíkuješ natoľko, aby si si prečítal knihu v angličtine, jednoducho siahni po preklade (názvy preložených verzií nájdeš v zátvorkách ;-) ) 

books-education-school-literature-48020.jpeg

1. WORKING EFFECTIVELY WITH LEGACY CODE (ÚDRŽBA KÓDU PŘEVZATÝCH PROGRAMŮ) - MICHAEL C. FEATHERS

Vývojár,ktorý sa do prevzatej práce vrhá s nadšením sme ešte nevideli. Vybavujú sa nám skôr dlhé litánie vulgárnych slov a raz dokonca klávesnicu letiacu kanceláriou. Jej neortodoxný výlet bol však rýchlo zakončený dôverným stretnutím so našou zadnou stenou. 

Bohužiaľ, pracovať len s vlastným kódom sa podarí málokomu. Okrem hlbokých nádychov a výdychov a antistresovej loptičky (alebo boxovacieho mechu) je pre prácu s “legacy code” skvelým pomocníkom táto kniha. Michael Feathers v nej preberá stratégie a techniky pre efektívnu prácu s prevzatými programami a odpovedá na všetky otázky, ktoré ti pri práci s takýmto softwarom môžu napadnúť. 

2. CODE COMPLETE (DOKONALÝ KÓD) - STEVE MCCONNELL

Veľká časť z nás považuje túto knihu za absolútnu jednotku a v podstate takú “Bibliu programovania”. Jej autor, McConell, dokázal do jedného pragmatického spisu natlačiť tie najefektívnejšie vývojárske techniky a princípy. Je úplne jedno, či práve začínaš, alebo si už skúsený matador, ak siahneš po tejto knihe, nebudeš ľutovať. 

Ale určite odporúčame kúpiť aktualizovanú verziu - predsa len sa hodí, keď ukážky kódu odpovedajú momentálnej vývojárskej praxi. 

PS: Napriek našej chvále to nie je spis na cesty - má cez 900 strán a to sa len tak nestratí

3. THE MYTHICAL MAN-MONTH - FRED BROOKS

Táto kniha je úplná softwarová klasika a aj napriek tomu, že vyšla už 70. rokoch, aj dnes má čo ponúknuť. Ak sa v IT aspoň trochu pohybuješ, určite stojí za to si ju prečítať. 

Tá časť knihy, ktorú považujeme za najprínosnejšiu, je sekcia o “plánoch na vyhodenie prototypov”. To znie na prvý pohľad trochu šialene, ale v realite je skoro pravidlom, že prvá verzia programu, ktorú vytvoríš, sa musí buď úplne zahodiť, alebo aspoň radikálne prepracovať. Preto je dôležité sa na to adekvátne pripraviť - je potom omnoho ľahšie migrovať užívateľov na verziu číslo 2 a okrem toho si vďaka nej vytvoríš omnoho realistickejšie časové plány vývoja. 

4. DESIGN PATTERNS (NÁVRH PROGRAMŮ POMOCÍ VZORŮ) - E. GAMMA, J. VLISSIDES, R.H JOHNSON, & R. HELM

Ak máš do budúcnosti v pláne stať sa systémovým architektom alebo designérom, rozhodne si pridaj túto knihu na vrchol svojho zoznamu “Knihy, ktoré musím prečítať”. 

Návrh programov pomocou vzorov je označovaná za jednu z najlepších kníh o vývojárine. Ide do najmenších detailov mnohých designových vzorov a pomôže ti tak predísť ( alebo vyriešiť ) všetky možné problémy, na ktoré pri použití daného vzoru môžeš naraziť.  

5. PROGRAMMING PEARLS - JON BENTLEY

Programming Pearls nie je klasická publikácia, v ktorej sa dočítaš o nových konceptoch programovania - miesto toho ťa naučí ako celkovo lepšie riešiť problémy. Čo sa v kariére vývojára nesmierne hodí. 

pexels-photo-115001.jpeg


Na túto knihu nedáme dopustiť - vďaka nej lepšie rozumieme algoritmom a omnoho ľahšie sa nám programuje. 

6. REFACTORING (REFAKTORING) - K. BECK & M. FOWLER

Refaktoring od Martina Fowlera sa zameriava na úpravy už napísaného kódu tak, aby jeho vonkajšie chovanie ostalo rovnaké, ale zlepšila sa jeho vnútorná štruktúra. Nájdeš tu podrobný rozbor princípov refaktoringu vrátane tipov na rozpoznávanie refaktoringových príležitostí na prípravu potrebných testov. 

Kniha síce používa ako svoj hlavný programovací jazyk Javu ale všeobecne jej princípy platia na akýkoľvek 00 jazyk. 

7. CLEAN CODE (ČISTÝ KÓD) - ROBERT C. MARTIN

Neprehľadne napísaný kód môže celému projektu pekne zavariť, písanie “čistého” kódu je preto extrémne dôležité. Táto kniha ťa (alebo tvojho kolegu) presne toto naučí. Prevedie ťa nielen základnými princípmi, ale obsahuje aj množstvo praktických tipov a prípadových štúdií, na ktorých si získané znalosti môžeš rovno vyskúšať. 

Tip: Čistý kód sa oplatí prečítať až potom, čo sa prelúskaš Code complete, pretože sa venuje niektorým témam tejto knihy na pokročilej úrovni. 


8. PRAGMATIC PROGRAMMER (PROGRAMÁTOR PRAGMATIK) - A. HUNT & D. THOMAS

Toto je jeden z najstarších titulov, ale “vek” mu na dôležitosti a miere prínosu neuberá. Zaoberá sa hlavne tým, ako prakticky pristupovať k vývovju komplexných systémov. A tieto princípy nikdy nevyjdú z módy.

Programátor pragmatik nás naučil množstvo užitočných trikov, o ktorých sme na škole ani v žiadnych kurzoch nepočuli a pritom každý z nich zjednodušuje život. Takže za nás palec hore. 

9. CODERS AT WORK: REFLECTIONS ON THE CRAFT OF PROGRAMMING - PETER SEIBEL

Zaujímajú ťa životné osudy úspešných programátorov? Tak je táto kniha niečo pre teba. Je zostavená z 15tich rozhovorov s vývojármi ako Joshua Bloch, Peter Norvig, Donald Knuth, Ken Thomson alebo Jamie Zawinski.

Jej autor, Peter Siebel (pôvodne programátor) od dotyčných zistil prvé a posledné o slávnych projektoch, na ktorých pracovali, o tom, čo ich motivuje a ako premýšľali. 

10. SOFT SKILLS: THE SOFTWARE DEVELOPER’S LIFE MANUAL - JOHN Z. SONMEZ

Pre väčšinu vývojárov je kódovanie tá zábavná časť. Problém nastáva, keď sa musí baviť s klientom, kolegami alebo nedajbože s manažérmi…

Táto kniha sa zaoberá všetkým tým, čo s kódovaním súvisí, ale pritom je to pre život vývojára esenciálne. Nech ide o kariéru, osobnú značku, blogovanie, vzdelávanie sa, financie alebo zdravie  vzťahy, autor prejde každú tému poctivo a zrozumiteľne. 

11. HEAD FIRST DESIGN PATTERNS - E. FREEMAN & K. SIERRA

Toto je jedna z namenej technicky vyzerajúca kniha o programovaní, akú poznáme. Je plná obrázkov, nákresov a podobných vylomenín, ktoré z nej robia prekvapivo ľahké čítanie o jednoznačne zásadnej téme programovania - návrhových vzoroch. 

Head First Design Patterns ti pomôže tvoriť elegantný a flexibilný software, ktorý sa dá ľahko použiť. Prehľadne vysvetľuje všetky výhody a nevýhody návrhových vzorov, takže vieš, do čoho ideš. 


Vaše odporučenia: 
Na Facebooku a Twitteri sme sa pýtali na ďalšie kniné tipy a dostali sme mnoho zaujímavých podnetov. Tu sú: 

  • Computer Science Distilled - W. F. Filho (najmä pre vývojárov - samoukov) 
  • Continuous Delivery - J. Humble & D. Farley
  • Growing Object-Oriented Software - S. Freeman & N. Pryce
  • Patterns of Enterprise Application Architecture - M. Fowler
  • REST in Practice - J. Webber, S. Parastatidis & I. Robinson
  • Domain-Driven Design - E. Evans
  • Meditations (Hovory k sobě) - M. Aurelius (nielen pre IT profíkov :-) ) 
  • Succeeding with Agile - M. Cohn
  • Test Driven Development - K. Beck
  • Průvodce labyrintem algoritmů - M. Mareš & T. Valla (čisto česká a ľahko stráviteľná publikácia) 
  • Building Microservices - S. Newman
  • The Smashing Book - V. Friedman