For hire?

There is a time when you want to switch sides. I’m moving to Berlin soon, though not as a startupper this time. Davide meets the meat market. Contact me for an up-to-date résumé. Don’t know much about me? I’m a computer engineer, a knowledgeable long time pythonista, an experienced full-stack developer, a data nerd, and a few other labels that serve the purpose of saying that I have studied, worked and hacked in a number of fields. I have a full beard, and I heard that gurus with a beard deserve their authority role. That must explain why people ask me for advice, even when I hold rather unorthodox views.

Talking about unorthodoxy, I have a secret side project. I want to explore the emotional ramifications of the engineers and coders jobs. What it takes, emotionally, to be one that achieves their results by thinking and planning. What is the link between our problem solving attitude, the fun we find in it, and our primal mind. And what makes it more or less stressful. Most importantly to me, how this concerns human connection, communication, relationships, and love. Working as an engineer seems to be the opposite of loving human connection. Our work is depicted as cold, which might be true to a large extent. What does it mean for a warm human being, with all their needs and emotional world. I have a few answers, and as someone who cares about the emotional side of the world I want to know more.

I’m for hire. This means I’m going to start a new relationship with you, or your team, or some other team. I’m going to be part of the emotional daily world of someone. This is one of the oft-forgotten meanings of “working together”. I’m trained as a nonviolent communicator, meaning that I want to experience empathy and care for one’s needs even when I meet competition and hostility, or coldness and detachment, and break the getting mad cycle. This is pretty much what it means for me to work for someone: we have needs, we have a strategy to meet them (the project and the compensation), and we take care of those. With my uberpowered engineering skills and my work experience, if this is what it takes.

Hello meat market!

Update: yes, I met the meat market. I’m now working for a very promising company based in Berlin.

How a startup accelerator in Italy can make an impact

If you don’t know about TechPeaks you are missing out. Yeah, right, just another startup accelerator. American startuppers are so used to see new accelerators flooding the scene. Like, too many.

TechPeaks is one of the many new European attempts at having the startup scenes flourish. Except not. It comes with a few quirks and perks that make the program stand out, and pose more than a challenge. It’s a six months program, compared to most three months programs out there, and that’s already a challenge on its own because six months visas are not so easy to obtain in Italy.

Oh, right, did I mention that TechPeaks is Italian-based? As an Italian I wouldn’t have expected people coming from all over the world to a country as hostile to entrepreneurship as Italy, to start their own business. A crazy bet, but I think it’s paying off. And the program is funded with government money. In Italy. To be fair it’s money from the Autonomous Province of Trento, one of the few local administrations that has some power over how to spend their own tax money.

The Province is providing equity-free grants to select startups. Startups may already be existing, but what’s happening instead is that teams are forming within the program, and they are pitching brand new ideas. And getting funded. The idea behind the program was to gather talented individuals and let them build something. The vision that drives this craziness is to bridge the gap between education (as provided by governments) and private investment, using public money. As crazy as it sounds, it could work.

As a techpeaker I’m seriously impressed at the effort the TechPeaks team is putting out to overcome the problems a troubled territory such as Italy has. Italian company law requires founders of newly founded companies to pour no less than 10k euros, including mandatory legal expenses. This is putting a lot of young entrepreneurs off, especially considering that in Italy it’s very uncommon to be financially independent at a young age. TechPeaks is trying to cover part of the expenses and provide legal advice, even if Italian laws are changing in these very days. And still taxes and unwinding costs are scaringly high.

Out of this hostile context, techpeakers are not showing discouragement. Sure, some people are worried at the difficulties, but most embrace the opportunities this crazy experiment is trying to create. It’s our (tough!) responsibility to make it work, and to be an example of disruptive change in this environment.

Wish me good luck, as I try to make my experience have an impact. And as I decide the future of my company.

Baking a MacBook Pro alive

I got this old MacBook Pro (Early 2006) with a ATi Mobility Radeon X1600. At times it would display all kind of graphics glitches on the display. At other times it wouldn’t boot at all.

I knew it was a hardware problem, and googling around I found that some crazy guys got it back working by taking the logic board (that’s how Apple calls the main board) out and putting it in the oven. The explanation was that the heat would allow the BGA soldering to reflow. This hardware was made some time after new industry regulations required lead-free soldering. Apparently the processes for the new materials were not perfect yet, so a lot of hardware made around 2006 had this problem.

