Build your own App and make Money
Make An App (In 9 Steps)
How To Make An App (In 9 Steps)
You got it! A big idea for the next killer app. But⌠how do you make an app?
In this article Iâll show you how to bring your app ideas to life. Weâll dive into iOS development with Xcode and Swift. You learn what tools to use to speed up the app development process. What happens after you launch your app? Itâs all in hereâŚ
The 9 steps to make an app are:
- Sketch your app idea
- Do some market research
- Create mockups of your app
- Make your appâs graphic design
- Build your app landing page
- Make the app with Xcode and Swift
- Launch the app in the App Store
- Market your app to reach the right people
- Improve your app with user feedback
1. Sketch Your App Idea
Every app starts with an idea. It doesnât need to be big, ground-breaking or clever. Just an idea is good enough.
Sketch out your app idea with pen and paper. The goal is to make the idea tangible. You define how your app works and what its features are, before you start developing the app. Itâs as simple as that!
You donât need any special tools to sketch your app idea. A pen and a notepad is enough. Start sketching, make a list of features, and see if the idea comes to life on paper.
I like to separate the features of the app into two groups: must-haves and nice-to-haves. The must-haves are features that your app canât do without, and the nice-to-haves are features that are great but not crucial.
When you make an app, you want the app to be as lean and mean as possible. Thatâs called a Minimum Viable Product (MVP). When you focus on what matters, you speed up your app development process and make your app more resilient against setbacks.
A good app does one thing well. Some examples:
- A note-taking app like Bear is good at taking notes
- A transportation app like Uber helps people go from A to B
- A game app like Two Dots is good at entertaining people
Itâs tempting to make an app with a lot of features. This only obscures the one thing your app is good at. Make sure your app does one thing only, and does it well.
Donât overestimate the importance of ideas. Your appâs success is determined by âidea x executionâ. Making an app that works well is more important than finding an idea that is perfect.
2. Do Some Market Research
Market research is often skipped over by app developers, even though itâs an important part of making an app.
Before you make an app, you want to know if your app idea is any good. Youâre asking questions like:
- What are alternative apps and competitors in the marketplace?
- What do potential customers want? What are their needs and desires?
- How much should I charge for my app? Whatâs a good business model?
Doing market research before you make your app can save you from making a lot of mistakes early on. You validate assumptions and assess the needs of potential customers.
Two types of market research are especially helpful:
- Finding out what mistakes your competitors are making
- Finding out if people are looking for an app like yours
Thatâs right! You can estimate the demand for an app without making it first. In this article Iâll show you exactly how to use Google Trends and Keyword Planner to measure demand for a simple to-do list app.
Finding insights also serves another purpose. You want to walk in the shoes of your customers, so to speak. Instead of assessing needs and desires while sitting safely in front of your computer, you want to get out there and talk to people.
Who is your app for? What are they like? How does your app impact a particular problem that users are struggling with? How are they currently solving that problem?
Based on your research you can clearly define the problem your app solves, and who you solve that problem for. You use these insights to make an app that serves its users better.
Sometimes you just want to make an app for yourself. And thatâs alright! You can do research for the fun of it, and to practice your craft, and make your app however you see fit. Donât underestimate the importance of preparation, research and insight, though!
3. Create Mockups Of Your App
Itâs best to make mockups before you start to build the app. A mockup is a rough sketch of your appâs layout, user interfaces (UIs) and flow.
Hereâs an example:
In the image above you see how Iâve outlined three important UIs of an app in Balsamiq Mockups. Itâs a pretty rough sketch, right?
Mockups donât include:
- Fine-grained UI elements
- Exact positioning of UI elements
- Complex color schemes and effects
A mockup shows you what an app looks like, without distracting you with unnecessary details. Itâs a functional instead of aesthetic approach to your appâs design.
A mockup should also describe the flow and interactions of your app. What happens when you tap on that button? How do you get from screen A to screen B? What is navigation flow of your app?
I recommend you use Balsamiq Mockups for making a mockup of your app. The software includes a great number of UI templates, and theyâve struck a good balance between roughness and flexibility.
When youâre making an app for a client or employer, creating a mockup is a good opportunity to show them the end result before building the app. You can guide them through the UI, by using the mockups, and help them see and imagine the complete app.
Itâs also a great idea to create a functional-technical design next to your mockup. You describe what the app does in simple words. You can create annotations in your mockup software, or just create a text document that explains how the app works.
Donât skimp on making mockups. A mockup helps you fix basic UI/UX problems early on, and itâs a great way to enroll your team, client or employer in your app project.
4. Make Your Appâs Graphic Design
Now that your project is taking shape, itâs time to make a graphic design for your app. Your appâs design includes pixel-perfect visual details, graphic effects, image assets, and sometimes even animations and motion design.
I recommend two approaches for making the graphics of your app:
- Do it yourself with a graphics template
- Hire a professional graphic designer
Professional graphic designers spend years practicing and perfecting their craft, and a good graphic designer can deliver results 100x greater than an inexperienced designer, such as yourself (assuming youâre a developer).
As an app developer you need to play to your strengths, and that means outsourcing work youâre not particularly good at. Take advantage of platforms like Upwork or Toptal to hire a professional graphic designer.
If you want to go it alone, donât reinvent the wheel. Use a design template specially made for iOS apps to save time. Use the templateâs building blocks to create your own design, and then customize them after.
There are a few templates I like in particular:
- NOW, TETHR and DO by InVision
- iOS 11 iPhone GUI from Facebook
- Stark UI kit by Baianat
- Stitch by Lina Seleznyova
- Phoenix by Adrian Chiran
- Apply Pixels by Michael Flarup
Especially the iOS 11 kit from Facebook is helpful, because it includes pixel-perfect UI elements of iOS itself. You can use it to create detailed mockups with the default iOS UI.
Be aware of copyright and licensing when using someone elseâs original work. Copyright law is real and universal. You canât just copy and use stuff you find on the internet. When a usage license isnât explicitly provided, assume that you canât use the work in your own projects.
You can use tools like Photoshop, Sketch and Affinity Designer to create the graphic design for your app. I recommend Sketch, because it has built-in support for mobile app designs, and it can export directly to @2x and @3x image assets.
The end result (or âdeliverableâ) you aim for, is a set of images and assets you can import into Xcode. You use the graphics files as the basis for your work in Interface Builder (see below).
You canât import a Sketch or Photoshop design directly, so youâll have to recreate it in Interface Builder and/or Xcode to build your app. You lay out views in Interface Builder, import image assets, and set up Auto Layout constraints, to bring the UI of your app to life.
Oh, and donât forget to check out the Human Interface Guidelines. They are exceptionally helpful for understanding how iOS design works, so you can take advantage of the design of iOS when making your app.
Thereâs a tendency among professionals to ask other professionals for free advice, especially to designers, developers and marketers. Think about it! Why do you ask your designer friend to look over your designs for free, but why wouldnât you ask your physician, dentist or endocrinologist to give you a free consultation?
5. Build Your App Landing Page
Marketing is an often overlooked and underestimated topic for app developers. Just because you made a great app does not mean that people will find it.
You should at least create an landing page for your app, and ideally before you build your app. Hereâs an example:
This website is for my app Crest. It explains briefly what the app does, who its for, and why itâs a helpful app. The page also includes a call to action (CTA) to sign up for the app invite waitlist.
This is an opportunity to connect with potential app users early on. As an app developer you want to create a connection between you and a prospect customer, so that a conversation can happen. Such a conversation can then lead to a user trying out your app or becoming a customer.
Your appâs page needs the following components:
- A clear headline at the top of the page
- A brief introductory paragraph or explainer video
- An app screenshot or iPhone mockup
- A call to action, i.e. to sign up or install the app
- A breakdown of app features and benefits
- A story about the appâs creators, or an âAbout Usâ section
You can play around with the exact order of these elements. Itâs best to put the headline and call to action above the âfoldâ of the page. But itâs not uncommon to put a story or âAbout Usâ section high up on the page, to make that personal connection with people.
The page serves as a central point that you can lead people to, if they are interested in learning more about your app. And when youâre making your app, you donât have an app page in the App Store yet, so youâll need something else to present to prospect customers.
Even when you have an App Store page (example), you canât blog on that page, send out newsletters, or ask for feedback from early adopters. A simple web page goes a long way in creating a lasting connection with the people you want to reach, and serve.
Effective tools to build your webpages are Strikingly, WordPress and Leadpages. None of those tools require any knowledge of HTML.
In 2018, many app developers still see their App Store page as the only channel to market their apps. Thatâs a missed opportunity, because there are plenty of other marketing channels that can bring in app installs. Many of those work best with a website, so consider building a landing page when youâre creating your app.
6. Make The App With Xcode And Swift
Weâre finally here. Itâs time to build your app!
Now that youâve laid the groundwork for your app project, building the app itself becomes much easier. Youâve created mockups, your appâs design, and taken the first steps in marketing your app with a website. Way to go!
You build iOS apps with Xcode and Swift. The Xcode IDE includes a project manager, code editor, built-in documentation, debugging tools, and Interface Builder, a tool you use to create your appâs user interface. Everything you need to make an iOS app!
Xcode only runs on macOS, so youâll need access to a Mac computer if you want to make iOS apps.
Swift is a powerful and intuitive programming language, and itâs the default programming language to build iOS, macOS, tvOS and watchOS apps. If youâre learning iOS development today, I recommend you learn Swift instead of Objective-C.
You can divide app development into two categories:
- Front-end: This is the part of the app you can see. It includes layout, navigation, graphics, user interaction, animation and data processing.
- Back-end: This is the part of the app you canât see. It includes databases, networking, data storage, and user management.
When you build the front-end of your app, you are creating the appâs user interfaces, and you determine what needs to happen when users interact with your app. You set up the navigation of your app, and you build the appâs features.
The back-end of your app mostly stores data. Many apps these days make use of cloud-based back-ends, like Firebase or Parse Server.
When data is created in the app, such as photos, tweets or social media posts, this data is uploaded to the cloud and stored in a database. The app keeps local copies of that data, and updates them whenever new data comes in.
As a developer, you integrate the front-end and the back-end with each other. Imagine youâre building a Twitter app. You build user interfaces to create and view tweets, and you connect those user interfaces to the back-end database. Newly created tweets are saved in the database, and previously stored tweets can be read from the database.
A great number of tools can speed up the app development process. You donât have to code everything on your own. Thanks to an engaged open source community and the proliferation of commercial development tools, you have an armada of tools, libraries and frameworks to choose from.
Hereâs a quick pick of my favorite tools for building iOS apps:
- Xcode, Interface Builder and Swift for iOS development
- Balsamiq Mockups and Sketch for graphic design and UI/UX
- CocoaPods and libraries like Alamofire, SwiftyJSON and MBProgressHUD
- Firebase, Parse Platform, Realm and Core Data for storage and databases
- Fastlane automates your app publishing workflow (among other things)
- PaintCode turns your visually designed UI elements into working Swift code
- The Apple Developer Documentation has super helpful articles, tutorials and documentation on pretty much every iOS component
- TestFlight is the default platform to beta test your app (see below), and with it you can distribute your app to up to 10.000 devices
Learning how to code is challenging, just like learning any other skill. Swift, Xcode and the many development tools that are available today make it easier than ever to make your own apps.
If you feel inspired to learn iOS development, I recommend you purchase a good book or course. You can learn almost anything online for free these days, including iOS development with tutorials. Doing so isnât always a good idea.
Learning only with tutorials is a bad approach, because you miss out on many fundamental topics and best practices. Most iOS tutorials only teach you superficial coding tricks, and as a result youâll lack the foundation to code on your own.
Some online courses, like Zero to App Store, have the added benefit of giving you access to a members-only community. You can connect with the developers like yourself, who are facing the same challenges as you.
Zero to App Store also gives you 1-on-1 access to your course instructor, so you can ask questions and get help when you need it. This has proven to be vital to the learning experience of developers.
And last but not least: donât forget to practice! Practice makes perfect. Thereâs no point in watching YouTube videos about iOS development if you arenât going to practice what you learn.
Self-taught developers know this, because theyâve spent years finding solutions on their own, while learning programming. This idea isnât always incorporated in courses, books and tutorials.
Most beginner developers struggle to go from following iOS tutorials to writing code on their own, and thatâs exactly where practice leads you to mastery. You want to set aside some time in the day, or during the week, to practice, experiment, to make mistakes, and to learn new techniques.
Master iOS development with Swift and Xcode with Zero to App Store, our immersive and comprehensive course here at LearnAppMaking. You get access to our developer community, and 1-on-1 help when you need it. Learn more
7. Launch Your App In The App Store
Are you ready to launch your app? Now that youâve built the app, it is time to launch it in the App Store.
The process to publish your app in the App Store is straightforward:
- Prepare your appâs title and meta data with iTunes Connect
- Upload your latest app build to the App Store with Xcode
- Apple reviews your app, following the App Store Review Guidelines
- When your app is approved, itâs published live in the App Store
- DONE! People can now download and install your app
Making an app, and publishing it in the App Store, is exhilarating! Itâs quite a thrill, and a great feeling to have built something, put it out in the world, for others to see and experience. Congrats!
Whatâs next?
When youâve published your app, the work doesnât stop. In fact, it has only just begun! Once youâve gathered some early adopter feedback (see below), you go back to the drawing board to improve your app.
You do some market research, improve your mockups and designs, and build new features. You launch the next version of your app in the App Store, and the cycle restarts again. This is an iterative process.
You also need to promote your app. I recommend you start promoting your app before you launch it. You generate some buzz before you launch, so you hit the ground running when you actually launch.
Hereâs some ideas:
- Start a blog and use content marketing to tell people about your app
- Submit your app to curated platforms, like Product Hunt
- Get local publicity and build a connection with influencers in your field
- Create an onboarding campaign for new app users
- Optimize the keywords of your app with App Store Optimization
- Focus first on getting 1 user, then 10, then 1000, then 10.000
- Use the network effect to build a product that gets better when more people use it, and help people share your app with others
- Set up an App Install campaign on Facebook, or use Search Ads in the App Store
- Use SKStoreReviewController to ask app users for a review (which subsequently boosts your App Store ranking)
- Improve your app meta data and screenshots, and tell people about the benefits of using your app (instead of just listing features)
Whatever you choose to do: stick with it. I donât fear the warrior who has mastered a 1000 techniques, but I do fear the warrior who has done one technique a thousand times. The same goes for marketing: consistency is important!
8. Market Your App To Reach The Right People
App developers are problem-solvers. Your app solves a problem for someone, and thatâs what convinces them to install and use your app. But is that all there is to it?
Marketing helps to make change happen. Changing from an old solution to a new one, for instance. As an app developer, part of your work is helping people make that transition.
Marketing has a bad reputation, especially among tech-minded people. When thinking about marketing, they think about the sleazy door-to-door salesman, about how Facebook sells their private information, and about convincing people to buy stuff they donât need.
Developers often think that good products donât need marketing. When you need a hole drilled, you buy the right drill bit. Itâs logical, right? Then what do you need marketing for?
Most products we buy arenât as straightforward as drill bits. What makes people choose iPhone instead of Android? Why purchase a Tesla instead of a Volkswagen? Do people go to a 3 Michelin star restaurant because theyâre hungry?
Marketing is the voice that tells people who you are, what you stand for, and how youâre different from available alternatives. Marketing is about trust, empathy and making a connection with people.
Itâs about having the humility to tell someone your solution might not be best for them, and about having the courage to speak to those that can benefit from what youâve created.
Do you need marketing as an app developer? HELL YEAH! You want your ideas to spread, right? Your product gets better when the right people benefit. Marketing is a way to reach those people. Use it wisely, and donât hide behind logic. Marketing is a question you canât solve with logic â the only way forward is by making a personal connection.
Where do you start? Ask 3 simple questions:
- What problem does your app solve?
- Who is your app for?
- How can you reach those people?
Use the tactics explained earlier, like writing about topics related to your app, or starting an ad campaign, or onboarding new users. Help people discover that your app is meant for them.
Building apps isnât just about coding â itâs about making change happen too! In Zero to App Store you learn the basics of app business and marketing, as well as learning iOS development. Learn more
9. Improve Your App With User Feedback
Real user feedback is important for making an app. You use a userâs experience, and their feedback, to improve your app. So how do you do that?
- Use app analytics to gather quantitive data
- Use surveys and interviews to get qualitative data
- Talk to your users regularly and build a personal connection
The easiest way to get feedback from the users of your app, is to simply send them a personal email to ask how theyâre doing, and how theyâre using your app. You literally ask: âHow are you using my app?â
The key is âhowâ. You donât ask if they like your app, or how they want to see it improved, or what they think about a new feature. You can ask those questions, but theyâre likely to give you opinionated answers. What you need is real-world answers.
In his book Donât Make Me Think, Steve Krug argues that you want to watch real users as theyâre using your app. You can ask them what motivated them to take a particular action in your app, or what they expected as a result, but you donât want them to think too hard about the questions.
The risk of running surveys and focus groups is that people start to think about what theyâre thinking, and think about how they would react in certain scenarios. Itâs better to put them in the scenario youâre researching, and watch what they do!
Once you have done some of those feedback sessions, you identify interactions in your app that you thought would go differently. You compare your expectations against real-world results, and see if they match up. If they donât, you either need to change your expectations, or change your app.
Make a list of potential improvements, and fix the items in these two categories:
- Fix things that are obvious mistakes
- Fix things that are easy to fix
Donât make it too complicated, itâs not rocket science! Improve the things that need to be improved, and quickly launch a new version of your app.
The key to working with user feedback is experimenting with actions and results. No one knows what works best until youâve tested it, and measured the results. The quicker your turn-around time on experiments and their improvements, the faster your app improves.
You can beta test your app with TestFlight. Simply invite some people to test your app, and send your next app build to them. You can invite up to 10.000 people, and they can provide quick feedback on your latest iteration.
Whatâs Next?
Pfew, thatâs quite a workflow! So whatâs next?
First, itâs important that no creative work has ever been made by following a step-by-step template. You now know the steps, but your implementation of those steps is what counts in making a successful app.
Second, you need to treat your app as a business. Itâs a businessâ purpose to deliver value, and to keep the ability to deliver value by charging a fee. You get paid for being useful, and as a result you stay in business.
I recommend you figure out where you are in this app making process, and take the next step as best you can. Keep making steps, building momentum, gaining insights, and donât stop. Before you know it, youâre making an impact with your app â or just have fun!
Good luck, and happy app making!
This comment has been removed by the author.
ReplyDeleteCreating an app requires careful planning, choosing the right development platform, designing a visually appealing and intuitive UI/UX, thorough testing, and a strong marketing plan to reach the target audience. As I worked on digital marketing agency, we can help businesses create and promote their apps effectively to achieve their desired goals.
ReplyDelete