Why GPM is the Right Go Package Manager

May 29, 2014

The debate rages on over which method is best for managing dependencies in Go. But I've found what seems to me to be the right solution to the problem, and it's a tiny little Bash script called GPM.

Go comes with a variety of marvelous and problem solving tools. But one thing it lacks is any built...

Development Tools Talk

May 20, 2014

Thanks to Dan Walkes for summarizing the "Development Tools Talk" session that I was a part of last week. Boulder Startup Week is a fun event, and it never ceases to amaze me how active and positive the Boulder startup culture is.

For some background, my talk covered porting our REST services from...

Built in Colorado Profile

May 16, 2014

Built in Colorado covers the latest news on startups and high tech in Colorado. Today they ran a feature on Colorado developers who run active GitHub projects. I am really excited to be one of their chosen featured developers for this series.

I had the opportunity to talk about some of my recent...

5 Strengths of PHP

May 14, 2014

PHP. It's the much-maligned whipping boy of "serious" programmers. And in some sense, its ill repute is justified. PHP's early evolution was choppy. The standard libraries don't feel all that cohesive. Decades ago, it had some security issues. And the community, as diverse as it is, continues to churn...

Adding Methods to Function Types in Go

May 5, 2014

One of the intriguing features of Go is its ability to take a function type and attach methods to it. Yes, you read that right: in Go, functions can have methods. With this ability, you take a function and satisfy one or more interfaces by implementing methods on it.

I'd seen this little trick in...

The Surprising Success of the First Gophercon

April 26, 2014

Any time a new conference starts, setting realistic expectations is hard. I've been to a few "first cons" in my life, and even the most successful have been small, fraught with technical difficulties, and often difficulties with focus. As far as I can tell, Gophercon had none of these issues.

The Register Covers The Revolv DB Migration

April 14, 2014

The Register's Jack Clark wrote a short piece on Revolv's database migration based on my blog post from last week and an interview we did on Friday. I found the conclusion to the article to be a fairly phrased and well-put summary of the NoSQL/SQL issue:

We here on El Reg's database cluster are...

NoSQL No More

April 11, 2014

I work at Revolv, and right now we're just about finished with a major migration off of a NoSQL database. We're moving onto a traditional RDBMS (PostgreSQL, to be precise). Many people seem surprised that we, a tech-savvy startup, would be moving to an "old" technology. But in fact our reasoning is...

A Quick Theory of Moral Obligation

March 24, 2014

I recently made a distinction between moral laudability and moral permissibility. I feel as though I did not explain well why moral obligation is not entailed by the fact that a given action is or would be moral.

Briefly, to say someone is morally obligated to do action A is to say that if they

Go's Handy ioutils Package

March 22, 2014

One thing I find myself often doing in just about any programming language I use is reading and writing small text files. We're talking text files that are only a few dozen lines long. Go provides the io/ioutils package for quickly reading and writing files.

The two frequent use cases I have are...