Nu vă spun noutăţi: cărţile de
specialitate (IT) sunt scumpe. Chiar dacă în ultimii ani editurile
româneşti s-au străduit să ne aducă la nivelul de informare
comparabil cu cel al confraţilor din lumea largă, la o jumătate
de milion cartea ne gândim de trei ori până să scoatem portofelul. Ca
să nu mai vorbesc de cărţile străine, care se încăpăţânează
să pornească de pe la 50 de dolari...
Fără îndoială, dacă ne pretindem
specialişti sau ne pregătim să fim, o mică bibliotecă
personală de specialitate tot se adună. Măcar cărţile
fundamentale merită să le ai la îndemână. Pe de altă parte,
dacă nu cumpărăm cărţi (mă refer la cele
româneşti) editorii vor fi descurajaţi să editeze altele,
aşa că ne vom întoarce de unde-am plecat.
Cărţile în format electronic încep să-şi
facă loc, în ciuda unor neajunsuri evidente. E incomod să-ţi
duci PC-ul în fotoliul preferat (chiar dacă e notebook), iar după o
vreme te cam dor ochii... Dacă e vorba de cărţi disponibile doar
pe Web, atunci mai pot să intervină şi alte neplăceri (de
pildă factura telefonică).
Şi totuşi... Dacă ai într-adevăr nevoie
de cartea respectivă şi, mai ales, dacă accesul la acea carte
este gratuit, merită efortul. Acesta este motivul pentru care ne-am gândit
să vă prezentăm câteva surse de cărţi on-line
(ne-am limitat la cărţi, deşi există pe Web şi altfel
de materiale, cum ar fi tutorialele, cursurile interactive etc.). Mai mult,
unele dintre aceste cărţi pot fi descărcate, ceea ce vă va
permite să le consultaţi mai uşor sau să le
tipăriţi (astfel încât să le puteţi citi în fotoliul
preferat).
Ciudat... Dintr-o notiţă din subsolul paginii
aflăm că situl ne este oferit de... Eminem! Să-i mulţumim
deci lui Eminem, pentru că aici vom găsi referinţe către
130 de cărţi gratuite (dacă nu punem la socoteală reclamele
pop-up...), clasificate într-o ierarhie de domenii şi sub domenii. În
plus, în cele mai multe cazuri se specifică şi nivelul pentru care
este indicată cartea.
Limbaje de programare este o secţiune C/C++ (15
cărţi) şi Java (22 de cărţi). Mi-a reţinut
atenţia C++ In Action de Bartosz Milewski, care
depăşeşte problematica programării propriu-zise, abordând
şi aspecte legate de productivitate şi de organizarea proiectelor de
mari dimensiuni.
În materie de Java, diversitatea este la putere. Dacă
însă nu dezvoltarea de appleturi şi progrămele vă
interesează ci aplicaţiile la nivel de întreprindere, atunci o carte
"hardcore" s-ar putea să vă fie de folos: Mastering Enterprise
JavaBeans (poate şi pentru că unul dintre autori are un nume
insolit: Floyd Marinescu). Se poate descărca în format PDF.
Limbajele de scripting par să nu fie limbaje de
programare în viziunea celor care au conceput situl. Şi de fapt sunt doar
două: Perl (6 titluri) şi Python (9 titluri). Cum de Perl mă
feresc cu multă grijă, vă pot recomanda Thinking in Python
de Bruce Eckel. Ce este special la această carte este că exceptând o
foarte succintă introducere în Python, tot conţinutul este dedicat
"tiparelor" (design patterns). Abordarea simplă şi
presărată cu numeroase exemple s-ar putea să fie introducerea
cea mai directă în patterns pentru orice programator care se
întâmplă să ştie Python. Iar dacă nu ştie, poate
învăţa în câteva ore. Arhiva pe care o puteţi descărca
cuprinde atât formatul HTML cât şi RTF (plus sursele).
Sistemele de operare sunt Unix, Linux şi
FreeBSD, dar Linux are partea leului (17 titluri din 24). Recomandarea mea se
îndreaptă însă spre subsecţiunea dedicată
aplicaţiilor, unde veţi găsi cărţi extrem de utile
despre Samba (Using Samba de la O'Reilly are 5 stele la Amazon), Squid,
Gimp şi alte minunăţii.
Computer Science este secţiunea mai
"academică" a sitului, unde găsiţi cărţi cu tematice
ceva mai largi. Subsecţiunile sunt Introducere în Programare, Algoritmi
şi structuri de date, OOP, Programare logică, Proiectarea
compilatoarelor, Dezvoltare de software şi Proiectarea jocurilor.
Desigur, multe titluri atractive şi mulţi autori cu prestigiu. Dar
pentru cineva care a făcut ceva limbaje formale în şcoală sunt
sigur că titlul cel mai incitant este Let's Build a Compiler.
Cartea este o serie formată din 15 părţi care abordează
într-o manieră practică şi informală toate aspectele
esenţiale ale domeniului. Mult cod, dar extrem de lizibil (Pascal!)
şi foarte clar structurat. On-line şi ZIP.
În fine, o secţiune finală (Miscellaneous)
este dedicată mişcării Free Software / Open Source. Desigur,
veţi găsi aici câteva cărţi celebre, cum este de pildă
Free as in Freedom: Richard Stallman's Crusade for Free Software. Dar
poate veţi fi mai interesaţi de o carte ceva mai practică: The
CVS Book. Câteva capitole nu sunt free, dar esenţialul este
on-line. În orice format.
Însă cea mai incitantă parte este - după
părerea mea - cea numită Hackers and Computer Philosophy.
Merită să aruncaţi o privire peste celebra carte a lui Bruce
Sterling, The Hacker Crackdown: Law and Disorder on The Eectronic Frontier.
Cu câteva numere în urmă v-am prezentat situl
InformIT.com şi am amintit despre această "bibliotecă
liberă" - o secţiune destul de puţin vizibilă - aşa
că de data aceasta mă voi mulţumi doar cu câteva
recomandări din cele 14 cărţi disponibile.
Taech Yourself TCP/IP in 24 Hours (Sams) - Cred că aţi
învăţat deja lecţia: nu vor fi 24 de ore şi nu veţi
deveni un maestru al reţelelor. Dacă însă consideraţi
că nişte cunoştinţe de TCP/IP fac parte din cultura
generală obligatorie a oricărui computerist şi că
puţin jargon nu v-ar strica la conversaţiile cu colegii... atunci
această carte reprezintă o soluţie rezonabilă de a evita
întâlnirea cu Tanenbaum.
Programming Ruby: The Pragmatic Programmer's Guide (Addison Wesley) - Ruby este un limbaj superb. Poate că încă nu este destul de răspândit (deşi este foarte popular în Japonia natală) şi poate că
obligaţiile de serviciu vă obligă la unelte mai banale. Dar
dacă simţiţi un început de blazare sau pericolul
plafonării, încercaţi Ruby. E un soi de Smalltalk îmbrăcat în
haine de scripting. E altceva. Vă va deschide noi orizonturi.
Presenting C# (Sams) - Un limbaj care beneficiază de forţa lui C++ dar care
aduce o tipizare mai strictă şi, astfel, o mai mare
siguranţă - e o recomandare suficientă pentru C sharp.
Iar dacă instrumentarul cu care lucraţi se trage din curtea
Microsoft, atunci se pare că oricum nu veţi rata întâlnirea cu acest
limbaj. Nu-i nevoie să ştiţi C++ sau Java, cum nu-i nevoie
să ştiţi COM... dar is more fun dacă
ştiţi.
Web Programming Unleashed (Sams) - E genul de "cărămidă"
menită parcă mai mult să vă descurajeze. Avantajul
ediţiei on-line este că nu-i vedeţi grosimea. Cu
siguranţă n-o veţi citi din scoarţă-n scoarţă,
dar veţi găsi adunată într-un loc cam toată problematica
domeniului, începând cu istoria Internetului şi până la streamming
audio-video.
În rest, cărţi care vă pot interesa dacă
(încă mai) utilizaţi versiuni din secolul trecut ale produselor
Microsoft: Windows 98, versiunea 6 de Visual-anything etc.
Dar... Dacă mergeţi la situl...
...veţi avea surpriza să găsiţi
referinţe la cărţi complete disponibile la InformIT.com,
dar care nu sunt listate pe sit. Chiar dacă unele nu-s foarte recente,
sunt cărţi care s-ar putea să vă folosească:
Using
Oracle8 (Que, 1998) - În materie de baze de date serioase... să fii cu
o versiune în urmă e o opţiune tipică. Deşi gura
marketingului e mare, inovaţiile nu vin peste noapte.
Teach
Yourself SQL în 21 Days (Sams, 2003!) - Desigur, nu vor fi 21 de zile. Dar
cartea este excelent structurată, porneşte de la cele 12 reguli ale
lui dr. Codd şi trece chiar şi prin extensiile procedurale ale
SQL-ului (PL/SQL şi Transact-SQL).
Special
Edition: Using HTML 4 (Que, 1997) - Nu mai este chiar fierbinte... dar e
completă. 46 de capitole (plus patru anexe) dintre care unele sunt foarte
preţioase (de pildă 19: Scripting the Object Model).
În plus, Free
Computer and IT Books vă mai oferă o mulţime de alte
referinţe utile. Deşi uneori vi se va cere cartea de credit...