May 17th, 2015

What Works?

In an effort to refine my process and organize workflows as my part of new consulting business, I've been building out some tools to help me work a little bit smarter. This past week while developing an automation setup, I had a sort of "duh" moment in respect to picking out the technology I use to build tools with.

The problem with all of these tools, frameworks, and whatchamacalits is that there's an overwhelming number of them, all appearing seemingly overnight. Every single one is heralded as important; essential to my workflow—a must have. But what I've found is...it depends. The problem with having so many options—and having those options change constantly—is that you get stuck in a loop of unproductivity. You spend so much time evaluating and learning new tools that you don't get any work done.

This came up recently while I was comparing Grunt and Gulp, two JavaScript-based task runners that help you automate your development workflow. A year or so ago, Grunt was all the rage. Fast forward to today and now everyone is singing the praises of Gulp. What happened? I asked myself this and did some investigation. What I learned was that, actually, nothing had happened. Grunt was (and is) in active development, while Gulp was just a new option. The two have some stylistic differences, but overall they accomplish the same thing: automate your development workflow.

Even though I'd spent a fair amount of time wrapping my head around Grunt and understood its syntax, I got caught up in the allure of Gulp. I wasted several hours playing with Gulp, trying to get it to work how I wanted. It was different, and certainly cool, but what struck me most is that I already had an answer to this problem. I had a way to automate my workflow. Instead of just using what works and focusing on the actual work, I sunk several hours into evaluating a tool that I knew accomplished the same thing.

Why? Well, some people said Gulp is a little faster than Grunt...and that its syntax was better...and...

That's about it. In essence, there wasn't any monumental reason to make a switch. Gulp, simply by word of mouth (and reading), was now cooler. Sure, it had some interesting performance enhancements, but in totality: the time I would have saved using Gulp was eaten up by the time I spent noodling with it.

The takeaway here is to be cautious of tool frenzy. There will always be a slightly faster way to do something. A more hip, interesting gizmo to do what you do everyday but with more pazazz. But the cost of constantly evaluating these tools—before doing any real work—is expensive.

Instead of chasing yet another thing, if you already have something that works, why not just use that? Unless the benefit received from switching tools is an order of magnitude greater than your current setup, it's likely that you're not missing out on much.