Recent Posts

Invalidate CloudFront and Wait

2 minute read

In my occasional series on waiting for things, I setup a BASH function to wait for AWS CloudFront invalidations. I mentioned it would be possible to invalid ...

Fun with pushd

3 minute read

Here’s about as esoteric a post as I ever write, my love of pushd and it’s little abused directory stack. If you don’t live on the command line, move along, ...

Get the MIME Type of a Random Upload in Rails

1 minute read

It’s surprisingly hard to find info on getting the MIME type of a file in Rails. Rails has MIME::Type (and the confusing and undocumented MIME::Types). You c...

How I Learned to Code Part III

3 minute read

So, first I talked my first programming experience, learning via type-in programs. Then I looked at the shotgun approach my university took. In this final po...

How I Learned to Code Part II

2 minute read

Last time I talked about my first experience with coding, entering and debugging a type-in program on a mainframe. This time, how I learned “Computer Science...

How I Learned to Code Part I

3 minute read

It’s Boulder Startup Week. With so many tech startups in town, there a lot of focus on code and coders. How do you become a developer? What developer career ...

BASH Autocompletion

3 minute read

A couple of posts back, I showed off some functions to pop up notifications when a host became pingable again or when a port became reachable. Today’s (semi)...