When speaking to other developers, designers, and pretty much anyone else who works primarily on the Web, the conversation nearly always at some point reaches the topic of tools; what’s newest, what’s best, what’s different, and (usually most exciting) what’s to come. However, I’ve caught myself a number of times telling up-and-coming developers or designers that the tool doesn’t matter, it’s the work that comes of it. There’s some absolute truth to that, but: it’s about the tools.
Tools and Workflows
We all love talking about the way we do things. Finding common ground within a workflow or over a chosen tool is an instant bond between two of us. It’s more often than not unspoken, but when it comes up that a complete stranger chose the same text editor as you (and stuck with it through years upon years of vaporware rumors) there’s a quick common ground for discussion. Beyond that, we like talking about how we do things because we like to share our successes as well as our failures. If at one point we had a major frustration, and through time and trial we were able to overcome it, it’s rare that the victory is boxed up and locked away for Me, Myself, and I. That is of course unless the victory quickly lead to a business plan with potential to transform itself into your retirement fund; completely understandable in that case. In the end though, even those ideas are revealed, albeit on a much more grand scale when compared to a blog post and a comment thread. We love talking shop. We’re also stubborn though, but in this case, I don’t think it’s such a bad thing.
Habits can be supremely productive
I catch myself telling those just getting into the industry that of course the tools don’t matter, the work does, and I fully stand behind that. I have noticed though, that once you’ve crossed the line and have some work under your belt, there is a very limited time during which significant decisions are made that can have a big effect on how you do things. After all, if it weren’t about the tools, each of us would be able to sit down at a different work station this morning and get to work in a completely new environment without issue. Imagine this:
- Photoshop user? Here’s Fireworks.
- At home in TextMate? This machine only has vim.
- Working on a logo today? Illustrator? We only have Inkscape.
- We’re not using ExpressionEngine this time around, we’re going with WordPress.
- As of today we’ll be moving from SVN to git, thanks.
Changing tools after deciding what works for you and becoming (extremely) comfortable with it is a big deal. With our tools comes a very specific workflow, something that makes or breaks our process. We’re either optimized or we’re bottlenecked, and it all comes down to the habits we execute as we work. There are definitely as many good habits as there are bad when it comes to Web design and development as far as I can see.
The other side though, it’s greener! I think…
I have a problem accepting that the tools I’ve chosen are the right ones. I know I can get the job done, but something in my head tells me that there’s a better way, a faster way, a more precise way. Am I the only one cursed with constantly thinking everyone else is doing it more quickly with higher quality and better deliverables? I often take the time to explore other tools at my disposal, usually the ones that others rant and rave about all the time. Ruby on Rails, ExpressionEngine, Photoshop, vim, emacs, git, Ubuntu, Basecamp, the list goes on for a long time. My big question though, is how we’re able to tell that the tool we’re using is the wrong one. Do we sit back and wait until our closest colleagues have made the jump and it takes an intervention for me to get on board? Should I be an early adopter in an effort to be ahead of the game once things change over en masse? What happens if I make this switch and the project ceases? Would I have been better off focusing on what works for me and trying to get better at it? The biggest question for me though is:
Does any of that really matter? Should I just be getting work done in the meantime?
Evaluation of potential tools is not something I take lightly. It takes a decent amount of time that I could otherwise be using familiar tools to get work done on my usual schedule. Is that time devoted to possibly unused knowledge a complete waste? Is it worth something to not have to wonder if Tool X is ‘better’ than Tool Y for me?
How can we be sure that the tools we’ve chosen allow us to refine and optimize for an extended amount of time? Theoretically we should be getting better at what we do with every project that gets completed. The great thing is, though, that very often our tools will update as we do. That is of course the author(s) of your chosen tool abandon the project leaving you out to dry.
It’s not about the tools, but then it is
I do stand behind my advice to new designers and developers. I don’t think a tool should influence the technologies or techniques you’re just becoming familiar with. It’s likely that whatever you sit down with first will be your tool of choice for a long time, and it will eventually take a whole lot of convincing to tell you otherwise. In the beginning, the big deal is making sure you’re understanding concepts and ideas. Without that understanding, your decision as to which tool to use has little to no merit beyond hearsay from some people you looked up to at the time.
When you’ve progressed to becoming more professional, you’ll be able to much better analyze your toolset, with actual experience and fact to back up your opinions. At that point, tools become an important choice. Or do they?