Failure to Launch

Written by jcahill84 | Published 2017/01/31
Tech Story Tags: entrepreneurship | startup

TLDRvia the TL;DR App

Strategies for taking an idea from inception to launch

The Problem

Almost every software engineer I know has half-completed at least a dozen projects in their “spare time.” Everyone has a brilliant and fun side-project that they’re working on. Most never complete it. I’m personally guilty of this, and have been for the better part of the past 10 years. I even keep a list of ideas on my phone that I consider so important to me, that once when my son deleted it, I wiped and restored my entire phone from a backup just to get it back.

Writing software (and building things in general) is fun, challenging, and ultimately very rewarding. However, as the problem you’re trying to solve approaches resolution, the rewards start to diminish. Whether the “problem” is learning a new technology, solving a complex computer science problem, or putting something together that you’ve never done before; once you finish the hard stuff, your reward-based interest declines. Once this starts to happen, most will ultimately discard the remaining boilerplate work that needs to be done, and put the project on the shelf. On to the next idea… This is a failure to launch.

Source: https://www.rottentomatoes.com/m/failure_to_launch/

Why does this happen?

Launching an application into the world is hard. It’s scary. It requires you to have a definition of done-enough. It requires you to be disciplined and put in actual work, in addition to the fun stuff. Most projects I’ve half-completed lost my interest once I had to write the basic, but necessary portions (think field validation, authentication, build scripts, etc.). For me it’s always been all about the reward of solving the hard problem, and once that’s gone, the project soon follows.

Another huge reason an idea fails to launch is that the person or people working on it simply don’t have the time to work on it. Life is busy, and side-projects are often the lowest priority on a long list of things to do each day. Aside from this, as we all know, writing code takes a serious amount of attention. Getting in the zone takes time, then you actually have to produce something.

What can you do about it?

When it comes to advice on how to solve this problem, a lot of people will give you an insanely simple three word sentence: Just do it. “Just do it” doesn’t help you at all. It may motivate some people, but most will need a more concrete explanation of how to overcome the specific issues that cause a failure to launch.

Source: Nike

Overcoming fear is actually quite easy when you consider the odds that what you are launching will be successful. Most of the fear involves questions posed to yourself along the lines of:

  • What if it doesn’t scale?
  • What if it’s hugely successful?
  • What if it isn’t successful?
  • What if it doesn’t work at all?
  • What if people hate it?

All of these questions boil down to the same thing: the idea succeeding or failing. The way to overcome them is to consider the ultimate outcome of launching versus not. If you launch you may be successful, so some of your fears may be valid, but the probability of massive success is quite small. On the other hand the potential upside if you are successful is huge. Chances are, you won’t be massively successful, but you’ll never know without trying.

If you do launch, and you aren’t successful, it’s the same ultimate outcome as if you had just walked away half-way through and shelved the idea. The main point here is that launching and validating your idea is the only way to overcome this fear. Being the rational creature that all engineers are, just use that big logic-driven brain of yours to prove your emotions wrong.

Definition of done-enough is a tough concept to master, especially when you want what you’re putting out into the world to be as perfect as possible. Redefining your view of “as perfect as possible” to more closely align with “the minimally viable solution to the problem you’re trying to solve” will go a long way (thanks Lean Startup).

Lots of people will tell you to launch a landing page and an advertising campaign, and to never write a single line of code. That’s fine if you’re in it solely for the business and don’t want to have any fun ahead of time slinging some code. I think there’s a happy medium to be reached here where you can write just enough, solve just enough hard problems, and still not waste too much time building something nobody wants. That happy medium becomes your definition of done-enough.

Finding the time to work on a side-project, especially now that you’re planning to work on it to its completion and launch, can be incredibly hard. Much like the probability of success can help rationalize away fear, the potential upside can help rationalize carving out more time in your day. If I told you that your idea was going to make you 5 million dollars in the next year, you’d have no problem finding the time.

Aside from the potential financial and professional gains, there’s another reason that helps me to find the time: the feeling of accomplishment. It’s a lot like going to the gym (I would imagine) in that you don’t want to spend the time, but afterwards you feel amazing. Sleeping a few hours less each night and cranking out a product to its completion will make you feel amazing as well. Finding the time should be the least of your worries, because in reality you have a limitless supply of it, until you don’t.

In My Case

I mentioned above that I keep a list in my phone of potential business ideas. I’ve been writing this list for a really long time, and have put in varying degrees of work for a handful of them. Recently I decided that I was finally going to finish something (not the first time I’ve decided this). I picked an idea that I thought I could complete in a reasonable amount of time, and held myself to it.

What I launched is Schezzle a website monitoring tool. This is not an amazingly disruptive idea. This is not something new. This is however something I built from scratch and launched to the world, and that feels great.

My approach was different with Schezzle, instead of stealing an hour or two a couple times a week, I forced myself to work on it for 4–5 hours a night. I accomplished this by pouring a cup of coffee after my kids went to bed. This accomplished two things:

  1. It was a small gesture to myself that I was committed to working that night.
  2. I basically drugged myself awake, so I may as well get some work done.

Once I got through the fun parts I started to lose interest, but instead of shelving it I broke up the boilerplate into small sections that I could complete in one 4–5 hour session. This then started to feel like I was chipping away towards the goal of launching. One night I built login, the next I built the docs. The next I worked on the build process, and so on. Eventually this lead to a done-enough product, and I launched.

To wrap this up, I think it’s important to know that you’re not alone in your failure to launch. Again, almost every engineer I know has [not] done it too. Hopefully this helps you form a strategy to beat your own prohibitive habits and ship something to the world. Whether it’s successful or not is up to you, but I promise you that taking it to market will feel good either way.


Published by HackerNoon on 2017/01/31