How to Create an App

Published:
Technology
App creation has been a task exclusively for software developers - that is, until NoCode platforms appeared on the market a few years ago. NoCode platforms are now allowing everyday people to create their own applications.

Web development is dominated by NoCode services such as Wix, WordPress, and Squarespace. Similarly, e-commerce sites can be built without code using Shopify or with Woocommerce in conjunction with WordPress. Although NoCode for app development is not as frequently used or as viable for all cases, it is still a method that has rapidly grown- and is still growing - over the past three or four years.

Using a NoCode platform, you can rapidly create an app that can serve as a MVP - a minimal viable product - and then get feedback without investing a lot of time or money. From there, you can launch the app onto a mobile service - App Store or Android - or keep it as a web app. Some people like to test app ideas in NoCode platforms and then commission a software developer to create a more sophisticated version of it.

An interesting trend: businesses are developing their own apps to look at data in a different, more accessible way. From a business standpoint, having a web app for, say, inventory management or project tracking can be valuable for centralizing information and collaborating with team members.

In this article we are going to learn how to develop a simple yet effective app using a NoCode service. This guide will walk you through the application development process so that you can create a great app, even if you haven't coded a day in your life.

We're going to do this in four easy-to-follow steps. Let's start with idea creation:

1. Refine the idea

You've (probably) got an idea for an app. However, you need to think about how your idea will work as an app, in quite a bit of detail. So start thinking about and subsequently writing down things about this list:

1. Start with the app's general purpose. Is it for college students who need to schedule their day better? Or is it just for your company, ex: to manage inventory?

2. What features can the app have? What features are necessary and what are some cool features to potentially include?

3. Brainstorm features that would separate your app from the others. Think about how to sell those features to possible users. Just make sure all your features lead to effectively doing one thing, since too many features may clutter things up.

4. Consider the results of using the app yourself. For instance, consider the problems your company is having, and subsequently how a web app could resolve those problems.

Next you'll want to start looking for the best way to create the app. Although we'll get to different methods in step three, for now, just be thinking if you want your app on the App Store or Google Play or both, or if it's going to be for personal or business use.

