Photo of man tapping smartphone by NordWood Themes on Unsplash

Creating Consumer Apps: What you need to know


The overwhelming popularity of mobile apps has contributed to many success stories for a lot of companies, but that popularity has also caused a saturation of the market as many app developers try to cash in on the trend. Back in 2007, when Apple launched the iOS platform (it was called iPhone SDK at that time ), the world first became acquainted with the mobile app.  In those days, virtually any app that made it to Apple’s App Store had a decent chance of being perused and downloaded. Today, businesses creating a new app face a daunting amount of competition in the App Store as well as in Google Play and on other app marketplaces such as Amazon. If you’re thinking about developing an app, or are already invested in the process, here are a few considerations that might help your app stand out and become successful.

Know the market for your mobile app

The first thing to consider when developing a new app is its purpose.  App marketplaces encourage app creators to make sure their apps provide sufficient value to the end-user.  Apple asks that you create an app that is “useful, unique, and provides a form of lasting entertainment”.  In order to assess how useful, unique and entertaining your app is, you should first research existing apps that are similar to your own in order to improve your understanding of what is already available and to make sure your app improves upon the others or offers something different.

As you peruse the market, keep in mind that in today’s app market, your marketing plan and your development plan are equally important and inextricable from one another. Take the time upfront to gather as much information as you can about the market for your app in order to make sure that your app is solid as a product but also as something that you can market through the leading app stores.

A solid marketing plan is crucial to any new app’s success and you have to take steps to set your app apart from the herd.

What are the differences between Native apps and Web apps

Once you have established a marketing plan, the next step is to plan for the app’s development.  A fundamental decision that you will need to make early on is whether you want a Native or Web app.  There are some fundamental differences between these two types of apps and you will need to decide which format best fits the needs of your particular business.  Native apps are delimited and designed to work solely on one specific device such as an iPhone or Android. The upside of using a native app is that your app will be visible on Apple’s App Store or via Google Play and, since the app can be downloaded to the phone or device, Internet access is not crucial for the app to function on the device.  Web apps, on the other hand, require an Internet connection, but the upside of using web apps is that your app can be accessed across multiple platforms.  There are plenty of differences between these two types of apps, so it’s best to go over your expectations of the app’s functionality with your developer and together you can decide which type of app will work best for you.  Remember, when creating an app, there is never a “one size fits all”.

The stages of developing your app

The initial stage of the app development process should answer the following questions:

  • What need does the app fill or what problem does it solve?
  • What makes my app unique or useful?
  • Who is the target user for this app?
  • What is the best type of app for my needs: Native or Web?
  • What will users expect from my app?

Successful app development requires flexibility

Once you have a good handle on this information, you are ready to begin developing your app. At this point it’s important to keep in mind that your app will most likely deviate from your initial plan. The app development process almost always uncovers unexpected challenges, veering off in new directions and prompting changes that you might not be able to foresee at the onset of the project. Rather than fighting this tendency, or trying to force a development plan to align directly with what you might have jotted down at the outset, it’s best to accept change as a very normal, perhaps even necessary, part of app development. Allow your app development process to be flexible and thereby avoid the kind of rigidity that tends to interfere with the development of a successful app.

Communicate with your app developer

Another crucial element to successful app development is communication.  After you have consulted with your developer and discussed your initial ideas for the app, you will want to maintain a constant flow of communication with your developer.  There is a lot of back and forth in custom app development, so it’s best to prepare yourself for an ongoing and collaborative relationship with your developer.  Better communication begets better product.

Be realistic about your development budget

Lastly, you will need to have a flexible budget.  Ideally, your app’s development should take up 50% of your allotted budget with the remaining 50% reserved for addons, tweaks, and other unforeseen expenses. The more headroom you have in your development budget, the better prepared you’ll be to deal with the inherent uncertainty and risk that accompany all software projects.

App development is fluid in nature, and there are often cases where the development will exceed what you expected as your needs and the app’s functionality evolve. When you budget for the development of your app, try to give yourself as much wiggle room as possible so you can be flexible.  If you can manage that, you will definitely have a leg up on the competition. You’ll also be better situated to deal with the other business side of app development: selling and marketing of your app. As you budget, keep in mind the costs associated with operating a business, since the work of selling an app will require marketing expenses as well as the occasional need for tech support and regular administrative expenses.

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more