Verbally Flimzy

Ramblings, Observations and Misconceptions

Archive of posts about Programming

Dancing Skeletons

Posted on February 28, 2018

You’re building a complex piece of software. Then it comes time to deploy, so you spend a couple weeks stuffing it into a Docker container or a .deb or .rpm package, and debugging the build and deployment process. Then you add some sort of monitoring or logging, set up email or SMS alerts to tell you when it crashes, and probably a dozen other things to make it “production ready.

Continue reading `Dancing Skeletons` →

Filed under: Programming

My Reservations about the Agile Principles

Posted on October 18, 2017

As a software developer, I’ve read the Manifesto for Agile Software Development countless times. It’s sort of a high-tech analog to the Hippocratic Oath for software people. Its full text is: We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Continue reading `My Reservations about the Agile Principles` →

Filed under: Opinion Programming Work

Automated Testing False Dichotomy #2: All vs None

Posted on September 4, 2017

This is the second installment in my series The False Dichotomies of Automated Testing. If you’ve ever met a recent test convert, you’ve probably heard them talk about the mythical creature that is “100% test coverage.” As with most benevolent mythical creatures, this one is highly sought after, and possibly even worshiped.

Continue reading `Automated Testing False Dichotomy #2: All vs None` →

Filed under: Go Programming Work

The False Dichotomies of Automated Testing

Posted on August 24, 2017

This is the first in a series of posts about automated testing for software developers. I’ve been fascinated by this thing called “programming” since I first learned I could enter BASIC programs into my family’s Commodore 64 when I was 8 years old. I became a full-time software developer in 2006.

Continue reading `The False Dichotomies of Automated Testing` →

Filed under: automated-testing best-practices Programming Work

Announcing Kivik: the general-purpose CouchDB client API for Go and GopherJS

Posted on April 22, 2017

For nearly 3 months now, I’ve spent most of my free time working on a new open-source project: a Go client library for CouchDB and PouchDB. As I’m now putting together the last major feature for a 1.0 release, I feel it’s time to make my work public. So today I am announcing Kivik!

Continue reading `Announcing Kivik: the general-purpose CouchDB client API for Go and GopherJS` →

Filed under: couchdb Go pouchdb Programming

Remembering significant minutiae

Posted on January 30, 2017

Today I reached a meaningless milestone. My most popular post on StackOverflow, the leading Q&A site for programmers, earned its 500th vote*. The post is short, and pretty hilariously insignificant. The question asks how to repeat a simple search-and-replace operation. My answer was essentially to add a single character, the letter “g”, to their code.

Continue reading `Remembering significant minutiae` →

Filed under: Programming recruitment stackoverflow

warn "Use of Perl has been deprecated.\n";

Posted on October 20, 2016

It’s been just over a month now, since my last day as an employee of Which means it’s been just over a month now since I wrote my last line of professional Perl. This is worth celebrating! Now don’t get me wrong. It’s not that I hate Perl. In fact, I’ve really enjoyed using Perl over the years.

Continue reading `warn "Use of Perl has been deprecated.\n";` →

Filed under: Go javascript node.js Perl Programming Work

Question to fellow programmers: Do you like auto-complete?

Posted on October 20, 2016

Atom’s tab-completion drives me nuts. I’ve always found auto-complete to be an insanity-inducing feature in my programming text editor. Inevitably, it causes me to type the wrong thing, or hit TAB too many times. Enter-complete I find to be even more infuriating. But auto-complete, especially in text editors designed for programmers, is often very a elaborate feature.

Continue reading `Question to fellow programmers: Do you like auto-complete?` →

Filed under: best-practices Programming text-editors

How I got go-spew to work with GopherJS

Posted on October 19, 2016

go-spew is a very handy library used for dumping arbitrarily complex data structures in a (roughly) human-readable format. This is immensely helpful when debugging or writing automated tests in programs. Coupled with a package like go-difflib, it can make comparing the expected and actual results of a test not only easy, but into something approaching fun.

Continue reading `How I got go-spew to work with GopherJS` →

Filed under: Go gopherjs Programming

One thing I miss about unit tests: Unit tests as Documentation

Posted on August 10, 2016

I wrote this post in October of 2015 as I was adjusting to life without unit tests at a new job. I recently stumbled upon it in my Drafts, and edited it down to a single point for publication. In October of last year I took a new job at a company with a large group of programmers, and an old (15+ years) code base.

Continue reading `One thing I miss about unit tests: Unit tests as Documentation` →

Filed under: Programming unit tests

How to install CouchDB 1.6.1 on Debian 8.2 (jessie)

Posted on November 18, 2015

First, I must give credit where it is due. These instructions are based on Matteo Mattei’s earlier article Install CouchDB 1.6.x on Debian 7 (Wheezy), but with some important changes. The commands below assume you have sudo properly configured on your system, and that you are running as a standard user.

Continue reading `How to install CouchDB 1.6.1 on Debian 8.2 (jessie)` →

Filed under: compile couchdb database debian install Linux nosql Programming

Docker: Up and Running -- A book review

Posted on June 19, 2015

I was recently tasked with developing a new web service application at work. This gave me a reason to investigate Docker as a possible deployment platform, so I’ve been reading about Docker. I just finished reading my second book on the topic, the not-yet-released (but it is available for Kindle) Docker: Up and Running by Karl Matthias and Sean P.

Continue reading `Docker: Up and Running -- A book review` →

Filed under: book review docker Linux Programming Reviews

lighttpd hackage: Smart module loading

Posted on February 22, 2011

I recently upgraded from Debian 5.0 to Debian 6.0, and it went great, except that lighttpd began to complain “Cannot load plugin mod_redirect more than once”. This is because the new default lighttpd configuration shipped with Debian 6.0 includes the ‘mod_redirect’ module, which was not included by default in Debian 5.

Continue reading `lighttpd hackage: Smart module loading` →

Filed under: debian lighttpd Linux Perl Programming