I was born in 1976, extremely optimistic, always looking for things that can surprise or move me — and I’m realizing only now that I have never written a curriculum vitae in my life.
So I’ll use this chance to write down what I remember: if nobody reads it, at least it will work as a diary for when I’m old and forgetful.
I fell in love with computing as a child.
During primary and middle school I wrote my first video game in Basic on a Commodore 64. In my second year of high school I won a scholarship (keepsake photo) for developing a choose-your-own-adventure book engine on an 8086 (an Amstrad 1512), in Pascal. In 1990 they didn’t teach programming in the first two years of high school — I was self-taught.
I lived through BBS browsing with a 1200-baud Zyxel, waiting twenty minutes of dial-up for a 50 KB GIF, knocking people offline with WinNuke because the ISP had only eight dial-up lines that were always busy. I played Sierra titles in CGA, for context.
The last three years of high school as a Computer Science technician. I graduated 46/60 — I was terrible at Italian and electronics. I finished school presenting a C++ thesis (the class only taught Pascal): a 3D CAD, with a thesis on 3D graphics algorithms and hidden-surface rendering, again studied on my own.
My high-school Math teacher noticed me and involved me in a European project to build an e-Learning platform aimed not at training, but at an engine for running exams (e-Testing). I developed that project while doing civil service, and in evenings & weekends during my first jobs.
I worked only a year or maybe two in Milan as someone else’s employee, then as a freelancer with a VAT number; finally the project with my former Math teacher started to take off, and together we founded my first company.
Our e-testing software was used by several French clients (Bank BNP Paribas and various universities), and by Bocconi University in Milan.
The software was later used as the ECDL platform in Italy by AICA (a fork renamed Alice), installed in thousands of Italian schools, through which our company delivered millions of exams a year.
At its peak my first company had 11 employees, but that adventure ended. The mistake was having a single client covering over 90% of revenue, and that client decided to rebuild a copy in-house to cut costs. I never held a grudge — I would have done the same — but having to lay off friends was one of the worst experiences of my life.
Since then I’ve always hated being an administrator or arguing about contracts, accountants, and so on.
NOTHING compares to writing an algorithm and watching it run. It’s art, creativity — loving a creation of yours that becomes a creature.
From 2006 onward I dedicated myself, both at work and for passion, to Net Neutrality and network decentralization.
From 2006 to 2011, together with a friend, I developed software called Osiris – Serverless Portal System. It was written in C++, cross-platform Win/Linux/macOS. The goal was a Content Management System (really quite forum-oriented) where every node helped distribute content (via P2P, DHT, etc.). Distributed, indestructible, uncensorable, with a reputation system for decentralized administration, and a fork system when administration disagreed. It stalled after five years of development for several reasons: loss of interest in the work (P2P themes were interesting, writing a CMS from scratch less so), the difficulty of bootstrapping a social network, and we couldn’t quite solve a set of trustless-system problems — many of which Bitcoin later tackled with “Proof of x” and economic incentives.
In 2009/2010 one of Osiris’s main beta-testers, HostFat, started getting into Bitcoin and tried to involve us. We ignored him to keep going with Osiris — my biggest regret…
In the same period I built several projects, including Net Neutrality monitoring to detect blocking/censorship techniques used by ISPs and governments,
and ipleak.net, a long-standing “what is my IP address” tool — probably the first that could detect DNS leaks.
In 2009 I spoke at the Pirate Party festival in Rome about both Osiris and NeuMon — my first and only experience as a speaker.
That event laid the groundwork for the next project, AirVPN.
From 2010 to today I’ve been one of the founders of a VPN service called AirVPN. As team lead I take care of infrastructure and of developing all the software, both server and client.
Spin-off: for many years I’ve collaborated non-profit on the Bebras of Informatics project.
Passions
- Hacking (well — I mostly like understanding and defending against CVEs; I’ve never done serious pentests), VPN, Net Neutrality, P2P, cryptography, cryptocoins.
- Home automation and IoT. I like working on my house, a huge melting pot of technologies to integrate. I write a bit about it here.
- 3D graphics and game development (more indie-art; I’ve never published anything seriously).
- VR/AR/MR and home entertainment. I have lots of VR headsets and various gaming hardware at home.
Coder choices
- I mostly develop in C# (Visual Studio, MonoDevelop on Linux, Xamarin on macOS).
Occasionally, for low-level work, C/C++.
On the server side usually PHP, more out of habit than anything else.
Obviously HTML/JS/CSS/SQL.
I’ve chewed through a bit of everything.
I love the Unity Engine. - Primary host is Windows, mainly because many tools I use (especially for VR) don’t exist on other OSes.
And because when developing cross-platform I prefer having N Linux/macOS distros as VMs rather than focusing on one.
In any case I prefer Debian, which I use on every server I manage.
Social / Contact
- Twitter.
- If you want to reach me, the fastest way is a Twitter DM, then Signal/Telegram/WhatsApp.
If you want to get on my good side, contact me on Mastodon or Keybase or some niche-but-worthwhile system, so I learn it. No Facebook, No Instagram, No LinkedIn.