Month: December 2008

L’uranio costa e costerà

Ricorrere al nucleare ora e pensare di costruire nuove centrali è semplicemente un’errore di tipo economico-ambientale.

Purtroppo Berlusconi non lo capisce e continua a sparlare sulla costruzione di centrali nucleari. Questo fa perdere tempo a tutti, in quanto questa non e’ una soluzione auspicabile. E’ semplicemente una cazzata delle sue.

Ora, l’Italia ha un enorme potenziale geotermico ed è uno dei paesi che, insieme alla stato della California, può raggiungere la parità di grid con l’energia solare in pochi anni.

Un governo consapevole e capace punterebbe su queste due fonti, insieme all’eolico ed al risparmio energetico e ristrutterebbe la rete elettrica per fare in modo che sia efficiente e capace di sostenere un tipo di approvviggionamento di tipo distribuito.

E questo creerebbe dei lavori locali che potrebbero aiutare ad uscire dalla crisi (che tra l’altro non ha idea di come affrontare…)

L’uranio costa e non esistono metodi sicuri per lo smaltimento delle scorie radioattive. Nel frattempo il PD affonda in maniera paurosa dopo una direzione inutile. L’IdV rimane viva e vegeta tuttavia DiPietro dovrà introdurre dei metodi un pó diversi per avere un partito capace di scalare a livello nazionale ed introdurre elementi di democrazia. Forse a quel punto potremmo tranquillamente rottamare il PD.

Google is becoming evil? No (or not yet?)

When I saw this news on an italian journal about “Google approaching major cable and phone companies that carry Internet traffic with a proposal to create a fast lane for its own content” I was kind of skeptical.  It looks really odd to me that google, people who know internet really well, were thinking that was an action to take.

So I hit slashdot (yes, there you want to go for this type of information) and the story starts to be more clear.

It seems the news appeared on the Wall Street Journal but the way they reported was a little bit confused. The clarification of Google came from their policy blog where they reaffermed they support net neutrality.

The Net neutrality is one of the key attribute to have a lively and healthy network and I’m really happy there is a general agreement on this idea.

Is it pretty amazing the agile blog answer given by the google folks about this story. Is not that common for a big company…

The importance to have a VCS..

…Or as Bazaar just saved me the day

In bioinformatics the Good Programming Practices are always seen as a “too big solution for a too small problem”.

BioinfoBlog is not of this advise and I totally agree.

For example the use of a Version Control System is always seen as an overdue for our project (classical objection: my project is just a bunch of scripts… yeah.. sure….).

Let me try to convince you with a real life example and why today bazaar save my day (or at least a lot of time).

Scenario: I was running a custom simulation of this model available from Biomodels database when I saw that something that before was working it wasn’t anymore!

The model encodes the really complex series of biochemical reactions that permits DARPP-32 (a protein present in the spine of the Medium Spiny Neuron) to integrate different stimuli (Glutamate and Dopamine releases) and to respond accordingly.

for the brave biologist or interested scientists between you I promise I will speak about this later on….

To better understand the model and simulate different input today (ok, the simulation started yesterday night..) I was running a simulation using a stochastic simulator. The expected result would be to have different output due to the stochastic variability but still quite similar.

Bear in mind that I will show you 4 copies of the same simulation that should diverge only for the stochastic effect; this means you should expect 4 curves that will be more or less of the same shape.

d_it_4

Doh!

In this image you can see the time courses of the molecules of DARPP-32 (D) in the not phosporilated state; there is a dramatic drop of this form of the protein because the input of Calcium activate several kinases that are going to phosphorilate DARPP-32. The input of Calcium is applied (technically is a train of Calcium) at 100s

The discrepancy between the four trajectories is too big and cannot be addressed to the stochastic variability only, but it looks like in three of the iterations there is the lack of the input (No Calcium applied at all).

So I took a look to the trajectory of Calcium to see if it was missing:

Calcium input 4 different iteration

Calcium input 4 different iteration

Eureka! The Calcium is not applied in the 3 of the four iterations.

If you thinking where is bazaar and why it saved my day… don’t worry! I’m getting there… It just takes time…

So I know:

  • which is the reason of the Bug
  • I know that I refactored the code some time ago to have the possibilities to ran different kind of simulations and I very likely introduced the BUG
  • I know the simulation was working before this point

I fired up olive and try to understand where and when I’ve changed this bit

Olive GTK screenshot

Olive GTK screenshot

The selected revision is the one where I refactored the code and added the new Experiment class to better shape my inputs, and the one where most likely I’ve introduced the BUG.

