App Development Part 1: The Plan

How to know where to start when developing an app.

July 1, 2019 | Mike Buss

Congratulations, you came up with the idea that will make you tens, hundreds, or millions of dollars! What’s next?

As part of my next project, I’m writing a series of articles on how to develop an app. In these next few posts, I will document the process for planning, designing, building, and launching an app from scratch.

I will use my next project, a day planner code-named BetterLife, as an example throughout this series. I will cover how I built the app myself and how you could achieve the same results by going through a development agency.

Who is this article for?

This article is for anyone looking to develop an app, including designers, programmers, and people who have no technical training whatsoever. I’m going to walk through the process of creating an app from idea to launch.

If you are a non-techie (also known as a normal person, or a muggle), I will teach you how to prepare your idea and convey it to a design or development team. I will give you the tools necessary to save time, money, and frustration during the app creation process. And, I will show you “how the sausage gets made”.

If you are a designer, I hope to teach you some techniques for designing iOS apps that are both beautiful and functional. I will cover the tools and practices I use to create my own iOS apps.

If you are a developer, I will teach you how I build my applications using Xcode 11 and the new SwiftUI framework. I will break down the app into its individual features and show how I developed them.

Article Series

An elevator pitch is a short description of an idea that explains the concept in a way such that any listener can understand it in a short period.

Being able to describe your idea concisely is essential for several reasons. First, it lets you hone your plan down to its purest form to see if it’s worth tackling.

Second, it helps you convey your idea quicker to investors, designers, and developers - not to mention your customers! Having a clear understanding of what problem you’re trying to solve - or what value you’re trying to add - is essential from the beginning.

Your target market is your customers. Figuring out who they are will help you build a more targeted product and market it appropriately.

Talking to your customers as early as possible can be helpful. In the book The Lean Startup, Eric Ries says talking to your customers can help remove uncertainty about what they really want - and, just as important, what they’ll pay for.

A minimum viable product (MVP) is a product with just enough features to satisfy early customers. Figuring out your MVP can help prevent working on a project for months, or even years, only to launch and find there are no buyers.

An important thing to keep in mind when developing an app is you can always iterate. When the MVP is released, you may find that customers ask for different features than you had planned.

Defining the MVP before you start will save you the time and effort involved in ironing out the details while the designer or developer is on the clock.

Next, if you’re not developing the app yourself, you’ll need to find a developer. Unless you know one in your social network, you’ll likely want to reach out to a development agency. (Shameless self-plug: I run one if you’d like to work together!)

Regardless of who you choose for your developer, you’ll want to have your items from above: your elevator pitch, target market, and minimum viable product.

You should expect to receive a quote before the work begins. And, you should expect to sign a contract saying you own the final work product after you’ve paid in full.

Your mileage may vary, but I would be aware that most developers will not take equity as payment. I have a policy against it, and I know many others who feel the same way. Considering 90% of startups fail, the safer bet for developers is to ask for cash.

If you’re thinking about requiring your developer to sign a non-disclosure agreement (NDA), you might reconsider. This post goes into great detail on why I won’t sign one, but to summarize: they create a liability for the developer and their other clients. On top of that, it’s the execution of an idea that drives sales, not the idea itself.

After you’ve identified a developer, a designer, a development firm, or some combination of the above, it’s time for the next phase: designing your application. In the next article, I will cover how the design process works for apps and how it worked for BetterLife.

Even if you’re not designing or developing the app yourself, I recommend following along to get a better understanding of how the app development process works.

Have any questions or comments? Feel free to email me!

Previous Post

TabbedView in SwiftUI

How to quickly implement and style a tabbed UI using SwiftUI.

Next Post

My Standing Desk: A Review of the XDesk Terra Pro

A high quality desk from a company with terrible quality control.

About the Author

Mike Buss is a software engineer from Ohio who works primarily in the healthcare space. His work has been featured on and helped hundreds of thousands of patients. In his spare time, he writes about software development and more.

Follow @michaeltbuss on Twitter as he continues to document his software development journey.