I've just tagged v1.0 of Repoint, a tool for managing library source code in a development project. Conceptually it sits somewhere between Mercurial/Git submodules and a package manager like npm. It is intended for use with languages or environments that don't have a favoured package manager, or in situations where the dependent libraries themselves aren't… Continue reading Repoint: A manager for checkouts of third-party source code dependencies
Category: Code
What does a convolutional neural net actually do when you run it?
Convolutional neural networks (or convnets or CNNs) are a staple of "deep learning". There are many tutorials available that describe what they do, either mathematically or via quasi-mystical appeals to intuition, and introduce how to train and use them, often with image classification examples. This post has a narrower focus. As a programmer, I am… Continue reading What does a convolutional neural net actually do when you run it?
Notes on Idris
In a bid to expand my programming brain by learning something about "dependent types", I recently bought the Idris book. (Idris is a pure functional programming language that is mostly known for supporting dependent types. Not knowing what that really meant, and seeing that this recently-published book written by the author of the language was… Continue reading Notes on Idris
Notes from the Audio Developer Conference
I've spent the last couple of days at the 2017 Audio Developer Conference organised by ROLI. This is a get-together and technical conference for people who work on audio software and software-driven-hardware, in practice mostly people working on music applications. I don't go to many conferences these days, despite working in academia. I don't co-write… Continue reading Notes from the Audio Developer Conference
C++17 destructuring bind
I know very little about C++17, but I attended a talk about it this morning and the syntax for destructuring bind caught my attention. This is a feature widely supported in other languages, where you assign a complex type to another complex declaration with individual names in it that match the original type, and you… Continue reading C++17 destructuring bind
Mp3 decoding with the MAD library: We’ve all been doing it wrong
The MAD mp3 decoder library is widely used in open source applications that play or edit mp3 audio files. It's a respected library that consists of high quality C code, has a fairly friendly API, and was evidently written with great care. It's now getting old (last updated in 2004) but people trust it. I… Continue reading Mp3 decoding with the MAD library: We’ve all been doing it wrong