About
Hi, I’m Dan!
I’m a computer scientist, software engineer, and electronic music producer.
I have a PhD in Computer Science from Imperial College London, where I worked on formal methods and static analysis, and over 10 years of experience developing software professionally. Over the years I’ve worked on quite a variety of things, including compilers (MLIR/C++), functional programming (Haskell, Clojure), and audio software.
I’ve always been fascinated by programming languages, the theory behind them, and the process of turning interesting ideas into working software. I particularly enjoy problems that require a bit of thinking, learning something new, and coming up with elegant solutions.
Outside of programming, music is a big part of my life. I’ve been making electronic music for over 20 years, releasing records, collaborating with other artists, and occasionally performing.
Sometimes these two worlds overlap, like when I work on audio software or build little tools to solve my own musical problems (such as dj-buddy, a DJ playlist builder written in Haskell). Other times, I just keep them separate.
This website is where I write about things I find interesting, mostly programming, computer science, and occasionally music. It’s also a place to share projects I’ve been working on.
Thanks for stopping by!