patru cărți și ceva

Avansurile “tehnologice” din programarea zilelor noastre ne-au obișnuit să trecem cu vederea lucrurile fundamentale și să ne lăsăm impresionați doar de spoiala cu care agenții de vînzări ai vreunei companii își îmbracă în acronime fără număr upgrade-ul pentru produsul la modă azi.

Dincolo de ghidușiile cu care se fură atît de ușor ochii programatorilor însetați de nou, există adevăruri care nu țin de modă sau sezon. Aceste adevăruri nu le veți găsi nici pe posterul din cutia în care vine Visual Studio .NET, nici pe pagina de prezentare a WebSphere, nici în help-ul nu știu cărui IDE, nici pe cea cu capturi de ecrane spectaculoase din Drupal, Joomla, Sharepoint sau Azure.

Am citit recent o statistică descurajantă care spunea că în medie un programator profesionist citește mai puțin de o carte de specialitate pe an așa că vă propun o generoasă temă cincinală: cele mai bune patru cărți despre software cu care am avut contact.

The Mythical Man-Month


Frederick P Brooks, JR.

E impresionant cum o carte scrisă în vremea și ca urmare a învățăturilor trase din dezvoltarea unui sistem de operare pentru mainframe-uri de acum 40 de ani e perfect valabilă azi ca și atunci.

Întreaga carte e inteligibilă chiar dacă nu ești programator practicant ci doar eventual colateral interesat de domeniu. Dimensiunile și modul în care e scrisă o fac accesibilă. Nu demonstrează nimic matematic, nu se ocupă de mecanica scrierii de cod, nu se ocupă de sintaxă sau alte lucruri vremelnice, se ocupă de cine, care, cînd, cît, unde, cum și de-ce-uri din programare.

Cea mai bună carte din domeniu după gustul meu. Orice programator sau persoană care are legătură cu activitatea de programare ar trebui să citească măcar primele 50 de pagini (și vă promit că nu sînt grele deloc).

mythical
Code Complete


Steve McConnell

O carte excelentă despre cod. Nu te învață lucruri fundamentale dar încearcă să arate cu ce se mănîncă programarea, scrierea de cod și mediul care le înconjoară.
De la motivații pînă la discuții despre psihologia interacțiunii programatorilor cu managerii, de la mediul de lucru pînă la cum se poate scrie bine cod într-un editor, cartea se ocupă în mod magistral de tehnologia programării și de binele care se poate introduce în toată activitatea asta în fiecare etapă sau loc.

Autorul ne-ar fi făcut o și mai mare favoare dacă ar fi reușit să se exprime în jumătate din numărul de pagini. Exact care dintre pagini ar fi putut fi eliminate nu îmi dau seama dar parcă… are prea multe note :-).

Carte excelentă despre tehnologie, se adresează programatorilor sau managerilor tehnici.

codecomplete
Algorithms


Robert Sedgewick, Kevin Wayne

Bine ilustrată, serioasă și cuprinzătoare fără a duce spre savanterii incomprehensibile care pentru unii autori sînt semne de genialitate publice pe care și le dau lor înșiși. Exemplele de cod sînt foarte curat scrise în PASCAL (la pagina 7 aflăm și de ce), conține și ceva analiză a complexității și ceva discuție despre performanță, atîta cît să poți duce fără să te cocoșeze.
Am fost surprins acum aproape 20 de ani cînd am văzut că – de exemplu – o simplă căutare într-un string poate avea multe subtilități.
Prima dată cînd am văzut-o mi s-a părut nefericită lipsa schemelor logice într-o carte despre algoritmi. În final se poate și fără ele deși cred că e una dintre puținele lipsuri ale cărții.

Dincolo de limbaje, tehnologii și acronime de moment, eternă este doar logica. Cu asta se ocupă Algorithms.

Volum fundamental, bine scris, probabil la fel de valabil și peste alți 20 de ani.

algorithms
Peopleware


Tom Demarco, Timothy Lister

Programarea are legătură cu logica, cu calculatoarele și cu oamenii.
Peopleware se ocupă de oamenii fără de care nu ar exista programare pe Pămînt, cel puțin nu în actuala eră geologică.

Programatorii sînt oameni cu bune și cu rele dar starea lor psihică, mediul și condițiile în care lucrează influențează mai mult decît în alte domenii productive rezultatele muncii lor.

În toată treaba asta care se numește programare sau dezvoltare de software, oamenii sînt cele mai importante, prețioase, unice, capricioase și efemere resurse. De ei te poate ajuta Peopleware să ai grijă.

peopleware

În listă nu apare nicio carte despre vreun limbaj sau tehnologie. Cred că nici în top 10 nu ar apărea vreuna. De fapt mă străduiesc să numesc vreuna în orice condiții și nu reușesc. Azi cărțile despre limbaje sau tehnologii se scriu “For Dummies” sau peste 1100 de pagini, fără gust, aromă, personalitate, sevă – generate semi-automat. Variantele de bun simț au dispărut. Programatorii azi învață limbaje sau tehnologii din intelisense cu rezultate pe măsură. Sper să dau și peste cartea despre limbaje sau tehnologii pe care să o pot recomanda ca fiind una fundamentală.

Pînă atunci vă las, mă pun să mai citesc niște help din VS.NET (cum citesc unii cartea de telefon sau dicționarul), să vedem ce e nou prin generatoarele automate de documentație ale anului 2010.

1 thought on “patru cărți și ceva”

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *