Filter by category
In 2016, Ben Horrowitz dedicated a disruptive book to the lack of easy answers in tech entrepreneurship. While other business and management books lured audiences with the illusion of ‘the promised formulas,’ Horowitz dispelled the haze by putting it bluntly: being a tech entrepreneur is hard. Tremendously rewarding, but incredibly difficult. It has no formulas for success, it has no guarantees, and it’s not a straight paved road. Every tech entrepreneur should get over it and get on with it, learning how to thrive while doing the hard thing.
Inspired by his honesty and having more than a decade of expertise in the tech-world ourselves, we’re living by the simple hard truths of how successful software products are built. We’re not preaching formulas, just encouraging the formation of adaptable mindsets and courageous skills. Our goal is to help our clients’ tech businesses grow by tackling software products creatively, smart, and efficiently. To achieve that, we’re prioritizing “the difficult talk” — the talk about scopes, budgets, expectations, and goals. We insist on having it early on. In fact, let’s have it right now.
Passion is everything, and you should be in love with your software product idea. However, love is sometimes blind, and cognitive biases are always lurking around the corner. Thus, the chances are that you won’t predict all the limitations, flaws, and challenges down the road. No amount of complex prediction models, stats, or metrics will be able to foresee the future with 100% certainty.
In this context, when starting a new software project, you might have the impression that you know exactly how you want your software product to look and behave. You might already envision not only your end goal but your success as well. Of course, you expect the same amount of certainty from your development team. Some software companies will be ‘yes’ sayers, giving you the confidence to do it fast and under budget. They will make every possible effort to ensure that they will pull it through no matter what. In fact, they will be drawing you back.
The reality is that building software products in our current ever-evolving context leaves little room for certainties. What’s in today might be out tomorrow, and what’s important for people now might be considered superfluous in no time. Smart software products are not built on rigid, set-in-stone blueprints. They are symbiotic tech organisms that evolve with the market and its needs.
So, instead of falling into the trap of a waterfall development paradigm, in which you nail down a list of features and then ask your development team to implement it fast, fine-tune your mindset to the market.
Ideally, it would help if you started with a discovery phase to dive into the deep end of what you know and, more importantly, what you don’t know about your future product. Once you do that, you’ll have a clearer idea of where to head next.
Our recommendation is to start with the hard things for all the products we build: build the features you’re not sure about upfront and test them. Adapt as you go. Go back to what you thought was right. Improve. Be smart about it. Grow as your product grows.
As an entrepreneur, it’s only natural to keep a close eye on your budget. There are so many areas that need capital infusion, and you can’t afford not knowing where each cent goes. It’s no wonder the first question you’ll ask your software development team is, “How much will it cost?”. Unfortunately, the answer isn’t that simple.
The most efficient way to develop software is by having clear and detailed up-front requirements. But this may not be the best business decision given the market’s insane pace and the unknowns that come with every new beginning. The smart approach is to be flexible, prepare to learn along the way, and admit that there’s room for slightly different outcomes than initially anticipated. In a nutshell, move fast, test the biggest assumptions first, and pivot when necessary. Lather, rinse, repeat.
By switching from “how much it costs?” to “what budget should I allocate?” you commit yourself to a better outcome. You switch from the “project mindset” to the “product mindset” and recognize the value of continuous development. You enable your software teams to tackle the product smartly, identify potential roadblocks, explore new paths, and ultimately build it to answer real, current needs.
Your software product doesn’t live in a vacuum — not when the idea for it first pops up, not when you discuss it with your development partners, and not when it finally reaches the end-users. If you accept this, you’ll also have to admit that you won’t be able to control everything that influences your product. However, you can be smart about it and take whatever comes its way as a new opportunity.
The hard truth is that as your software product progresses, you will encounter challenges. It’s a given. It’s normal, and you should be prepared for it. Your software development partners should be there to help you plan for success from the very beginning, but also help you plan for crisis-time before the tech boat will start to rock. And.it.will.rock.
That’s why it’s essential to start your software development project by having an honest conversation, discussing a plan, crafting escape scenarios that can reroute your product, and leaving room for adaptability. Recognizing that there’s no certainty will save you a lot of time, money, and sleepless nights in the long-run. And it will also equip you with the mindset and skills needed to adapt and continue to march forward. No matter how hard it will get. Because, as Ben Horowitz put it:
Sometimes, an organization doesn’t need a solution; it just needs clarity.