Embedding license data in images

This term I've got a good group of students taking my second open source course. Unlike the first course, which aims to teach the theory and »


Over the holidays I had a chance to read Gibson's new novel, The Peripheral. I won't discuss the book itself, but instead want to pause over »

Video killed the radio star

One of the personal experiments I'm considering in 2015 is a conscious movement away from video-based participation in open source communities. There are a number of »

Minimum Viable Product

This week in class I was discussing the value of thinking in terms of a Minimum Viable Product (MVP), and how open source tends to favour »

How to encourage contributors

One of the techniques I've used over the years in teaching open source is to invite core members of the projects we're working within to come »

CDOT Planet Blog Feed Cleanup

In recent days our CDOT Blog Planet has begun having issues. Chris was able to determine that we have many feed URLs that are no longer »

Introducing MakeDrive

I've been lax in my blogging for the past number of months (apologies). I've had my head down in a project that's required all of my »


Last week I finally made some time to rebuild my blog. The server it ran on died in the fall, and I haven't had the time »

An Hour of Code spawns hours of coding

One of the topics my daughters and two of their friends asked me to do this year in our home school is programming.  They call it »

Concept for a Shared Web File System

I wrote previously about some work we're doing on a web file system like node.js' that sits atop modern browser data stores.  Yesterday Alan came »

The Web is the Platform: File System Edition

I've been spending too much time lately thinking about file systems.  What started it was a casual conversation I had with Alan about work he was »

Experiments with audio, part XI: RIP Audio Data API (2009 to 2013)

Mozilla has implemented and shipped the Web Audio API recently, and at the same time begun the work to remove the Audio Data API.  I wanted »