Hi.
First of all: I am genuinely interested to know why you disabled JavaScript so please send me an e-mail — no judgement.
Second: yes, I hate it too, but in this day and age JavaScript is kinda ubiquitous so I caved in. I am still making an effort but this site may look a bit weird and hardly usable without JS. Sorry…

Software development

Not black magic

I have been writing code for as long as I can remember – yes, that must have been around 1990, with my Amiga 500. It has been a long journey, and I learned a thing or two along the way.

One of these is that the “what languages do you know? ” question is largely irrelevant. Once you know a bunch of them, learning a new one is easy. The hard part is knowing how to attack a problem and solve it.

Languages I know:

  • experienced: C, C++, Objective-C, XML, HTML, TypeScript, PHP, Ruby, Pure Data, Processing
  • familiar: Swift, JavaScript, Python, x86 and ARM assembly for system programming
  • learning: R, Julia, Haskell

Knowing languages is only a small portion of the job. You also need to know how to not reinvent the wheel all the time, how to design maintainable and scalable software architectures, and so on.

Frameworks and other magic tricks:

  • Qt, Cinder, openFrameworks
  • Ruby on Rails, Sinatra
  • React, Vue.js, Nuxt.js
  • Arduino
  • Godot

I may be forgetting some technologies, but the bottom line is: it's no use knowing stuff if you don't know what it's used for.

Things I've done

Enough talk, let's see some of the projects I worked on over the years.

Autoritratto per 4 camere e 4 voci

Michele Sambin, 1977

«Autoritratto per 4 camere e 4 voci» by Michele Sambin

As part of an effort to restore and preserve old multi-media and interactive art installation, I collaborated with the team at the CSC to bring this performance art piece back to life in Virtual Reality.

Technologies: Godot 4, OpenXR.

Cash or Card?

Circular Bells

“Cash or Card?” is an educational puzzle-simulation video game to explore the theme of cash vs electronic payments. You play as a shopkeeper who has to earn enough money in 5 days and you need to choose how your customers are going to pay you.

Technologies: Godot 4.

Play online | Description | GDD | Source code

Robot Finds Kitten 2D for Godot Engine

Robot Finds Kitten 2D for Godot Engine

I wanted to learn Godot so I made a port of the famous zen simulation Robot Finds Kitten which you can play online here for free! No ads! Pure zen!

Technologies: Godot 3.

Play online | Source code

Circular Bells

Circular Bells

Circular Bells is a music app that for kids and grown ups to sit back and relax while playing with its brightly-coloured, ever-changing interface, and uplifting sounds.

Technologies: C++, Cinder, iOS.

App Store | Demo

PhD music app for iPad

PhD app for iPad

In 2014, I needed to bring the app below with me to a conference for demos. I figured pretty soon that I was not going to bring the giant screen with me, so I did an iOS port which worked wonderfully. No, you can't have it. Yet. I'm designing a new version. You can have that once it's ready.

Technologies: C++, Cinder, iOS.

Source code

PhD music app

PhD app for large tabletop

As part of my doctoral studies, I developed a collaborative music composition tabletop application to teach people how to compose and discuss melodies.

Technologies: C++, Cinder, Pure Data.

Source code | Demo

Aranaboo

Aranaboo

A game of peek-a-boo using face detection.

Technologies: iOS.

Web site

Da grande voglio fare l'astronauta

Da grande voglio fare l'astronauta

An interactive book for children. The tale of a kid who wants to become an astronaut. I developed the iOS part of the project to completion, but sadly the app was never released.

Technologies: iOS.

Behance

CRUSADE Bleeding Score Calculator

CRUSADE Bleeding Score Calculator

This app helps clinicians estimate a patient's baseline risk of in-hospital major bleeding during both ST and non-ST segment elevation myocardial infarction. Not that I know what that means. I was given a spreadsheet with some formulas, I was asked to make an iOS app, and so I did. Then the client did not want it anymore, so I published it myself.

Technologies: iOS (Swift), Android (Kotlin).

App Store, Google Play

Doodle

Doodle

I worked on the actual Reactable between 2008 and 2009, proposing a new approach to Western tonal music – the original support was quite minimal, I was tasked with making it a bit more usable.

Technologies: C++, Qt 4, Jack.

Source code | Demo

tOfuS: the Framework OS

tOfuS

Yes, there was a time when I worked on a toy operating system. It was good fun and I learned a lot about assembly code and bare-metal programming.

Technologies: x86 assembly, C.

Source code

Have a cool project in mind? Let's talk about it!

Unless otherwise specified, the content of this site is licensed as CC BY-NC-SA 4.0.