altre destinazioni

ultimi post

ultimi commenti

tag principali

categorie

archivi

powered by

  • WPFrontman + WP

friends

copyright

  • © 2004-2011
    Ludovico Magnocavallo
    tutti i diritti riservati

Voi come leggete il codice?

21 febbraio 2013

1 commento

Sto facendo un lavoro per una società abbastanza nota (vi dico solo che è un plugin per WP), e alcuni dei commenti fatti al mio codice dal mio referente mi hanno un po’ spiazzato: per capire cosa intendesse ho dovuto fare lo sforzo di uscire dalle mie consuetudini di sviluppo.

Dopo qualche meditazione, sono giunto alla conclusione che i nostri rispettivi approcci alla lettura del codice sono radicalmente diversi. Il mio approccio, quando prendo in mano una classe che non ho mai visto, è prima di tutto di farmi un’idea generale di cosa faccia guardando i nomi dei metodi nel class browser. Fatto questo, scendo se è il caso nel dettaglio dei metodi che mi interessano o mi sembrano cruciali per il suo funzionamento. Per me, quindi, un metodo usato una volta sola non solo ha poco senso — e ne privilegio quindi il riuso rispetto ad altre considerazioni –, ma è addirittura dannoso in quanto inquina la comprensione a colpo d’occhio del codice.

Il mio interlocutore invece segue un approccio diverso: quando prende in mano una classe guarda subito al costruttore, e parte da lì per seguire un eventuale flusso di codice. Per lui un metodo usato una sola volta ha un senso, in quanto incapsula determinate operazioni e — se il nome è scelto con criterio — nasconde parte del codice rendendo più semplice e veloce seguire un eventuale flusso di esecuzione.

Nel caso specifico (un plugin per WP) è probabile che il suo approccio abbia senso, dato che il codice viene eseguito più o meno in sequenza, anche se la sequenza è pilotata dai vari hook di WP, cui sono agganciati i metodi pubblici della classe. Certo è che lavorando di solito in Python/Django, un approccio di questo tipo mi sembra un po’ stravagante.

Sarei curioso di sapere come altri leggono il codice, e se la differenza è dovuta più al framework (WP) che porta a pensare in maniera sequenziale, al linguaggio usato, o se è soprattutto un approccio personale. BTW, questo post è scritto usando il plugin di cui sopra, secondo il principio dell’eat your own dogfood.

Bachechina annunci: lavoro Java e PHPday 2008

5 dicembre 2007

2 commenti

Se programmate in Java e siete alla ricerca di un lavoro part-time per i prossimi mesi, date un’occhiata all’annuncio pubblicato ieri sul blog di Enrica. Se invece siete uno di quei brontosauri che ancora usano PHP (Fullo perdonami ma non ho resistito), il phpDay 2008 potrebbe fare per voi.

Spigolature / 15

14 dicembre 2006

3 commenti

YouTube è scritto in Python. O almeno così sembra dalla frase di Cuong Do, Software Architect di YouTube, apparsa recentemente su python.org. La frase suona più o meno così: “Python è veloce quanto basta per il nostro sito e ci permette di sfornare funzionalità facili da mantenere a tempo record, con un numero minimo di sviluppatori”. State ancora programmando in PHP? (Fullo se ti fischiano le orecchie sai perchè) Via e via.

Reazioni a catena. Per scaramanzia e esaurimento totale di enrgie nessuno ci aveva pensato, ma come prevedibile la pubblicazione su Nòva di oggi della mappa della blogosfera sta generando reazioni a catena. Qualche dettaglio in più nei prossimi giorni.

Spigolature / 12

29 novembre 2006

20 commenti

Curiosando tra gli ultimi post raccolti dal nostro spider è saltato fuori un bel post di Tagliablog su Second Life, con immagini della sala conferenze virtuale di Sun Microsystems e un video (un po’ vuoto a dire il vero) della Second Life Liberation Army. Stavo giusto pensando l’altro giorno di farmi un giretto in SL, e avevo addirittura iniziato a salvare i link ai tutorial del suo linguaggio di programmazione, poi per fortuna la paura di ricascare in un’addiction come quella che ho avuto per Ultima Online (btw, ho ancora i miei account “congelati”, se vi interessano chiedete pure) mi ha ricondotto a più miti consigli.

Le architetture distribuite saranno il futuro, ogni tanto qualcuno (giustamente, imho) ne riparla e questa volta è il turno di Tim Bray. Parole sante, e abbasso i thread! (E viva libevent e spread). Sul blog di Joyeur intanto Jason mette i puntini sulla i di grid e fa le pulci ad Amazon S3. Già che siamo in tema, se state finendo scienze dell’informazione date un’occhiata al master di Tanenbaum, è in Olanda non costa molto e magari vi interessa (e sul CV fa una gran figura). Io ero stato ammesso due anni fa, perchè sono rimasto qui è una storia lunga.

