Nathan's Notepad


Field notes from a software developer

Benchmarking Brotli

Brotli is a new compression algorithm being introduced by Google. It’s gaining traction very quickly - there’s an IETF draft proposal for the data format. There are even plans to include Brotli as an accepted Content-Encoding in Firefox 44:


Non-blocking Channels in Go

One of the latest projects I’ve been working on is a simple SMTP client written in Go. I’ve really enjoyed developing applications in Go since it provides concurrency primitives out-of-the-box. In this article, I’m going to describe a technique for sending any number of values on a channel without having the send block.


Investigating an Email Scam

Today I opened up my inbox to discover this little gem.


BuildBot in Docker on a Raspberry Pi 2

In a previous article, I took a look at setting up a BuildBot slave on Windows. Today, I’m going to describe the process of creating a BuildBot slave for a Raspberry Pi 2. The easiest way to do this is by setting up the BuildBot slave as a Docker container.


Using Visual C++ Express with BuildBot

I recently began setting up a small build farm for a Qt library I was working on. Due to the nature of the library, it was important that the test suite run on as many different platforms and compilers as possible. After some research, I came to the conclusion that BuildBot was the ideal tool for the job.