Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/w41258/domains/chiappucci.it/public_html/ServerScript/ban-ip/class.BanIp.php on line 15
agosto, 2010 | Guido Chiappucci's Blog

Guido Chiappucci's Blog

Archive for agosto, 2010

Le verità meno conosciute della programmazione

without comments

Oggi vi riporto la traduzione di un articolo che riporta la pura e semplice verità!

  • Un programmatore spende solo il 10-20% del suo tempo scrivendo codice, la maggior parte scrive circa 10-12 righe di codice al giorno che andranno poi effettivamente nel prodotto finito, senza tenere conto della loro abilità come programmatori. Un buon programmatore spende la maggior parte del suo 90% di tempo pensando, ricercando e sperimentando per trovare il miglior design possibile. Un cattivo programmatore spende il suo 90% di tempo debuggando casualmente il codice e controllando se funziona.
  • Un buon programmatore è 10 volte più produttivo di un programmatore medio. Un ottimo programmatore è 20-100 volte più produttivo di uno medio. Queste affermazioni non sono esagerate, studi l’hanno dimostrato sin dal 1960. Un cattivo programmatore non solo è meno produttivo, non solo non porterà a termine il lavoro, ma creerà molto lavoro e mal di testa agli altri per mettere a posto ciò che ha fatto.
  • Un ottimo programmatore spende molto poco del loro tempo scrivendo codice, o almeno codice che finirà nel prodotto finito. Un programmatore che spende molto tempo a scrivere codice è troppo pigro, troppo ignorante o troppo arrogante per cercare soluzioni esistenti a vecchi problemi. Un ottimo programmatore è maestro nel riconoscere e riutilizzare modelli comuni. Un buon programmatore non ha paura di refattorizzare (riscrivere) il suo codice costantemente per raggiungere il design ideale. Un cattivo programmatore scrive codice con mancanze in integrità concettuale, non-ridondanza, gerarchia e modellizzazione, quindi difficilmente refattorizzabile. È più facile buttar via il codice cattivo e ricominciare che cambiarlo.
  • Il software obbedisce alle leggi dell’entropia, come tutto il resto. Cambiamenti continui portano alla “putrefazione” del software, erodendo l’integrità concettuale del design originale. La “putrefazione” del software è inevitabile, ma un programmatore che non tiene l’integrità concettuale in considerazione crea un software che decade così velocemente che diventa un spreco ancor prima di essere completato. Il fallimento entropico dell’integrità concettuale è probabilmente la più comune ragione per il fallimento di progetti software (la seconda è la consegna di qualcosa di diverso da quello che voleva il cliente). La “putrefazione” del software rallenta i progressi esponenzialmente, moltissimi progetti sforano enormemente le timeline e il budget prima di essere cancellati.
  • Uno studio del 2004 ha scoperto che il 51% dei progetti fallirà in un aspetto critico e il 15% fallirà totalmente. Questi dati sono un miglioramento rispetto al 1994, quando fallivano completamente il 31% dei progetti.
  • Nonostante la maggior parte dei software sia sviluppato da gruppi di persone, non è un’attività democratica. Solitamente solo una persona è responsabile del design, gli altri membri del gruppo si occupano dei dettagli.
  • Programmare è un lavoro duro. Un’intensa attività mentale. Un buon programmatore pensa al suo lavoro 24/7. Scrive le parti più importanti di codice sotto la doccia o mentre sogna. Siccome il lavoro più importante è fatto lontano dalla tastiera i progetti software non possono essere accelerati spendendo più tempo in ufficio o aggiungendo più persone al progetto.

Un ringraziamento al mio collega Giacomo che mi ha aiutato nella traduzione.

Written by Guido

agosto 25th, 2010 at 4:10 pm

Posted in Internet,Programmazione

Tagged with