<strong>kung fu</strong>Fork me on GitHub

True engineers are a dying breed

I am a software engineer. Not a front-end developer. Not a back-end developer. Not a full-stack developer (whatever the fuck that means today). I am an engineer. I understand how to devipher technology, figure out how it works, and build things up using said technology.

If you spend more than 15 minutes lurking around the various tech hangouts these days, you will undoubtedly come across some bit of tech that smells. It may work as advertised, it may not crash your system, but its just...wrong. When you go digging into its guts, you find that it's a well polished pile of shit, put together by some well-intentioned flunkie who wanted to "be somebody" on the web.

Metalsmith is Awesome (Part 2)

Last time, we got Metalsmith up and running, generating a single static page. This was a good first step, but we need more. If we intend to build a fully functional blog or documentation site, we need things like style and syntax highlighting. We'll also need to add some structure to the site, as well as the ability to generate sane permalinks.

Metalsmith is Awesome

I've decided to get serious about blogging (and participating on the web in general), and as such, I need this site to be ready. I started reviewing the bits involved here, and realized that much of what I'm using is woefully out of date. So it's time to get busy.


Man, its been too long. I found about 10 posts I've started over the last 2 years that had reached various levels of completion, but realized that completing any of them would require me to recommend things that I now know to be wrong. So instead, I thought I'd relay some of the things I've experienced and what I've learned from them.

Tmux + Vagrant = win!

In my quest to become one with my Air, I've been in search of the best tooling to keep my workflow smooth. I did some playing around with MacVim, running rbenv in OSX, and various IRC clients. After a lot of hand-wringing and head-scratching, I think I've come up with the best solution.

Cheaters always win!

My fix is to give up and give in. Vagrant to the rescue! In all fairness, the choice to use Vagrant was sort of a team decision. We have quite a few devs, and find a way for them to work consistently seems like the perfect use case for Vagrant. So for day-to-day work, I spin up the project specific VM using the Vagrantfile in the repo, then just pull in my dotfiles using homeshick. This workflow allows me to always work in a consistent environment, no matter where I'm working from (even from a Putty session).