A Handyman’s Toolbox
Twelve years ago I began creating my first software product to sell: TinyDBA, a mobile app to help database administrators. I went to a networking event hoping to find my first customers. I had business cards (really crappy ones). But I didn’t have a single thing to demo. I never had a single thing to demo. After months of talking about this “business” and fooling around with some code on nights and weekends, I never shipped anything.
This is an answer to: What tools do you use at your startup?
Have you ever looked inside a handyman’s toolbox?
My father is super handy. He did a ton around our house growing up. He built a beautiful fence around our yard. And he finished our entire basement. Multiple rooms. One room for homework, another for games like darts and pool.
I helped him with a lot of those projects. Hammering things. Painting. But mostly I did cleanup. Washed the paintbrushes. Put the tools away.
I remember vividly how old his tools were. The same old saws. The same hammer. He rarely bought anything new.
Today you can buy a laser level to help make things straight. I have one. It’s been handy a few times. But I’ve needed a traditional straight edge level with a ruler on it.
I stole my father’s. This thing must be 30 years old. Covered in spackling and paint. But when I need to make something straight, it’s the first tool I reach for. I’ve never given it back.
A friend of mine is always telling me about his latest project. But nothing ever seems to ship. Each time he mentions a new project, it coincides with “Oh man, now I’m learning Ruby on Rails.” A few months later it was “I just picked up Python and I’m using Django for this latest thing.” And eventually, “I’m going to start this new project and will learn AngularJS!” And he gets frustrated with his lack of traction.
A couple years ago, when I was considering a new startup, I wanted to see if I could create my own version of Bejeweled, a popular online game where people match images of jewels. I wanted my version to be able to have customizable images, so we could go to a client like The Gap, and say, “We’ll take your logo and images from your store, and put them into our game. People will play with images of your stuff for hours.”
I just went with what I already knew. I built my own version of Bejeweled (which I called Beawesomed) in about 2 days and immediately sent it to people. You had to email us the images you wanted to use. No fancy admin screen. I built a dozen other games that way using tools I already knew with very few bells and whistles.
We ended up deciding to shut the games business down. But not from a lack of data or customers. In a few months, we quickly built a prototype used by a dozen clients, and over 10,000 people playing over 2 hours a day.
To figure out the next thing after branded games didn’t work out, I went even deeper into my toolset for really old tools to test out ideas. Just a simple Adwords ad and a Wufoo form. When I needed to upgrade that, I reached for Wordpress and a WooTheme.
I’m not against learning new technologies. But I only introduce them when I reach an impasse the simplest tool in my toolbox can’t fix.
With Beawesomed, the code worked well for months. Eventually I bumped into a problem I couldn’t fix with Rails, and finally had to reach for something a little more cutting edge: Node.js. But only after we had lots of people already using our games.
Today I’m blessed to get feedback like this on Draft, a project I’m running by myself:
@natekontny dude, how do you release such big features so fast? I’ve never seen anything like it from another startup. It’s just you right?!— Sean Everett (@SeanMEverett) May 16, 2013
The secret? I use tools I already know very, very well.
So don’t worry so much about the tools I use at my startup. Use the tools you already have to fix the problems at yours.
P.S. I’d love to meet you on Twitter: here.
Or read other answers to: What tools do you use at your startup?