I programmatori che leggono libri relativi alla programmazione sono ancora rari? [chiuso]


21

Entrambi in Code Complete di Steve McConnell e The Pragmatic Programmer di Andrew Hunt e David Thomas, sostengono che la maggior parte dei programmatori non legge i libri relativi alla programmazione come un'abitudine, o almeno non abbastanza spesso. Questo è ancora valido? I programmatori che leggono tali libri sono ancora rari?

Devo ammettere che solo di recente ho iniziato a leggere (e ora non riesco a smettere; sta bruciando un intero nel mio portafoglio!). Prima ero effettivamente contrario e sostenevo che sarebbe meglio scrivere programmi piuttosto che perdere tempo a leggerlo. Ora mi rendo conto che il risultato migliore, almeno per me, è fare entrambe le cose.

EDIT: in realtà intendevo qualsiasi tipo di libro che sulla strada o in un altro era legato alla programmazione; che si tratti di un linguaggio, di una tecnologia, di un modello, di un paradigma particolari, qualunque cosa purché possa essere utile per te come programmatore. Mi riferivo solo a Code Complete e The Pragmatic Programmer perché è lì che ho letto che i programmatori di solito non leggono tali libri. Sarebbe sembrato strano se il titolo avesse appena letto "I programmatori che leggono libri sono ancora rari?"

Risposte:


19

Sembra che tutti stiano rispondendo a questa domanda personalmente, come in "Ho letto cose del genere". Tuttavia, come persona che bazzica in questo sito, sei già molto al di sopra del tuo programmatore IMO "medio". Quindi questo distorce drammaticamente i numeri. Per rispondere direttamente alla domanda: sì, i programmatori che leggono libri sono una razza rara. Ho lavorato con dozzine di programmatori e ne conosco solo due o tre che raccolgono un libro per risolvere un problema. La maggior parte di loro cercherebbe su Google un determinato programma o semplicemente fisserebbe lo schermo sperando in una fonte di ispirazione divina. :-)

E i libri di "teoria" come Pragmatic Programmer e Code Complete vengono letti ancora più raramente dai programmatori medi. Se un programmatore sta per leggere un libro, è più probabile che sia un libro tecnico sulla lingua, la struttura o la tecnologia specifica su cui stanno lavorando. I libri "soft" non sono nemmeno sul radar della maggior parte dei programmatori.


6

Non riesco a smettere di far crescere la mia lista dei desideri di Amazon. Il libro più recente su cui sto lavorando è Clean Code di Robert C. Martin (Zio Bob). Recentemente un gruppo di programmatori nella mia zona ha persino creato un club del libro, in modo che possiamo imparare insieme le migliori pratiche e scambiare le nostre esperienze. Non penso che sarei lo stesso programmatore se non leggessi libri sulla programmazione. C'è una grande ricchezza di materiale là fuori ed è bello quando qualcuno lo condensa per te e ti dà un punto di partenza prima di iniziare a sperimentare da solo.


3
Un club del libro sembra un'ottima idea!
JBR Wilkinson,

5

Li ho letti, quindi aggiungo 1 all'elenco dei tuoi avvistamenti. (Quanti prima di uscire dall'elenco delle specie in pericolo?)

Scherzi a parte, sono sorpreso che al momento i migliori esponenti del voto siano le persone che affermano di vedere poco valore nei libri di programmazione. Ci sono certamente alcuni su cui vorrei non aver speso i soldi, ma ce ne sono diversi che mi hanno completamente aperto gli occhi su nuovi concetti e tecniche e che mi hanno reso un programmatore migliore. Per esempio:

  • The Zen of Code Optimization di Abrash - Penso che questo sia il motivo principale per cui oggi sono un programmatore in tempo reale.
  • Ruminazioni su C ++ di Koening & Moo - Il vero valore di iteratori e STL non ha fatto clic fino a quando non ho letto questo.
  • Refactoring di Fowler - Mi ha insegnato come strutturare e ristrutturare il codice.
  • Programmazione estrema spiegata da Beck - Anche se non ho mai bevuto completamente l'agile kool-aid, questo libro ha cambiato il modo in cui penso ai requisiti, ai test e alla gestione del processo di sviluppo.

