Roles held, not projects sold. Each entry states the position — founder, CTO, head of function, research engineer — because what matters here is the range of problems addressed, not a portfolio of deliverables.
EU policy intelligence platform. Knowledge representation, information extraction, ingestion and retrieval over legislative corpora that change weekly, semantic search, and assisted drafting of documents.
Italian online tutoring. Omnichannel measurement framework across Google Ads, Meta, LinkedIn Ads and TikTok, proprietary tooling that builds editorial plans against the stages of the sales funnel, and an AI tutor covering the hours human tutors cannot.
Technical direction of a university AI lab: applied research projects with industry partners, prototype development, and the teaching programme that ran alongside them.
Marketing effectiveness and media measurement for large advertisers — where the cross-channel measurement and attribution discipline behind the operations work was learned.
Vodafone Analytics: territorial analysis and martech built on telco network big data. Requirements, roadmap and delivery across engineering and commercial teams, in an environment where data governance is not optional.
Data science leadership in ad-tech: large-scale behavioural and location datasets, audience modelling, and the pipelines to keep it all running at volume.
Interactive audio and real-time systems for international campaigns and products, with work delivered for HBO, Nike and Google. Engineering leadership on projects where the technology was the experience.
Work on gesture and contact-microphone sensing turned into a consumer product — signal processing and machine learning applied to a physical interface.
Research engineering at the institute for acoustic and music research: machine listening and analysis of experimental audio data. The origin of this practice's comfort with scientific datasets.
Teaching and workshop programmes on AI adoption, governance and data-driven marketing — including seminars on AI agents for business productivity run with Microsoft and the Milan Chamber of Commerce.
Server and client for near-realtime audio transcription: WebSocket streaming, Huggingface voice activity detection and Whisper (faster-whisper) for recognition. Modular design for swapping VAD and ASR components, configurable chunking strategies, multilingual support.
Web tool for building and analysing Bayesian networks: interactive canvas, editable conditional probability tables, real-time exact inference, and posteriors that update visually as evidence is set. A light, modern alternative to desktop tools such as GeNIe, with a Tufte-inspired interface.
An AI format that makes artificial intelligence accessible and understandable — like the cousin who can explain complex things without giving you a headache.
Rescue of the nearly vanished Flinger module for the Festival singing speech synthesiser: hacked source, missing or outdated Makefiles, Windows-only build. Ported to Unix/macOS with 32-bit pointer arithmetic fixes and proper configuration flags.
App for Dinamo's ABC Galapagos typeface — a modular system of 42 cuts and 5 weights whose character forms evolve from one another. Lets designers explore vertical grid alignment and stylistic alternates, turning Felix Salut's physical Galapagos Game blocks into a font.
Interactive digital experience for Canada Goose's “Out There” campaign: immersive web content letting users explore the brand's outdoor heritage through digital storytelling and interaction.
Interactive installation produced by Google and Tate Modern: artists collaboratively create short animations with web drawing and music tools, branching off one another into tree-like timelines. At Tate Modern visitors explored and contributed to life-size animation trees. Awarded a D&AD Wood Pencil for Digital Design.
Interactive music experience for Beck's “Hello Again”: an immersive digital environment that responds to the music and lets users explore the track.
Interactive digital campaign for Infiniti: web experiences built around the brand's approach to automotive design and technology.
Immersive digital experience exploring isolation and connection through interactive storytelling.
Installation generating a forest of trees from SMS and tweets. Converted from Flash to OpenFrameworks for the ISEA2012 Machine Wilderness exhibit at Albuquerque Museum of Fine Art: a 20×20ft corner projection where audience messages become branches in real time. Cited in “Modes of Knowing: Resources from the Baroque” (Mattering Press, 2016).
MIDI pattern creation and manipulation: grid-based interface for complex rhythmic patterns, real-time MIDI output and integration with external hardware. Built with Swift and Core MIDI.
Inspired by Autechre's Acroyear: pattern generation, MIDI output, swing control and multi-track song mode, with real-time parameter control and Web MIDI support.
Moiré pattern generator with synchronised audio-visual synthesis: multiple pattern types (lines, grid, circles, radial), real-time parameter control, and FM synthesis locked to the visuals.
Minimalist video synthesiser inspired by Alva Noto and Ryoji Ikeda: fifteen procedural shader modes — stripes, grid, dots, noise, warp, voronoi, ripples, moiré, quasicrystal, kaleidoscope, crackle, halftone, flow — with real-time control and fullscreen support.
A public wiki on artificial intelligence: entries, definitions and teaching material maintained openly.
PyTorch implementation of deep reinforcement learning for chess, inspired by AlphaZero's self-play approach: the agent learns entirely by playing itself, with automatic game recording and video generation.