29 gennaio 2010

Me la meno!

Ho recentemente scoperto il sito rosettacode.org, che tratta la soluzione di determinati problemi o design patterns in diversi linguaggi, oltre che come i vari linguaggi approccino problematiche diffuse.
Nella seconda casistica ricadono cose tipo la chiamata di funzione con il passaggio di parametri per nome, di cui avevo parlato tempo fa nel mondo Python.
Nella prima casistica ci sono approcci di linguaggi differenti a problematiche ben note, fra cui per esempio la scomposizione in fattori primi.
Problema matematicamente noto, quindi non particolarmente interessante, che in Python viene risolto facendo uso di alcuni costruiti che non avevo mai usato.
Mi sono quindi imbastito a confrontare il programma fornito, la sua versione ottimizzata e la mia soluzione al problema.
Dopo qualche tentativo andato in fumo a causa di un erroraccio di ottimizzazione da parte mia, sono fottutamente orgoglioso di dire che la mia versione disintegra la soluzione ottimizzata proposta, con un fattore che in svariati casi è vicina al 2 a 1 su numeri oltre le 10 cifre.
Le versioni originali le trovate qui, quelle python esattamente qui, mentre la mia, la potete leggere a seguire:



Per la cronaca ho preso e completato la versione Java proposta e l'ho paragonata alla mia e risulta piuttosto evidente la superiorità della mia soluzione. Il paragone è fra Java 1.5 e Py 2.6 (lo dico a beneficio di chi dovesse confrontare java 1.6 contro Py3 e trovare risultati magari eclatantemente diversi).
Il problema è, ovviamente, di sola mancata ottimizzazione del codice Java. Dico ovviamente perché Java è più performante di py di parecchie lunghezze, se si parla di calcoli puri fortemente iterativi. L'inghippo sta nel fatto che il codice Java è scarsamente ottimizzato, mentre quello Py, e il mio in particolare, è piuttosto ben limato.
Questo per ricollegarci in modo nuovo al discorso sui benchmark di qualche tempo fa: un algoritmo ottimizzato in un linguaggio lento spesso è prestazionalmente migliore di uno scritto alla buona in un linguaggio veloce.
Ovviamente ottimizzando per quanto possibile la versione Java (non ho trovato in 5 minuti di googling come fare la radice quadrata di un BigInteger) siamo andati a pari sino a cifre molto molto grosse, poi dai 16 digits in su....ha vinto lui. Capita.

