Code Complete - Steve McConnell

Dit boek gaat niet zozeer over het leren van programmeertalen, maar over goede development van code als het plannen van een softwareproject, systematisch code schrijven en fouten voorkomen met een sterke focus op code en techniek. Er staan waarschijnlijk ook dingen in die je al weet, omdat ook deze tweede editie alweer veertien jaar oud is. Ondanks dat zitten er gouden tips in.

The Mythical Man-Month - Frederick P. Brooks

De meeste problemen waar softwareprojecten in de praktijk mee worstelen, worden in dit boek behandeld. Een van de concepten die het boek beroemd maken is de misvatting dat meer ontwikkelaars het ontwikkeltraject verkorten: op een gegeven moment is het tegendeel zelfs waar. Lees het voordat je je carrière als programmeur start, maar pas op dat je niet een van die mensen wordt die constant het boek citeert.

The Pragmatic Programmer - Andrew Hunt & David Thomas

Dit boek is nog steeds zo relevant als toen het in 1999 uitkwam. Eigenlijk sluit het mooi aan op Code Complete - en het is een stuk korter.

Design Patterns - Gamma, Helm, Johnson & John Vlissides

Dit boek van de Gang of Four leert je iets over metapatronen bij het programmeren. Dat gaat je tijd schelen als je bijvoorbeeld een eigen framework wilt opzetten, omdat je inziet dat je niets nieuws uitvindt. Het helpt je ook om op een effectieve manier na te denken over nieuwe ontwikkelingen.

Extreme Programming Explained - Kent Beck

Of ze nu slechte gewoontes hebben als een zogenaamde scrumontwikkelmethode die heel er waterfallerig overkomt of XP gebruiken, dit boek leert je hoe softwareontwikkeling goed wordt uitgevoerd als iemand daartoe gemotiveerd is. Maak je geen zorgen, er zijn maar weinig bedrijven die aan Pair Programming doen. Het is wellicht een goede methode, zolang je de andere programmeur niet tot moordneigingen drijft.

Refactoring - Martin Fowler et al.

Als je droomt vanaf de grond af iets op te bouwen, kom je voor een herculestaak te staan. Bijna alles heeft legacy-code. Je zal gedurende je carrière veel te maken krijgen met poepcode te maken krijgen door programmeurs die schrijven alsof ze net hun eerste cursus hebben afgerond (sorry) - of dingen die gemaakt zijn door een geoutsourcet team (meestal bestaande uit mensen die in twee jaar parttime een opleiding hebben doorlopen waar vier jaar voor staat). Je krijgt in de regel maar weinig tijd voor herschrijven. Leer te refactoren.

UML Distilled - Martin Fowler Ongeveer twee derde van UML was een zinloze farce om veel te dure en matige tools te verkopen (ik heb het over jou, Rational Rose). Leer UML niet om mensen te irriteren met zinloze klassendiagrammen, maar leer de basis zodat je een volgordediagram kunt lezen en op deze manier leert denken.