<img height="1" width="1" src="https://www.facebook.com/tr?id=1824058264555430&amp;ev=PageView &amp;noscript=1">
Back to Blog Listing
Praveen Seshadri
 |  September 26, 2017



Most teams in most industries will get more productive with custom mobile apps. Construction, transportation, utilities, oil and gas, agriculture, manufacturing, shipping ... the list is long. If you work in one of these industries and think a mobile app would help your team, this article is for you. It is a step-by-step planner on how to make an app and implement it for your business use case.

The article will not advise you to hire software developers. In fact, absolutely not. The article tells you how to create your own app yourself or with the help of your own team. You need no knowledge of software development or programming. Instead, you will use a no code app platform called AppSheet that is explicitly designed for business professionals like you. In general, the concepts in this article apply to other no code platforms as well.

A note of caution: every no code platform will claim you can create apps in seconds. So does AppSheet. That is true in a literal sense but it is also not true in a practical sense. You will have an app working in seconds or minutes. However, to build a good app, the one you want with the features you want, it will take some investment of time. I believe a week is sufficient, investing a couple of hours a day. Hence, the "7-day planner"!

Before you start: Select an app platform

I assume you are not a software developer. Even if you are, there are few who know and relish the complexities of programming mobile apps. Instead, you may have heard of two new kinds of rapid application development platforms:

  • "Low-code": these platforms make it easier for a software developer to build an app. Instead of starting from scratch, they provide a framework into which the developer writes code modules. In a sense, every software platform can claim to be low-code. Even IBM claims to have a low-code platform! This is primarily an option for software developers to consider.
  • "No-code": these platforms are fundamentally new. Rich and complex apps can be built without writing _any_ code. You do not need to have ever written a program in your life. For most people, this is the way to go. I recommend using AppSheetit is one of the most powerful no-code platforms available and you can build and test your apps for free.

A canonical example:

Recently, a customer posted this question on the AppSheet community site:  

 "I have a construction business. I am building a set of apps to have full control of what is going on on our job sites. One part I need to follow up is a daily production for every employee. I built a spreadsheet where I have entered all data previously referring to a specific task, in this case it is water coating. Now I have populated this sheet with existing data, and my goal is to create an app that the supervisor at the job site is able to "check off" once verified that the task is complete. This will then add up the coating applied every day by each employee and I will track how much is applied in every job site."

We'll use this as the running example through this article. You probably have one or more apps that you want to build, each with different requirements. You'll find it easy to map the ideas presented here to your needs. 

Things to do: the 7-day plan

Day 1: Create an AppSheet account. Understand the concepts. 

Day 2: Build the first version of your app

Day 3: Show/send your app to some actual users in your team

Day 4: Add some richer features photos, GPS, charts, maps, etc

Day 5: Demonstrate your app to your boss

Day 6: Enjoy your weekend and your promotion!

Day 7: Can't wait to get back to improving your app.

Day 1: Learn the ropes

Go to the AppSheet site and create an account. Most users already have a Google account, so it is easiest to sign into AppSheet with your existing Google account. In this article, we'll assume you do this, although a variety of other options are also available.

How to make your own app? You need to understand the concepts. Your app is based on data that you define. In our running example, the app has four sets of data: Customers, Employees, Building Tasks, and Daily Jobs. Once you define this data by putting each set of data into a Google spreadsheet with columns (structure) and rows (content), the platform automatically creates an app from this data. The structure of the data guides the user interface of the app. The app shows the data content and optionally lets the users modify the content. From this starting point (created in seconds!), you can refine the app to suit your needs. You should read more about app design here.

And how is the app going to run? You need to understand how the AppSheet platform works. Sometimes a picture is worth a thousand words. You can learn more about it here. The main thing to understand is that your app isn't going to be generated as source code or an executable. Rather, there is already an AppSheet mobile app ready to install in the iOS or Google Play app stores. The app you define will simply be hosted within it. It will fetch the data from your cloud-based spreadsheets and make it available on your mobile device, then use your app definition to show the data to the app users, and synchronize any data changes all the way back to your spreadsheets. 


You should check out some of the sample apps here. Make a copy of one or two and modify it to get the hang of building your own apps. Also be sure to install and play with the AppSheet app on your phone. This is a fun day!

Day 2: It begins

Now things get serious. You need to get a first version of your app running today. It really only takes three steps, but you will repeat the last step iteratively to gradually improve and refine your app.

  1. Define your data: create a cloud-based spreadsheet for each of the data entities in your app. A Google Sheet is simple to create and works great with AppSheet. If you are building our running example, create four spreadsheets—Customers, Employees, Buildings, and Jobs. Fill them with some regular sample data. Put in a clear header row for each sheet. For example, the Customers sheet may have Id, Name, Address, and Email as columns.
  2. Create an app: on AppSheet's web site, click on 'Make a New App'. Follow the instructions, and when prompted, choose one of the spreadsheets you have built (eg: Customers). The system builds an app automatically for you (yes, in seconds!) and runs the working app in an app emulator right there on the browser page. Now add the other three sheets as well. In your app, each of these is going to be called a Table. Your app's data model is a collection of Tables. The app has some default Views defined to show the data in these tables.
  3. Refine the app definition: now you can make as many changes as you want. AppSheet has a very rich set of capabilities. Don't try them all. Here are a few simple things to try first:
    1. Add or modify the UX views to see how you can control the presentation of data
    2. Use the app emulator to see how the app can be used to capture new data or edit existing data. Modify the behavior by changing which columns are shown and which are hidden.
    3. You will likely need to go back and add more columns to the spreadsheets. Each time you do, make sure to go the column structure definition in your AppSheet app editor and "Regenerate" the structure. It is important that your app and the underlying spreadsheets are consistent.
    4. Try adding a simple data formatting rule using a formula. The expression language used for formulas is similar to the language used in Excel/spreadsheet formulas. Most of the powerful and dynamic features of richer apps are based on the use of such expressions.