Ho imparato a programmare a scuola, ma non ho imparato a programmare bene fino a quando non ho letto dei libri fantastici.


5

Durante l'intervista con gli sviluppatori ho notato che quelli che si comportano meglio nelle attività tecniche (sia verbali che pratiche) e (molto più importante) comprendono i motivi per cui stanno facendo quello che stanno facendo sono tutti gli sviluppatori che leggono almeno il libro occasionale. Non penso che sia del tutto una coincidenza.

Anche se puoi certamente utilizzare Google per risposte rapide e i blog possono essere eccellenti per la copertura approfondita di cose specifiche, i libri penso che ti offrano una visione più coordinata degli argomenti che trattano. Inoltre, fornendo le informazioni in un contesto diverso, aiutano la conoscenza a rimanere meglio nella testa delle persone. Anche se è qualcosa che già conosci, penso che sia prezioso avere qualcosa che convalida tale conoscenza.

Infine, se qualcuno sta leggendo libri sull'argomento in cui sta lavorando, quasi sicuramente significa che sono sinceramente interessati a ciò che stanno facendo e non si limitano a sfuggire alle cose - per lavori basati sulla conoscenza o creativi questo è molto importante se stai cercando il miglior staff.


4

Presumo che tu stia parlando di libri sulla pratica della programmazione e dello sviluppo software piuttosto che su tecnologie specifiche ...

Personalmente, tendo ad evitare questi libri perché così pochi hanno qualcosa di utile da dire. Per ogni coppia di programmatori pragmatici, c'è un mucchio di autori che spingono le loro metodologie / pregiudizi / grandi teorie unificate ... e mentre può essere molto divertente ascoltarli discutere in un podcast, leggere i loro libri è solo un po 'più divertente di leggendo le loro liste della spesa ... e probabilmente meno utile. Avrai molti degli stessi consigli sui forum e ... qualunque sia questo posto ... con l'ulteriore vantaggio che i disaccordi vengono discussi tra persone che li credono piuttosto che tra l'autore e i suoi uomini di paglia.

La carne in Code Complete, Mythical Man-Month, ecc. Sono osservazioni che i lettori più esperti hanno almeno inconsciamente familiarità con già. Ciò li rende particolarmente utili per rafforzare affermazioni e insegnare ai programmatori intermedi .


Sono d'accordo, la maggior parte delle cose che posso leggere da un libro, posso trovare molto più efficacemente sul web. L'unico motivo per cui ho appena ordinato il mio primo libro sul software è perché la società da cui ho appena iniziato offre un budget di 150 euro (relativo al campo) all'anno.
Matthijs Wessels,

Non sono d'accordo. Ultimamente ho imparato pratiche agili e non avevo idea di come usare tali pratiche fino a quando non ho letto libri su Test Driven Development e Integrazione continua da alcuni dei "Kent Beck Signature Books".
Brian D.

4

Adoro davvero programmare libri. Ne ho più di 150. E ancora spazio per altro.


3

Beh, non posso davvero parlare con altri programmatori.

Provo a leggere libri per computer di alta qualità . Attualmente sto lavorando a un read-through di Mythical Man-Month.

Il mio prossimo libro è probabilmente il libro Russell / Norvig AI o la stima del software di McConnell. In un futuro non molto lontano, incombe il Pratico Lisp Comune di Seibel.


Per interesse, come giudichi "alta qualità"? Recensioni / classifiche di Amazon? Consigli personali?
JBR Wilkinson,

