The Hardest Part of Building Digital Products

Whether you are building websites, apps, games or online services, the hardest part is not necessarily what you think it’ll be.

If you’re a designer, you might say the hardest part is getting the UI right or understanding the user journey so that you can get the user experience spot on. What about the needs, or even special needs, of your audience? How do you support them? I need to create personas and set up a user experience testing lab! All valid concerns, and some very difficult to get right, but not the hardest part.

What if you’re a developer and it’s your job to build the application? What language do you choose? Do you go with traditional back-end languages or do you go with a JavaScript framework? What about front-end? Sass? Less? React? Angular? Do you use Bootstrap or Foundation? Do you roll your own? How about the database layer? MySQL? PostgreSQL? MongoDB? What about the web server? Apache? Nginx? Questions, questions, questions and you haven’t even got to understanding how to build the application yet.

Are they the hardest parts? No. Whilst they are difficult and important questions, they are part and parcel of your job (and secretly, it’s part of why you love it).

Maybe the infrastructure guys can shed some light. Where are we hosting? In-house? 3rd party? AWS? Azure? What about scaling? Load balancing? Failovers? DDOS protection? How do we handle backups and restoration? Do we need to mirror in different geographic locations to reduce latency for international users?

Does your head hurt yet? Probably. Is this the hardest part? No.

I could go right through the business: marketing, sales, legal, senior management, accounts, support. They all have their own concerns with the product, but no single area has the answer. And there’s the clue. The hardest part doesn’t affect a single part of the business but spans all of them equally. They will all look on it with their own particular perspective, but they will all look at it and worry about it in a slightly different way.

So what is it?


Launching is an adrenaline-inducing moment for all involved because it is the moment you finally put yourself out there. Whether you are a company of 1 or 100, the launch of a new product, feature, site, app, game, e-book, course or whatever, is the moment that all your hard work is put out to the public to be torn apart, ridiculed, abused, broken and treated with the same respect as your old mobile phones. But for the most part, this is in your head. This is the part of your brain that wants you to stay safe and avoid the public eye in case you draw attention to yourself. Seth Godin called this the lizard brain, Steve Pressfield calls it the Resistance, and Tim Urban called it the Social Survival Mammoth. Whatever name it goes by, it is an outdated biological throwback who’s only interest is to stop you from drawing attention to yourself and getting eaten by a sabre-toothed tiger (told you it was outdated). Not really relevant in the modern world, but it still plays a massive part in our everyday lives, whether we’re approaching someone in a bar, giving a presentation at work, or dressing for a night out, it just wants you to stay average, fit in and not stand out; in this scenario this translates to “don’t launch”.

Delaying the launch is probably the worst possible thing you can do. You make your excuses — there are too many bugs; it can’t go out without this feature; I’m not sure if the collateral is ready; are we confident about the price point? They’re just masks for the real issue — I’m afraid of putting myself out there.

The only remedy for this fear is to launch. If you think the product isn’t ready, launch. If you think you haven’t engaged the users enough, launch. If you start questioning anything at all, stop! Launch. The beauty of online products is that you can get something in front of real people, real users quickly. You can ask them what they like, what they don’t like, what they want. You can take all of the feedback and choose what you’re going to do next. If there’s a particular bug that is causing major problems, go fix it. If there’s a feature that’s a little confusing, explain it better or tweak the UI. If people love the service but aren’t buying, go look at the price point, speak to the business or just ask the users why they’re not buying. Digital products can be changed quickly and feedback can be sought instantly, so unless your product is truly broken (and I mean absolutely, brand damaging, doesn’t offer the user what was promised broken), just launch.

Launching is the hardest part of the building online products, but always remember that launching is the reason we start building them in the first place.

Originally published at on February 13, 2017.

I help product teams deliver by day and help businesses with their digital lives by night. Husband, dad of 4 and drinker of much coffee.