Is Building a Web App from Scratch Right for Your Small Business?
This year, I received several software (web app) requests from small businesses looking to expand online. They all wanted similar features: a website that allows their customers to place orders for products, hosted on a custom domain, and designed to match their brand. In most cases, my response was, “Have you tried any existing solutions?” “Do we really need to build something from scratch for this?” This is a critical question that every small business should learn to ask before investing time and resources into creating anything—be it an e-commerce website, an app, or custom software. It’s essential to explore this question and weigh the trade-offs involved. In this post, I will explain why asking this question is so important.
1. Building a Good Software is Hard
Building good software is difficult. It’s common for people to underestimate the complexities involved in software development. No thanks to Hollywood movies, where one guy, could build an app overnight while drunk (The Internship, 2013. A great movie by the way). I have met a lot of great software engineers in my career and none of them code like that.
You might say: “But Theo, an e-commerce website is not a software, it is a website”. You’re not far from the truth. An E-commerce website is a web application. It has a website and a software application component. It’s certainly not a simple website that my 9-year-old student at Dot Campus can whip in a few days with some guidance. I mean, if it’s that simple, you could achieve the same thing with a few GPT prompts and then find a host for the HTML and CSS.
2. Software Development Takes Time
The development software requires meticulous planning, strong architecture, and a deep understanding of the users’ needs which takes time especially when you’re doing it from scratch. It’s not just about writing code; it’s about solving real problems, enhancing user experience, and ensuring reliability. Any “simple” application that works flawlessly likely took an incredible effort and time from the team that built it.
3. Do you have an in-house technical team?
Before you consider building your own application from scratch, first consider the capability of your team. Do you have at least one person in your team who doesn’t get bewildered by tech stuff? Someone who can buy your domain name and renew it every year for you, who can to an extent, understand the technical jargon developers always seem to ramble about.
A small business once reached me about rebuilding their e-commerce website. They did not have any technical team members. They relied on a freelancer to build their last website. The problem was that the freelancer was not responsive anymore and had either refused to grant them access to the domain name host or had lost the login credentials. They had no access to their domain name, the codebase and the website host. This wouldn’t have been a problem if they had a team member who knew about domain names and how codes are stored on GitHub.
💡 You should check out our Intro to Web Development short course at Dot Campus. Domain names, hosting, and Git are some of the first things you will learn. And you can finish it in 4 - 8 weeks.
4. Software Apps have a life cycle. Can you keep up?
One other common misconception is that once the initial code is written and deployed (hosted), the job is done. In reality, you’re only halfway there. Software Apps have a lifecycle called the Software Development Life Cycle (SDLC). Check the figure below:
Some parts of this lifecycle may not apply to a small e-commerce website, but most of it does. For instance, for an e-commerce website, you have to think about these:
- Design: How do you add or remove new products? What should the website look like?
- Development: in-house or outsourced?
- Testing: how can you ensure that your website is free from bugs and content that you don’t want?
- Maintenance: every software needs regular maintenance and upgrades, just like your Windows OS (maybe less frequent than your Windows). Essentially, what happens when you find a bug? Who will fix it?
5. Software Development is Not Cheap
If anyone claims that you can create a quality web application at a low cost, that person is either inexperienced or not being completely honest with you. In either case, you’re likely to regret working with them sooner or later. For projects that extend beyond a standard static website, you should expect to increase your budget to around ten times what you would spend on a simple static website. Furthermore, as you add more features, you should anticipate increasing that budget (and no, this isn’t an exaggeration).
If big Nigerian banks; despite their substantial resources, still struggle to get their apps to function flawlessly, why then, do you believe that your 500,000 NGN budget will get you something great? (I like your faith though 😁)
Conclusion
I am not trying to discourage you from building your own thing for your business. My goal here is to get you to fully consider other better alternatives to starting from scratch before you commit to it.
If you are looking to sell online, consider using the following:
If these are not good enough, consider these also:
- Bumpa
- Woocommerce (WordPress)
- Shopify
There are various options available depending on your needs. It’s a good idea to consult with a real expert who may be able to guide you at no cost. Even if you think you already know the answer, it’s still worthwhile to seek expert advice.
For example, one small business owner once dismissed one existing solution because he felt that it didn’t fully meet their business requirements. However, after we spent a few minutes exploring the solution together in greater depth, it turned out to be exactly what they were looking for. A few months later, he informed me that they had decided to adopt the solution, and everything was going well for them.
Remember, the goal is to make informed decisions that best serve your business needs and resources. Sometimes, the smartest choice is to leverage existing solutions rather than reinventing the wheel.
Feel free to reach out if you need guidance on choosing the right solution for your business. If you know other solutions small businesses can leverage to grow online, please share in the comment section!
Keep thriving!