Dino Cajic explaining how to build an app

For the developer and business owner.

You know how to write code. You have an idea of what to make and you want to jump into it. It’s a lot more difficult than you think. Not that you don’t have the skills; if you haven’t done it before, it’s going to be a struggle. And the main reason why it most likely wont succeed is you. Now that insulting you is out of the way, let’s get serious. Let’s see how to build an app.

Be One With the Customer

Does competition exist? I’m sure it does. Why are you creating this one? I hope you’re not just creating a clone and hoping for the best; spoiler alert, that won’t work. You have to get into the mind of your potential customer, the app-user. What makes your application more favorable over the competition?

Sometimes the best apps come from people that worked in the industry. These users are usually frustrated with the tools they’re using and find themselves saying the following frequently, “I wish someone would just invent the following” or “if this program just had the following features it would be gold.” If you’re one of these users, fantastic; you know exactly where to start. If you’re not, and you’re creating tools for a specific industry, start reaching out to individuals and asking them about their software. It helps to partner with a few different companies and provide them access to your software as it’s being built for testing. The companies get the benefit of having a product tailor-made for them.

This is a great starting point. The more homework you do and keep doing, the more successful your application will be. As you continue to expand its functionality, you’ll find additional features that could be incorporated. Go back to your testers and get their opinion on the features. Don’t be disappointed if they do not find the use for it. Be glad, it’s something that you don’t have to waste your time with building. Which brings me to my next point…

Don’t Build the Entire Application Before You Distribute It for Testing

This is what will kill your app quicker than anything else in this article. The idea is to have client engagement from day one. You create a few core features, push them out for beta testing, get customer feedback, tweak and repeat. Do not attempt to have a production-ready application first and then start getting feedback.

If you build the entire application, you’re building it for yourself; you’re not building it for the customer. Customer feedback then becomes annoying and cumbersome to incorporate. You’ll lose patience quickly and start fighting with your potential customer base. They don’t know what’s right, you do.

The chance of you finishing the application also decreases substantially. You’ll realize how time-consuming this is and you have other more important things to do. With small, iterative confirmation, you’ll feel motivated to finish your app.

That’s why you should always strive to create a handful of features at most before releasing them for testing. Remember, these features do not have to be perfect; they just need to be testable.

Minimum Viable Product (MVP)

If you’ve read any of my other articles, you’ll see the MVP concept popping up frequently.

Read my article on the MVP.

What is an MVP? Put any amount of people from the software development industry into a room and ask them that question. Good luck getting out without scrapes and bruises. Some definitions of an MVP that I’ve heard:

  • A product with select features that’s completely bug free.
  • A product will all features that can have a few bugs (edge cases). These bugs are not crippling, and even if they are, they’re just edge cases.
  • A product with select features that can have a few bugs.

I personally agree with the 3rd statement, but I’ve seen individuals define it each way. You want to be able to test as quickly as possible. Your potential clients will understand that this is an MVP product. Once approved, you move on with another MVP feature and you start refactoring your approved feature. Only now should you start polishing that approved feature of the application. Realistically, and depending on capacity, you may want to wait until you have enough features built where you start thinking that you want to package and release your application. It would then that you start working out all the bugs and polishing your UI/UX.

Research Solutions

Don’t Get Stuck On Your Language/Framework. Do some research. You’re trying to sell the product, not pat yourself on the back because you built something complicated. If you’re building an E-Commerce application, look for E-Commerce solutions out there. Does Shopify, WooCommerce, Squarespace, or Magento work for what you’re trying to build? If it does, great! It’s easier to modify those platforms (or find a developer that knows how to) then to recreate the entire application from scratch in another language.

If you’re a developer, you’ll think that you can recreate these platforms quickly. Most of the time, you won’t. They have all of the core functionality already built in; they also have features that you didn’t even think of yet. You can grab that OpenSource E-Commerce platform and start incorporating all of the features that will make you stick out from your competition. Your core functionality would be done.

This is probably the most difficult concept for a developer to grasp. It might be pride; I still haven’t figured it out. You will think that you can do it better. It might even seem more wasteful for you to learn a new language/framework than to just start creating a new application in something you already know. This sometime might be the case, but 99% of the time, it’s not.

Get Some Help

Do you have a plan? Are you funded? If so, sometimes the best course of action is to partner up with a reputable software development agency. You’ll instantly have access to a number of developers who are paid to work on your application. You’ll meet with the team regularly to review and approve progress and to help prioritize the feature list. This sounds easier than it is. Don’t count on the agency to read your mind; it’s your product and you should be involved from requirements gathering to completion.

You’ll report progress to your investors and have the time to work on other important business and marketing related projects. You’ll also have more time to go through another series of fundraising.

Lastly

With all that said, the best course of action sometimes is to stick to something that you know. There are frameworks, CMS’s, etc, that will solve your problem quickly, but it might frustrate you more to use them and you might give up half way through the project. If that’s you, stick to what you know, even if it takes you significantly longer. At the end, with a proper daily regiment, you will succeed.

Leave a Reply