I design and build products, which these days means live video software sitting on top of a lot of fairly unforgiving infrastructure. For a good few years I also wrote a lot on this site: long series about whatever I happened to be learning at the time, write-ups of things I'd built, and the occasional four thousand words on something I thought was rubbish.
Since 2015 I've been at id3as, who spent years building bespoke live video systems for broadcasters and streaming companies and have since turned all of that into a product company, Norsk. Norsk is software for doing things to live video: taking in feeds from cameras and studios, switching and mixing them, adding graphics, encoding them, and getting them out to viewers without falling over. Underneath it's Erlang, Purescript, Rust, C and CUDA, with TypeScript on top for the people who have to talk to it.
My job there is mostly working out what we should build, with customers in the room where possible, and then going and building it. The biggest piece of that so far is Norsk Studio. I built the first version over a weekend with the goal of "Windows Forms for media workflows", and it has since become what Norsk's newer products are built with: Playout for running TV channels, Remote Commentary for commentators who aren't at the venue, and Probe for keeping an eye on stream quality.
Before that I did the big consultancy thing as a Technical Expert, then went freelance, contributed a lot to RavenDB, and spent most of 2013 as a wandering developer working in exchange for a roof over my head. I used to speak at conferences quite a lot before the start-up life took me.
All of the old writing is still here. Writing has the series and everything else by year, and there are projects and talks too.
Recently
- The launching of a product, or where I've been for the last few years
- Purerl Updates - A heap of ported modules
- Purerl Updates - GenStatem
- Purerl Updates - maxing out Pinto OTP
- Purerl Updates - Untagged Unions
- Purerl Updates - Subscriptions
- Purerl Updates - Processes and Self
- Write Your Erlang Gen Servers in Visual Basic
The crowdsourced homepage that used to live here, written by whoever sent a pull request, has been retired. Its time had come.