Ultima nota di colore: guardate questa implementazione nel liguaggio False (mai sentito nominare): [2[\$@$$*@>~][\$@$@$@$@\/*=$[%$." "$@\/\0~]?~[1+1|]?]#%.]d:

Astonishing!
Read more

21 gennaio 2010

Ricerca continua

Oggi mi sono imbattuto in un gruppo dalla formazione insolita: batteria, piano/tastiere, piano/tastiere.
Insolito.
Sono giapponesi, cosa che credevo insolita, prima di scoprire che il sol levante fornisce una quantità immane di gruppi al postrock (che nell'ultimo anno e mezzo è al centro dei miei ascolti, soprattutto nelle versioni più metallizzate).

Questi si definiscono post-rock, jazz, instrumental, nu-jazz, math rock...si chiamano Mouse On The Keys...e questo è un assaggio....succulento:

Read more

18 gennaio 2010

Inizio letterario

Bene, siamo al 18 Gennaio e ho finito il mio 2° libro dell'anno. Dopo uno sforzo per liberarmi del deludente "Maledette Piramidi" entro il 2009, riuscito in extermis il 31 dcembre mi sono potuto buttare su "Black Flag", di Evengelisti. Avevo sentito nominare molto spesso l'autore e così ho provato un libro. Carino, senza essere niente di che. La trovata delle varie storie slegate fra di loro che si alternano nei capitoli del libro è piacevole, non una gran novità, e nel caso specifico un po' inconcludente. Ma tant'è. Promosso senza grande emozione.

Il secondo libro dell'anno è stato "L'Amuleto Di Samarcanda", primo libro della trilogia di Bartimeus, scritta da Jonathan Stroud. Facevo la posta al libro da parecchio, con qualche difficoltà a trovarlo nelle normali librerie e con scarsa voglia di pagare le spese postali per un singolo libro. Poi l'hanno stampato in edizione unica con gli altri due libri che compongono la trilogia e in questo formato me lo hanno regalato a Natale. Ho letto per ora solo il primo e inframezzerò con un altro libro natalizio per non andare in overdose tematica, ma devo dire che è proprio un gran bel libro. Fantasy senza grande impegno, scorre che è un piacere, con un po' di innovazione e tante scontatezze potrebbe anche non rivoluzionare il mondo, ma sicuramente vale la pena di essere letto. Veramente grande libro di pura evasione!

Speriamo di trovare il tempo e la voglia di continuare con questo ritmo per tutto il 2010...sarebbe veramente un bello stimolo interiore.
Read more

15 gennaio 2010

Ecologia sempliciotta

Qualche giorno fa ho sentito una trasmisione su radio popolare, una di quelle con microfono aperto a tema, che parlava di sprechi ed ecologia. Ho perso l'incipit, quindi potrei andare un po' fuori tema, ma tanto è solo uno spunto.
Una delle ascoltratici parlava di panni per ascigare invece che carta (Scottex o simili) e forse la stessa parlava di tovaglioli di stoffa invece che di carta.

Sono discorsi interessanti e che in buona parte condivido, ma...
A volte bisognerebbe abbandonare il mondo sempliciotto delle evidenze e addentrarsi in quello dei mostri che ci aspettano girato l'angolo.
Il mostro, in questo caso, si chiama "Bilancio Energetico".
In pratica, non si può limitare l'analisi degli sprechi e dell'inquinamento all'analisi dei volumi di spazzatura prodotta o di inquinamento durante l'uso.
Mi spiego con un esempio: pare che sino a un po' di anni fa il bilancio energetico dei pannelli solari fosse negativo, ossia l'energia prodotta per produrli e l'inquinamento causato dal processo produttivo, di distribuzione e di installazione fosse superiore all'energia che poi avrebbero prodotto e all'inquinamento che avrebbero evitato. Erano inidispensabili per certe situazioni, comodi per altri, meno inquinanti per casi particolari, ma in generale inquinanti.

E i tovaglioli di stoffa? boh.
Allora, non si abbattono alberi per crearli, ma pure il cotone deve arrivare da qualche parte e in certe zone del pianeta (Italia compresa) le foreste sono considerevolmente aumentate. Non fanno montagne di carta buttata biodegradabile, ma richiedono detersivo spesso non altrettanto biodegradabile per lavarli tutti i giorni.
Quindi meglio i tovaglioli di carta? Boh.
Non credo, sinceramente, ma potrebbe anche essere. Certo bisognerebbe mettere sul piatto molto più del fatto che la carta si butta e la stoffa si riusa.

Quando si confrontano in termini ecologici 2 stili di vita non si può ridurre tutto a una valutazione superficiale. Sicuramente è fuori dalla capacità dei singoli un paragone attendibile, ma non è fuori dalla portata delle persone capire che i porcessi produttivi sono un argomento complesso e banalizzarli spesso non aiuta.
Read more

7 gennaio 2010

Ano nuovo, vita nuova....

Così cantavano i "Re del sesso spinto" alcuni anni fa, strappandomi un sorriso e prestandomi un detto immortale che ormai mi accompagna puntuale a ogni cambio di anno.
Ma questa volta è successo di più, è finito un decennio.
A tutti gli over 30 questo fatto è già successo altre 3 volte.

La prima è stata il passaggio fra i '70 e gli '80. Avevo 3 anni, quasi quattro, quando è successo. Ovviamente non me lo ricordo, ma probabilmente non avevo idea di cosa fossero i '70 né gli '80. Non parlo di significati (dalla rivoluzione sessuale alla mercificazione del sesso, potrebbe essere un buon titolo per quel passaggio, o dall'impegno alla frivolezza), ma proprio dei numeri. 1980 è un numero che richiede una età maggiore per essere "capito".

Poi è successo di nuovo, puntuale ogni decennio, fra gli '80 e i '90. Allora potevo capire i numeri. La testa del 13enne vicino ai 14 è troppo piccola però per capire il senso del tempo e dei decenni. E poi, diciamocelo, a quell'età gli ormoni annebbiano qualunque possibilità di ragionamento a medio lungo raggio....diciamo più lontano del "come cazzeggio oggi pome". Il fatto di essere stato all'epoca un ragazzino molto sfigato non migliorava certo la situazione. Certo ho gioito della fine degli '80, che per il mio modo d'essere reputo una delle più buie epoche dell'era moderna, ma l'ho fatto a posteriori.

Poi finalmente si abbandona l'adolescenza ed eccolo lì, l'arrivo del 2000. Ah, finalmente un cambio di decennio su cui uno può riflettere...macché! A rovinare tutto ovviamente il cambio di secolo (difficile da capire a 23 anni) e il cambio di millennio (così grosso da essere insignificante per qualunque essere umano). Poi per gli intrippati dei numeri un anno potenzialmente bisestile perché divisibile per 4, ma che non lo dovrebbe essere perché è divisibile per 100, ma lo è ugualmente perché è divisibile per 1000. Un mega pippone.

E ora, finalmente, eccomi qui con il mio primo vero cambio di decennio. Il primo su cui possa riflettere, ora che di anni ne ho 33, quasi 34, una fidanzata convivente (la fidanzata non convivente c'era anche al giro precedente, anche se non ricordo se anche a capodanno c'era....mah), 2 bimbe.

Cavolo quante cose sono successe in questi 10 anni. Mi sa che mi toccherà qualche post di nostalgia...per ora mi rallegro di un altro "anno nuovo, vita nuova"
Read more

Sempre il migliore....

Read more