Rewieving the changes that I made I found out that I don’t create a new list of inputs for each iterations, but only for the first one, so when the other iterations check for the input to apply, they don’t find anything!

So I fixed the BUG, and I re-run the simulation and I’ve got the right results.

4 iterations DARPP-32 BUG fixed

4 iterations DARPP-32 BUG fixed

If I didn’t have bazaar installed or I didn’t use any VCS, I had to spend a lot of time to debug my code this morning with no clear idea where to look and what to change. More over there would be also the frustration to get something to work again when it was working before.

So if you are in bioinformatics or you like/have to program think about to use a VCS. I’m using bazaar because it’s easy, it’s distributed and it has also a really good svn-bridge-plugin, so I can push all my code to the svn of my group 😉

No al suicidio energetico

Questo blog aderisce alla campagna No al suicidio Energetico.

Il governo ha deciso di tagliare gli incentivi per gli impianti solari. In controtendenza con tutti gli altri paesi ed in maniera completamente miope.
E’ chiaro che questo tipo di idea è semplicemente anacronistica, insensata e non comprensibile.

no al suicidio energetico

E’ possibile che l’Italia non meriti un governo che sia capace? Dico… uno mica tanti…

Update: Sembra che il promotore della catena sia ilKuda, quindi metto il link ufficiale della catena.

Python 3.0 . Here it comes…

Python 3.0 is out. Has been released yesterday and the first production stable release is ready to be grabbed. This release breaks the compabilities with the 2.x series. Nothing will work anymore 🙂

Things that I would like to to underline:

  • The print statment becomes a function (so you need the brackets) print "Hello World" becomes print("Hello Wolrd")
  • dict.keys() or dict.values() give a view that is a “lazy” list read-only. It’s an iterator and you cannot pop stuff out of it. If you need a proper list you have to force it with list(dict.values())

So take a look on the documentation to have a proper idea of what’s going on, read this small paper to know why there was the need to do this change and before start screaming around check this blog post too that give a clear answer to the question: “What to do about the python 3.0?”

Have fun with the new python….
I mean HH 🙂

Falsamente t’incanto

Su Mentecritica è uscito un ottimo pezzo a cura di Monica Amici che prende in considerazione uno dei problemi più grandi che stanno affliggendo il panorama italiano.

Il faro è puntato sul diritto del telespettatore di ottenere notizie vere dal mezzo televisivo e dalla mancanza di tutele adeguate che proteggano questo diritto.

Il punto secondo me fondamentale, che smarca decisamente questo ottimo articolo (di cui consiglio caldamente la lettura), è l’idea di una proposta di legge che sia capace di arginare il fenomeno, con un occhio speciale alle cariche istituzionali.

Le cariche dello Stato, dato il loro grado di autorità, non devono assolutamente dire falsità ai Cittadini. L’autorevolezza della posizione e la dignità della persona che venivano utilizzate in passato come garanzie a fronte di questo rischio non sono oramai più sufficienti.

Questa posizione nasce dal dal fatto che è diventata una pratica comune da parte di numerose cariche dello Stato, in primis il Presidente del Consiglio Berlusconi, l’affermare una cosa, negarla ed infine smentirla. E’ palesamente logico che almeno una delle due posizione è falsa e quindi una delle due affermazioni è una falsità.

Questa che sembra una banalità non deve e non può essere considerata tale perchè

“una bugia ripetuta cento, mille, un milione di volte e diventa una verità” (cit. Goebbels).

Mi vengono in mente sono solo tre possibili soluzioni:

  • Utilizzare lo strumento legislativo come scudo di fronte all’affermazione di una falsità. Qualora questa si verificasse le ripercussioni dovrebbero essere enormi e tempestive. (Ricordo che lo scandalo dell’amministrazione Clinton era legato ad un problema di questo tipo. Non tanto quello che succedeva sotto il tavalo dello studio Ovale, che alla fine è vita privata, ma la menzogna che il presidente Clinton aveva rifilato al popolo americano quando venne interrogato sui fatti)
  • Sperare di avere una migliore classe dirigente, la cui dignità ed integrità morale sia garante della veridicità delle sue affermazioni
  • Analizzare ogni affermazione con piglio critico e giudicarla sulla base di informazioni provenienti da altre fonti. Più grande è il numero delle fonti utilizzate per il controllo incrociato, migliore sarà il grado di fiducia che si potrà attribuire all’affermazione ed attestarne la sua veridicità.

Dato che io non scrivo leggi, e sono molto titubante sul fatto di un inprovviso e subitaneo miglioramento della classe dirigente, mi limito alla terza opzione.