Caymag cerca (per conto terzi, la Facoltà di Design del Politecnico di Milano) uno sviluppatore PHP. Bello vedere passare qualche offerta di lavoro anche qui in Italia, e oltretutto questa è “tempo a pieno” (sic), cosa rara di questi tempi. Sempre in tema PHP, Napolux e Giobi hanno lanciato PHPtips.it, blog dal formato decisamente commerciale che ospita “trucchi consigli e news dal mondo PHP”. Aggiornamento: con incredibile rapidità, Francesco segnala nei commenti che anche lui ha pubblicato un’annuncio di lavoro analogo ieri.

Cosa c'entra Israele con PHP?

28 luglio 2006

4 commenti

Le ripercussioni di quello che sta succedendo in Libano si sono fatte sentire anche nel bozzolo tradizionalmente poco sensibile agli avvenimenti politici degli sviluppatori Open Source: come riporta oggi Slashdot, uno dei core developer di PHP ha lasciato il progetto dopo sei lunghi anni di collaborazione. La mail di Jani Taskinen non fornisce spiegazioni, ma scorrendo l’archivio della lista php.internals non è difficile farsi un’idea di cosa sia successo. Questa la spiegazione di Andrei Zmievski:

He was ranting on IRC about Israel bombing a UN post in Lebanon. He used to do the same job for UN, by the way.

E questo il log della conversazione su irc:

Jul 27 17:16:21 _sniper_ I will also quit this project. As long as it’s backed by some Israel company, I don’t want to have anything to do with it.

La società israeliana in questione è Zend, costituita da Zeev Suraski e Andi Gutmans dopo la riscrittura completa del core di PHP per la versione 4.

questo post continua, leggi il resto

Aggiornamento server

26 luglio 2006

10 commenti

Poche novità in questo paio di giorni sulla top100 (che ormai si avvia a diventare una top 500), dato che il traffico sostenuto ha fatto un po’ soffrire il vecchio e stanco Celeron 900 che, oltre alla lista, ospita i blog miei e di Enrica e le nostre caselle di posta.

Mi è toccato quindi mettere le mani alla configurazione dei server HTTP, per sostituire Apache con qualcosa di più agile e leggero: due-tre lighttpd+fcgi sull’interfaccia di loopback, con davanti pound sull’indirizzo pubblico a fare da reverse proxy e smistare le richieste al servizio giusto, lasciando Apache a gestire solo l’accesso ai repository SVN. Dopo un po’ di smadonnamenti, ricompilazioni varie, e letture di man pages il più è fatto: da stasera tutto il traffico HTTP è smistato da pound, e la top100 gira su lighttpd con gli script di init come dio comanda.

questo post continua, leggi il resto

Ruby e i programmatori con la puzza sotto il naso

15 luglio 2006

7 commenti

Rispondo qui ad un commento di Alberto al mio ultimo post sul benchmark dei tre principali framework web, dato che alcune sue affermazioni meritano una risposta più elaborata di quanto possa entrare in un commento. Nel mio post, commentando le pessime performance di PHP, scrivevo:

Dopo anni di dominio incontrastato, il primato di PHP per le applicazioni web scricchiola sempre di più: il pessimo design del linguaggio, la qualità mediocre della community, lo scimmiottamento di Java in PHP 5 mentre il resto del mondo Open Source predilige linguaggi più lineari come Python e Ruby, e ora le performance scadenti.

Ad Alberto, sempre convinto dell’eccellenza di ezPublish (wink) le mie affermazioni non sono piaciute:

Mi sembra un po’ azzardato dire che il mondo opensource predilige ruby/rails. Ad ogni modo io credo che ruby sia un ripiegamento per i programmatori java con la puzza sotto il naso, quelli che “php è poco professionale”.

Resta il fatto che php5 è ancora poco utilizzato, ma quando verrà utilizzato su larga scala magari vedremo migliorare anche le performance.

questo post continua, leggi il resto

Rails, Django o Symfony?

14 luglio 2006

6 commenti

Interessante benchmark (via) sulle performance dei tre framework più diffusi per Ruby (Rails), Python (Django) e PHP (Symfony). I risultati sono abbastanza sorprendenti, non tanto per le migliori performance di Django rispetto a Rails, quanto per le pessime performance di PHP.

Dopo anni di dominio incontrastato, il primato di PHP per le applicazioni web scricchiola sempre di più: il pessimo design del linguaggio, la qualità mediocre della community, lo scimmiottamento di Java in PHP 5 mentre il resto del mondo Open Source predilige linguaggi più lineari come Python e Ruby, e ora le performance scadenti. Io da un po’ di tempo sono passato a Django, voi che aspettate?