Once you've detailed out an idea tailored for app development, you need to do market research. Identify target users (write down users' obvious desires which you can include in the app), analyze competitors (particularly focusing on what they're doing wrong, or at least not including, so your app can be better), and consider pricing (think business model).

2. Design the app's functions and looks

In the last step, we advised you to come up with a list of features for your app. If you can't get your mind spinning, think about common features such as e-commerce integration, social integration, and a feedback system. I like to get specific about the features I want in the app. If I'm building a day planner app, I may write down these features --> a calendar view, in-line editing, and commenting.

But it's not just enough to write out a description of what your app will do. You need to visualize it. You need to visually explore and, to an extent, determine how your app will function and look before moving on to the creation of it.

Here's how to map out the look and functions:

Before anything else, I recommend sketching out your app on paper. Free hand drawing stimulates the creative parts of the brain, so a pen and pad will help you conceive/visualize ideas better than writing a description. I recommend printing out blank phone templates and filling those out. From my perspective, sketching out the app is a necessary step to complete before moving on to digital visualization.
An iPhone template sheet to fill out


Next, you can do one of two things, or in fact do both if you desire extra preparation. The first is to wireframe. Wireframing is when you brainstorm a blueprint for your app. It's typically done with an application (such as Balsamiq or Sketch) and it's mostly for mapping out functionality. With a good wireframe tool, you can sketch out how each screen of your app will appear, what will happen if you click certain buttons, and test features - and it doesn't take very long. After a few days making wireframes, you should have a good idea of what the app will do. Just note that wireframing does not emphasize design, i.e. the aesthetics (such as color scheme) of the app. 

Second, either go straight into making a mockup or do a mockup after wireframing. Again, Balsamiq and Sketch are great tools to use. Mockups are like wireframes except they are more detailed and sometimes put emphasize on the design of the app. With a mockup you test the flow of the app, meaning you make sure navigating the app is smooth and that each screen is optimized for a specific use case.
 
If you want to play with the aesthetics, consider graphic design. That way you can work with different color schemes, input various images, and if necessary, experiment with animation. Either hire a graphic designer to do this for you, or if you're confident in your eye for aesthetics use a graphic design template.

All this preparation will take several weeks, and likely some dollar bills, but it's worth it! It will save you in the long run.

Finally, get feedback from people. Share the wireframes, mockup, and graphic design with as many people as possible, from family and friends to acquaintances at work. The main things you're looking for: (1) does it solve the problems you defined, and (2) is it intuitive to use? Revise based on honest responses.

3. Create the app

Let's make the app!

There are many different app development methods to sort through. Of course, if you've got the budget, you may just want to hire a mobile app development agency. I'm not going to spend much time on this option since you've probably ruled it out if you're reading this article. Just know that it's there, and it can cost up to $50,000.

Also note that you can hire a freelancer at less than one third the cost, but you've got to be really hands on with the project.

Now here's a brief breakdown of the options to create an app yourself:

1. Native app development

Use code (ex: Swift for iOS) to develop an app that is designed for either Apple or Android. To do this, invest some money and a lot of time into learning the required skillsets or collaborate with a developer.

2. Mobile app framework

Apps developed with a mobile framework are sometimes known as hybrid apps. Again, you've got to take the time to learn the skillsets required to use a mobile framework such as Ionic or jQuery Mobile. Mobile frameworks can work with both Apple and Android.

3. Use a NoCode builder

A NoCode app builder will allow you to develop an app without any programming knowledge. The creation will be a mostly drag-and-drop process, and while it won't be as flexible, it will take a whole let less time and may be a great option depending on your idea.

Let's hone in our focus on the concepts that are going to be true, no matter the method you choose:

Backend development --> You need a place to host your app and store information. Thus, the backend of your app should consist of a server, hosted on the cloud, and a database. Sign up for a data storage service such as Parse and use MySQL to ease this process. If you are using a NoCode platform, then you don't need to worry about backend development, since upon signup, you've secured hosting and data storage.

UI (User Interface) development --> Either start from scratch and code the user interface with Swift, or use PaintCode to convert your mockups and wireframes into swift code. In any case, you're developing the front-end of the app. Developing the user interface is when the features, flow, and aesthetics of the app come to life. In a NoCode platform, you'll probably start with a template and, from there, the process is drag-and-drop.

Beta testing --> First off, just test the app with friends and family, and ask questions about the intuitiveness of the app. Perhaps watch them as they use the app. Then adjust accordingly. Once you've got a great app, you want to beta test it. Android allows you to pre-launch the app in a live environment and watch the progress whereas you must send an iOS app through the service, TestFlight, for beta testing. 

Let's go ahead and make a simple business app in Webase. Webase is our own NoCode platform which is still partially in development. There's many features and design appearances we plan on adding in the future, but even now we can still make a functioning business application. 

The idea: A small-business owner is planning to start a monthly newsletter. He wants to create a personal blog app to keep his content in one place, structure out the writing process, and then track the progress of each published article. He also wants to create a sign-up form for his newsletter and put it on his website.

Step 1. Click 'create a new app' and fill in the basic info.
Filling out the app details

Step 2. Create a table. We'll name it 'Articles'. Then we'll create two basic fields: 'Name' with the field type as 'String' and 'Content' with the field type as 'Text'. This is the table he'll do all his writing in.
A table in Webase

Step 3. Create another table, which we'll name 'Writing process'. Let's define three fields: "Keyword" (field type 'string') "Monthly Searches" (field type 'number') "Competition" (field type 'single select' with values 'low', 'medium', and 'high').
Defining values

Step 4: Create the last table. Let's name it 'Article Promotion Progress' and then we'll create five more fields: "Name" (field type 'Link to object') "Date Published" (field type 'Date') "Sent to mailing list" (field type 'Boolean') "Build Backlinks" (field type 'Boolean') "Post on relevant forum sites" (field type 'Boolean').

As you can see, we can now open the app:
The app so far

Step 5: Inside the app editor, create a new view, and toggle the dropdown to form. We'll be able to drag this form into a website - which can also be made in Webase.
Creating a new view

Inside the view editor we can design how this form can look. In our case, let's just add a field, email, and a component, button, and style accordingly.
The view editor

Now we can use the tab in the left-hand corner to switch to the website editor. Just drag in the form view like so:
Dragging in a view

This is how the form looks on the website:
A basic form

Now, the powerful nature of this is that anything input by a user will be logged into the app, which is acting as a database for the site. There are a lot of possibilities here.

So let's recap. We just made an app inside of Webase for a fictional business. With it, we can write research potential topics, write articles, and track the progress of published pieces. We also created a form and put it right inside a website!

4. Launch + Promote the app

Unless your app is for personal or business use, the natural step following app development is release and promotion. The release is straightforward. For an iOS app, signing up for an Apple Developer Account cost $99 annually. Upon sign up, upload the app and wait about a week for Apple to review it, and then it will be public for all to download. A Google Play developer account is a $25 one time fee, and no review process takes place. 

Long before making it to the launch, you should be thinking about promotion. How do I market this app? The promotion process of an app works best when started before the app goes live. Once it does, you should have a detailed app marketing process already mapped out so you can gain strong inertia. Mobile app marketing constitutes its own guide, so we won't get into the details in this article. That said, keep in mind the following guidelines as you move forward. 

Marketing is how you get your app seen by target users. So, first make sure it's optimized for App Store searches. The name of your app, search keywords (for the App Store, not Google Play), screenshots and short preview videos, soliciting positive reviews with prompts on the app while trying to direct negative feedback to you personally, and push notifications to increase use time are all good ASO tactics. Running ad campaigns which follow strong initial traction can be a good thing. 

Outside the app store, make a landing page for your app. I recommend putting up the landing page before the app goes live and allowing for preregistration (i.e. get people on a waiting list). Create a blog and newsletter for content marketing purposes. Social media outreach, such as joining relevant conversations on Twitter, can increase brand awareness; in fact, feel free to use your personal social media accounts to notify friends about the app.  

---------

Good luck to those who are turning ideas into powerful apps! I hope you enjoy the development process and see results after the launch. 

If you want to experiment with a NoCode platform, sign up for Webase right here. When you sign up, you'll also receive notifications about the progress of our own app development and content marketing.

I'd love to hear any feedback you have about this article! Questions about the article (and Webase itself) are always welcome.