Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in /web/htdocs/www.request.to.it/home/frank/scripts/sb_display.php on line 60
Caro programmatore.... 
martedì, marzo 14, 2006, 09:58 - FromOldBlog, Refactoring, Dev, Design
In risposta ai post del mio amico Enrico sui diritti dei programmatori e sulle paure dei programmatori, ripropongo riveduto e corretto un post dal vecchio blog aziendale:

Caro programmatore, sia tu un junior alle prime armi o un senior di provata esperienza (?!?!?), è così difficile?

E' così difficile scrivere classi con meno di 50 metodi?

E' così difficile scrivere metodi con meno di 50 righe?

E' così difficile usare nomi di variabili comprensibili?

E' così difficile scrivere codice che sia almeno un po' object oriented?

E' così difficile imparare un po' i principi di design?

E' così difficile imparare un po' i patterns?

E' così difficile non reinventare tutto da zero ed usare google?

Se hai risposto sì a tutte le domande.... cambia lavoro, stronzo! Perché il tuo codice di merda finirà nelle mani di qualcuno, e se quel qualcuno sono io spera di essere lontano... molto lontano.


Questo per sottolineare che i programmatori hanno diritti, paure, ma anche doveri: nei confronti di loro stessi e nei confronti dei loro colleghi.

C'è sempre qualcuno pronto ad obiettare: "Basta che funzioni".
Questo è un punto importante. Partiamo dal presupposto che nessun codice è esente dai bachi, ed anche se lo fosse presto o tardi dovrà essere modificato per assecondare le richieste di qualcuno.

Se scrivo del codice orrendo, ma funzionante (ora :) ), alla scoperta del primo baco sarà quasi impossibile farci manutenzione. Idem per una modifica. Farò più in fretta a riscriverlo. E questo anche per chi ha prodotto materialmente quella montagna di escrementi che si ostina a chiamare codice funzionante.

Non è poi così difficile. Puoi partire con un METODONE, ma poi lo prendi e lo scomponi in metodi più piccoli, magari ogni metodo lo testi, ma non lo pretendo :). Mi basta avere metodi piccoli, variabili con un nome comprensibile, classi di lunghezza ragionevole che facciano poche cose, ma fatte bene. Voglio codice che parla, non commenti che sono romanzi! Ah, i commenti... il commento dice che il metodo fa "toma", il metodo in effetti fa "soma", ma entrambi sono errati, perchè quel metodo doveva fare "roma".....

Meglio del codice bacato, ma su cui è facile fare manutenzione, che del codice che oggi funziona, ma che domani andrà riscritto perchè incomprensibile.

Il bello del software, è che è soft: lo puoi modellare come fosse pongo, adattarlo alla nuova situazione, ma devi metterti nelle condizioni di poterlo fare.




[ 15 commenti ] ( 2297 visite )   |  [ 0 trackbacks ]   |  permalink  |   ( 3 / 2186 )
Le regole della casa di FRANK 
lunedì, febbraio 20, 2006, 15:37 - FromOldBlog, Dev
Nel corso degli anni ho adottato alcune semplici regole che mi aiutano a vivere felice sul lavoro:
  • dopo le 17.00 nessun baco può essere risolto senza causarne altri, quindi non tentare… spegni e vai a casa
  • se è venerdì il punto 1 si applica dalle 16.00
  • se hai cominciato a risolvere un baco entro i tempi previsti dalle regole 1 e 2 e sono già le 18.00 spegni e vai a casa, la notte porta consiglio

Semplice, no?



[ 3199 commenti ] ( 4197 visite )   |  [ 0 trackbacks ]   |  permalink  |   ( 3 / 2240 )