I had to do this my way. The concept is the same I read on the forums, expose the logic board to a high temperature (near to solder melting point). An oven seems perfect for this job, but regrettably mine has not a good temperature control (how do I know? I should post more about my kitchen adventures!). So I switched the oven to grill mode (what fellow Americans call broiler), covered the whole board except the interested part in tin foil, and made my own thermometer. I put a little piece of solder at about the same distance from the heating unit as the board, and watched as it melted. When it was completely melted I knew the GPU was resoldering.

And voilà. The board was back alive. No more glitches, all graphics were working as intended! Do this at home!

FoxGame Contest: un mese per i vostri Brain!

Rimane un mese alla scadenza del FoxGame Contest, è il momento di iscriversi!
Tutti i dettagli sulla mailing list ufficiale degli utenti:

La mascotte di FoxGame

Rimane un mese alla scadenza del 24 luglio 2010 per inviare i vostri Brain al FoxGame Contest! È il momento quindi di iscrivervi: iniziate con l’iscrizione alla mailing list [email protected] e inviate un messaggio di risposta al thread di iscrizione, dove sono indicati tutti i dettagli. Partecipate numerosi!

Python, ottimizzazione numerica, algoritmi genetici

Ecco disponibili le slide del talk Python, ottimizzazione numerica, algoritmi genetici tenuto a Pycon4, insieme al codice degli esempi illustrati nel talk.

Ecco disponibili le slide del talk Python, ottimizzazione numerica, algoritmi genetici tenuto a Pycon4, insieme al codice degli esempi illustrati nel talk.

Slide del talk Python, ottimizzazione numerica, algoritmi genetici

Queste le slide in formato PDF, gli esempi scipy.optimization: centro di una funzione quadratica (, pricing non lineare (, e gli esempi PyMathProg: risolutore di Sudoku (, tratto dalla documentazione di PyMathProg), clienti e promozioni ( e variante

Alcune informazioni utili per eseguire gli esempi: per quelli scipy.optimization è sufficiente che SciPy sia installato. Per provare PyMathProg serve GLPK ed è richiesto compilare con distutils il pacchetto di PyMathProg. La distribuzione purtroppo non è senza pecche e io non sono riuscito a compilarlo su Windows per Python 2.6; su una Debian Squeeze scaricando pympl.4.2.tgz ed estraendolo in una directory (attenzione, i file non sono in una directory, deve esserne creata una apposta manualmente!) ho potuto compilare senza problemi per Python 2.6. Il pacchetto include già PyGLPK, i binding Python per GLPK precedentemente distributi a parte, che non vanno confusi con python-glpk, un diverso package di binding non compatibile presente anche nei repository Debian.

FoxGame Contest!

Come promesso si apre il FoxGame Contest, una sfida rivolta a tutti: vogliamo vedervi sviluppare Brain nuovi per volpi e lepri o provare a migliorare quelli esistenti (qualcuno ha parlato di reinforcement learning?). Ecco quindi come partecipare!

Ringraziamo il pubblico numeroso che ha partecipato alla presentazione FoxGame: Introduzione all’Apprendimento Automatico a Pycon4! Come promesso si apre il FoxGame Contest, una sfida rivolta a tutti: vogliamo vedervi sviluppare Brain nuovi per volpi e lepri o provare a migliorare quelli esistenti (qualcuno ha parlato di reinforcement learning?). Ecco quindi come partecipare!

La mascotte di FoxGame!

Continue reading “FoxGame Contest!”

Pycon Italia Qu4ttro

Dal 7 al 9 maggio 2010 parteciperò alla quarta edizione di PyCon Italia, la conferenza italiana sul linguaggio di programmazione Python, con un talk sull’ottimizzazione matematica. Su questo blog pubblicherò tutto il materiale di interesse dopo la presentazione.

Dal 7 al 9 maggio 2010 a Firenze si svolge la quarta edizione di PyCon Italia, la conferenza italiana sul linguaggio di programmazione Python.

Logo PyCon4

Porterò il mio contributo presentando un talk sulle possibilità dell’ottimizzazione matematica sfruttando gli strumenti propri di Python, e intervenendo in un talk introduttivo sull’apprendimento automatico. Per il programma dell’evento e informazione sugli interventi rimando al sito ufficiale della conferenza:

Dopo la presentazione aggiornerò questo blog pubblicando le slide e materiale di interesse a chiunque voglia approfondire i temi trattati e mettere in pratica le soluzioni viste. Vi raccomando quindi di iscrivervi al blog o al feed RSS, o di lasciarmi un indirizzo email in privato, così potrete essere notificati degli update.