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.
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 Engine.
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.
PhD music 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.
PhD music app
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.
Aranaboo
A game of peek-a-boo using face detection.
Technologies: iOS.
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.
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).
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.
tOfuS: the Framework OS
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.
Have a cool project in mind? Let's talk about it!