@JBRW: libri che sembrano essere generalmente concordati come molto buoni. ad es., Codice completo. Inoltre, anche i libri seminali tendono ad avere una buona qualità.
Paul Nathan,

3

Leggi, leggi, leggi, leggi ... Dai libri, dai blog, qualunque cosa ... Meglio dai buoni libri, ma anche leggere libri criticamente cattivi aiuterà. Ma continua a imparare. Continua a imparare ogni giorno.


3
"I leader sono lettori" - Tony Robbins, "Awaken the Giant Within"
JBR Wilkinson,

2

Le ho lette quando avevo appena iniziato, ma ora la maggior parte dei libri che ho in giro tende a concentrarsi sulla parte non codificante dello sviluppo del software (ad es. La Guida pratica alla prevenzione dei difetti , Stima del software: Demistificare l'arte nera ), libri di consultazione o libri incentrati su concetti ristretti di informatica.

Il problema più grande che ho è che i libri specifici sulla tecnologia tendono ad essere obsoleti in un paio di anni (ad esempio, non molte persone scrivono Visual Basic 6 in questi giorni), quindi ho scoperto che investire su quei libri che possono diventare obsoleti tende ad essere un cattivo investimento, tanto più quando con quante informazioni sono disponibili online in questi giorni. Allo stesso modo, alcuni dei libri su cose come i principi del design tendono ad essere ignorati a favore di alcuni dei siti veramente buoni là fuori come A List Apart .


2

Il motivo per leggere libri è migliorare le tue conoscenze e abilità. Ciò implica due cose: (1) devi riconoscere che hai spazio per migliorare e (2) devi voler migliorare. Molti dei programmatori che ho incontrato avevano l'ego delle dimensioni di pianeti. Un grosso pezzo degli altri era felice di andare avanti.


1

Ho ricevuto un nuovo Kindle (Wifi + 3G) la scorsa settimana e lo adoro, non riesco a smettere di leggere. Ho comprato diversi ebook tecnici sia da Amazon che da altri editori, e li sto scavando a un ritmo incredibile.

I libri fisici ora mi sembrano terribilmente antiquati. Non me l'aspettavo così presto.


Ho letto che per studiare i libri di carta sono meglio. Navigazione e note.

Ho trascorso molto tempo usando la versione mobile di O'Reilly Safari sul mio kindle. Lo consiglio vivamente. I libri vengono riformattati per un rendering ottimale e, se necessario, puoi ingrandire le immagini.
Joeri Sebrechts,

1

Non leggo un libro tecnico da anni ... letteralmente anni.

In parte riguarda la disponibilità di informazioni altrove. Blog, articoli, white paper, siti di riferimento, siti di supporto alla pari come SO ...

In parte ha a che fare con le spese e l'impraticabilità dei libri di carta. Pensa ai numeri che hai usato per leggere qualcosa come vangelo solo per scoprire che era soggettivo, o forse obsoleto. Anche i manuali di riferimento risalgono rapidamente, data la natura in continua evoluzione del nostro mondo.

Non sto bussando libri tecnici di per sé, ma sono passati i giorni in cui erano la tua unica fonte di informazioni su un argomento tecnico. Ora riceviamo le nostre informazioni da una varietà di fonti.

Confesso che mi mancano un po ', ma almeno per me i tempi sono passati.


1

Una storia personale:

Una volta ho fatto una presentazione a una sala piena di 50 o 60 sviluppatori su alcune cose relative a .NET (hanno lavorato tutti per la stessa azienda).

Microsoft stava sponsorizzando il discorso e mi ha dato un paio di copie del libro "Object Thinking" di David West (di Microsoft Press).

Per coincidenza, avevo appena letto quel libro e l'ho trovato una lettura molto bella. L'ho anche consigliato al pubblico spiegando che avevo alcune copie da regalare e che se qualcuno era interessato, tutto quello che dovevano fare era chiederne uno.

Diverse persone si avvicinarono per sfogliare il libro, ma nessuno di loro, ripeto, nessuno , nemmeno una persona decise di tenerlo.


Non incolparli per non aver raccolto il libro. Object Thinking è il libro meno pratico su OO che abbia mai letto.
Ed James,

0

Vorrei ancora prendere un libro per imparare le basi di una lingua. In questo modo posso guardarlo e avere un'idea di ciò che sto facendo in qualsiasi momento del giorno / settimana e non doversi preoccupare di un laptop. Dopo aver letto il libro, inizierò ad imparare con il codice.

Teoria, quindi pratica.


0

Non compro tanti libri di programmazione in formato cartaceo come una volta. Ho un abbonamento a Safari Books Online , dove per il prezzo di un libro al mese, ho accesso illimitato al testo completo di migliaia di libri di programmazione (e altri) di editori come O'Reilly, John Wiley & Sons, Addison- Wesley e altri.

Ho anche un Kindle di prima generazione e talvolta compro libri di programmazione per questo; tuttavia penso che il grande Kindle DX (che è uscito dopo che ho ottenuto il mio) sarebbe una piattaforma migliore per il materiale tecnico.


0

(Caspita, 5 voti positivi e 5 voti negativi - questa opinione sembra essere più controversa di quanto immaginassi!)

Non leggo libri come Code Complete o simili, né sento che "dovrei". Che cosa significa questo, comunque? Cosa succede se non lo faccio?

Prima di tutto, non credo che questi libri mi rendano un programmatore migliore. Potrebbero lavorare per altre persone, ma non per me. Le informazioni fattuali che contengono non sono molto dettagliate o tecniche, quindi conosco già la stragrande maggioranza di esse. Il resto sono opinioni con cui posso o meno essere d'accordo, ma che sicuramente non adotterò con slavry.

L'unica letteratura relativa alla programmazione che ho trovato davvero interessante da leggere sono documenti puramente tecnici con un minimo assoluto di soggettività . I miei preferiti finora sono la specifica del linguaggio C # 4.0 e lo standard Unicode 5.0. Altre persone trovano questa lettura molto secca e noiosa, ma trovo che coinvolga la mia mente e potenzialmente fornisca informazioni che non conoscevo già.

Aggiornamento 2010-ott-07: ho appena fatto notare il programmatore pragmatico , quindi ho guardato le prime pagine su Amazon. Nella sezione "Chi dovrebbe leggere questo libro?" Dice: "Forse ti senti frustrato dal fatto che non sembri raggiungere il tuo potenziale. Forse guardi i colleghi che sembrano usare strumenti per rendersi più produttivi di te. ”Uhm, no. Niente di tutto ciò vale per me. Sono frustrato perché i miei colleghi sono molto meno produttivi di me (e non se ne curano). Sento che sto raggiungendo il mio potenziale (che poco ne ho, comunque). Quindi si Inutile leggere questo libro. Solo un caso emblematico.


1
Lo standard Unicode? Veramente? Vedo una montagna di grandi informazioni che possono essere estratte dallo standard C #, ma Unicode?
Robert Harvey,

1
@Robert: sono sorpreso che tu lo dica. Le specifiche C # riguardano solo la programmazione. Lo standard Unicode fornisce una vasta gamma di informazioni sulla vita reale sui sistemi di scrittura del mondo, la loro storia, le loro relazioni con le lingue, la loro geografia e il loro bagaglio culturale, oltre a tutte le cose di programmazione / tecniche.
Timwi,

2
-1 Se pensi che Code Complete o simili libri non ti insegnino nulla ...: - /
Khelben

@Timwi: è molto facile sostenere che il libro X non ti insegnerà nulla se non l'hai letto ... ma come potresti saperlo?
JBR Wilkinson,

@JBRWilkinson: non pretendo di saperlo per un libro che non ho letto. E 'solo la mia esperienza con i libri che ho già letto.
Timwi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.