Don't forget to try your app on a mobile device as well. You are on a steep learning curve. You will have many questions. Join the AppSheet user forum so that you can ask and get help. But the good news is that you have your first working app. Though it doesn't yet do exactly what you want it to do, you are officially an app maker. A succesful day!

Day 3: Time to share

It is going to feel odd because you just got started, but by the end of this day, you're going to share the app with some actual users. Let's assume you are building the app for members of your team. Those are the users to target. Find more than one and less than five target users who you will invite to try using your app.

The first thing to do is to identify what you think are the most important three features you want in your app and write them down. Only three? But you had twenty features planned. It's so tough but you whittle them down to three top features. Then focus on just the first one on the list. Yes, I know that seems like an unfair trick but believe me it will help you. You're probably sure that your users will hate your app unless it has all twenty features. I'm here to tell you you may be right (eventually) but you're wrong now. It doesn't matter at the start. I've seen tens of thousands of customers make their apps on AppSheet. You have to start by getting one feature into the app and getting that app into the hands of your target users.

In the case of our running example, the important feature is to mark a Task as complete and record the amount of coating applied.  For this of course, the Tasks have to be shown, a specific Task must be selectable, it should be possible to update it to mark it complete, and the coating amounts from all the Daily Jobs for that task should be summed up. Fortunately, almost all of this is already automatically generated in your app. You will have to write a formula to sum up the coating amounts and add that into a "virtual" column to keep track of it with every Task. Most likely you will try out a few other features because you want to impress your colleagues.

Then you go to the Users tab in the app editor, enter the email addresses of your test users (not your manager/boss yet!— find actual people who would use the app eventually), take a deep breath, and hit the Share button. This is a busy day!

Day 4: A shot of adrenalin

Wow! Your team didn't hate it. Instead, they look at you with awe (or at least grudging respect) because you did something amazing. You built a custom app that could actually save them time. 

Of course, instead of thanking you, they will most likely give you many many suggestions of things to do to improve the app. Your list of twenty features just grew to forty. This is terrific news and in fact exactly why you shared the app with them in the first place. They are telling you what matters and what doesn't. 

And what if they seem most unenthused. It isn't because the app is bad or your work is bad. It just means the feature you picked isn't the one that matters. Just go back and pick the next one on your list to try instead. 

Either way, you now have a lot more information (real and validated) than you did just two days ago. You've got work to do. Take that input, add or change the appropriate features and utilize some of the features AppSheet provides. Here are some ideas for our running example:

  • Color active tasks differently from completed tasks.
  • Use a single action button to indicate task completion instead of opening a form.
  • Set up a workflow rule to send an email to the manager when a task is completed.
  • Show a chart of the total coating applied per job

A crazy busy day!

Day 5: Crunch time

Yes, today is the day you show the app to your manager. Obviously, your job title is not "App Maker". This was likely a self-driven initiative, so you're likely to be nervous. What if the manager doesn't really think this is worth it? You'd better prepare for this. Three simple steps will make this go better:

  • Make sure the app works! You have to demonstrate it. Don't be making changes till the last minute—it is the sure-fire way to break something just before the meeting. Practice a simple demo walk-through that shows the main feature(s) of the app. If possible, show it running directly on your phone.
  • Read about platform pricing here so you can answer the obvious questions about how much (little, actually!) this is going to cost. And for fun, make sure you also compare this with the cost of hiring developers to build mobile apps. Instead of spending an average of > $100,000 to make an app, you just did it yourself.
  • Make sure to share the feedback you just got from your test users. That is often the most compelling information for a manager to realize you are onto something that will benefit the entire team. 

I do not want to claim that this conversation always goes well. There are all kinds of organizations and some are naturally more willing to embrace change and innovation. There will certainly be managers who don't think there is value in innovating with a mobile app. You will need to make the case for it, and it may not be easy. However, it may help to be aware that there are tens of thousands of people like you worldwide who are following the same path and making their own apps. There is a new wave of "citizen developers" and this is becoming one of the newest trends in business. So you are not alone. Usually, your enthusiasm and creativity wins out, and your organization sees the merit of your work and initiative. And even when that happens, it is still a stressful day!

Day 6 and 7: Rest, recuperate, and ...

Yes, it's the weekend. Yes, your manager and your team really liked your work so you feel really good. And yes, you've got a game to watch on TV and are looking forward to family time. But I'm sorry to say this—the reality is that you won't really get to enjoy both weekend days!. By the morning of day 7, your mind will be thinking of the next few features to add to your app, and by the afternoon, you will have opened your browser and started to work again. You have so much more to learn about the AppSheet platform, and so many app ideas to pursue. 

Happy app making!

Learn more about AppSheet

Post Comment
Praveen Seshadri

Praveen is CEO of AppSheet and full-time coder. Over his career, he has pursued the "dream" of declarative end-user programming in various incarnations. In a previous life, he was a CS professor at Cornell University. And in another previous life, he was a partner engineering manager at Microsoft in the SQLServer and Bing teams.

[Features, Tips & Webinars, No-Code Development, Blog Article]