The First Idea

I’ve done a bit of reading as to how companies get started.  I even have a fun story about the origins of the startup I work for (which I’ll tell in a later post about why I’m keeping this blog anonymous until I decide otherwise).  What I’ve noticed among many of them is that the product that ultimately makes them successful either was stumbled into by accident (while trying to develop a different product) or was forced upon them, often as variation of what they were trying to create originally.  The book Founders at Work has a few such stories:

  • PayPal began by writing secure monetary transfer software for PDAs, and to help with testing they put up a replica of their software for web use.  It turned out that the web version was what everybody wanted to use, hence what PayPal is today.
  • Flickr started as a chat+picture sharing utility within an MMO and become so popular that it was spun off as its own product.

These are the two stories that immediately come to mind (I read the book a few years ago so other similar examples slip my mind).  Certainly there are other startups that were able to stay true to their original vision, and the book is a great way to get a survey of what different startup experiences can be like.  Of course, I will have to (roughly) follow the PayPal/Flickr storyline, as I have no vision to build a product around.  Actually, I don’t have a product idea either.  So what do I have?

I have a guiding statement: I’m going to create something that I would have fun using.

And, I have something that I would enjoy using that I want to build.  Ready?  Here it is:  Zoom in on a picture based on a user-defined rectangular region.  I know!  It’s ridiculous, right?  Ridiculously simple?  Yep.  Ridiculously stupid?  Well, I think that’s a fair initial reaction.  I still have a lot of vague ideas (and a few concrete ones) as to how I want it to work, with regards to layout and animations and overall look and feel.  The idea came up while working on a project to convert flash-based UI widgets to WPF-based UI widgets, which required a TON of inspection of graphics.  So, it has a use for someone (me), and I have some ideas as to how to make it fun to use.  This is my starting point.

Do I think this idea, in a complete, well-thought-out, polished final form, is something I can turn into a business?

No.  Of course not.

So what’s the point of trying to develop this idea?  Well, it’s a starting point.  It’s something that will be fairly easy to spec out and develop a functional prototype for, albeit via a WPF-based desktop test harness.  My ultimate goal is to have this available as a web app, but that will require learning at minimum html, javascript (?), and some server language (like PHP?).  See?  I don’t even know what languages are options for doing something like this.  Add in that I want to incorporate a SQL backend to all of this somehow, and that I’ve never ran a webserver before, and you can see that I have plenty to learn.

There’s no coincidence that what I’m attempting to do requires that I learn a number of new technologies.  When I first envisioned this project, I was planning on it being private project that only I would see.  Only recently did I decide that this would be a jumping-off point towards creating a MicroISV.  The way I see it is that if you’re going to be a one-man shop, writing software for the web will be a much easier path towards self-sustainability than writing software that has to be downloaded and installed on each person’s computer.  I’m repeating myself here, but there’s plenty for me to learn, and I’d rather learn while creating a prototype/framework for later than learn while attempting to create something I can actually sell.

The other reason I’m getting with this idea is just for the sake of getting started.  At worst I will be making horrendous mistakes, and subsequently learning from those mistakes.  I may start out going in the absolute wrong direction, but with every mistake will come a course correction, so logically if I make enough mistakes I’ll end up on the correct path, right?

Leave a Reply