Coding 1: Exploring Different App Builders

Exploring Different App Builders

Coding 1

In this lesson, you will…

  • Learn about different app builders and programming languages
  • Get set up with the tool you will use to program your App

Key Terms

  • App Builder -  programs that usually have a drag and drop interface that let you build apps without typing code 
  • Programming Language  - a way to talk to a computer, or mobile phone, to tell it to do things

 

Learn

App Builders and Programming Languages

 

 

Activity

App Inventor Set Up

 

 

Activity

Thunkable Set Up

 

 

Reflection

App Builders

 


Additional Resources

Most Popular Platforms

 

App Builders and Programming Languages

For your Technovation project, you can choose to create an AI invention, a mobile app, or both. You can start by learning what it takes to make a mobile app, and see if that is something you want as part of your problem solution.

This lesson will introduce you to app builders and programming languages that are commonly used by Technovation students. Technovation curriculum has example code for both App Inventor and Thunkable, but you can submit in any programming language you choose.  If this is your first time ever coding, the Technovation team recommends you try using App Inventor or Thunkable so you can reference our resources.

Look up any words in this lesson that you don’t recognize. When programmers don’t know what something means, they look it up! As a new programmer, it is good to ask questions and get familiar with some of the words that computer programmers use.

 

App Builders

App Builders usually have a drag and drop interface that allows you to build apps without typing code. Even though the code looks simple in app builders, you will still be learning valuable coding concepts. Here are two app builders that are supported in the Technovation Girls curriculum.

If you are new to programming, we recommend you use either App Inventor or Thunkable for your programming language to learn how to build a mobile app. The table below gives our take on which platform performs best for certain features. Depending on what kind of mobile app you decide to build for your Technovation project, you might base your decision on which platform has better support for the features you want to include in your app.

App Inventor

Thunkable

Works on both iOS and Android Yes Yes
Open Source* Yes No
Free Yes  Free for public apps that anyone can see or remix, maximum 10 apps
Available in many languages other than English Yes No
Gallery with example projects Yes Yes
Live Testing Emulator or with phone over wifi Built-in preview in browser (easier to test with)
Build app to load on phone or upload to App/Play Store Android only Limited to 2 downloads per month
User interface Basic More options and control
Maps More options and control Basic
Sprites and animations for games Easier to use Works but is more complicated
Storing data on device TinyDB (tag, value pairs) Local_Storage (key, value pairs)
Local_DB (table-like storage)
Storing and sharing data in the cloud CloudDB (tag, value pairs) Airtable, Firebase, Google Sheets, Media DB (many more options)
Artificial Intelligence built-in components Personal Image Classifier, Personal Audio Classifier, Posenet, Face Mesh (many more options) Image Recognizer (pre-built Microsoft image classifier)

* Open source means that all the code used to create the app builder is free and open to use on the web. This may be important to you if you are concerned about losing your work if an app builder stops being supported or goes out of business. It may also be important to you if you want to find a work around to use an app builder offline.

 

Other programming languages you can use for your submission

Programming languages give you a way to talk to a computer to tell it to do things. There are lots of programming languages that you can use to build apps (besides App Inventor and Thunkable). Below, you can learn more about the other languages you can use to prepare your Technovation Girls submission. Below, you can learn more about the other languages past participants have used for their submissions. You are not limited to these languages and can use any programming language you are comfortable with. You will need to provide the source code files with your submission.

Programming Language Used to create apps for You will also need Learning Resources
Java Android Android Studio Android Studio Courses

Android Development for Beginners

Swift iOS XCode Apple Swift Resources

Yuma’s Anyone can Code YouTube Channel

What you need to participate in Technovation Girls:

  • Computer
  • Internet access
  • Gmail account
    • You need a Gmail account to log into App Inventor or Thunkable. To set up a gmail account go here.
  • A mobile device is optional but highly recommended. You can use an Android phone or tablet or an iPhone or iPad

It is time to get everything set up so that you can start coding your own apps! The next two activities have instructions about how to get set up using App Inventor or Thunkable. You only need to do one of these activities, so you should decide if you want to use App Inventor or if you want to use Thunkable. It may help to discuss with your mentor which is better for your team.

If you are not using App Inventor or Thunkable, you should use this time to get set up and familiar with your app builder or programming language.

Learn why these Technovation alumnae chose the platform they used for their mobile app development.

Activity: App Inventor Set Up

Follow along if you are using App Inventor

Part 1: Sign in

  1. Go to http://appinventor.mit.edu/explore/ and click “create apps”.
  2. Log in with your gmail account. If you don’t have one, you should make one now.
  3. Once you are in, take a minute to explore. The next few steps will walk you through setting up your android phone or emulator for live testing.

 

Part 2: Connecting your phone or emulator

You can connect an phone or an emulator to test the app you built in App Inventor in three ways. All three methods allow you to do live testing, which means you can edit your app in App Inventor on your computer, and see those changes appear instantly on your phone or emulator.  

WiFi Method
  1. This is the easiest way to use App Inventor and is highly recommended by the Technovation Girls team.
  2. Choose this method if you have a phone or tablet and access to WiFi
  3. You need to be able to connect your computer and your phone to the same WiFi network in order for this method to work. 

With the WiFi method, you will build apps on your computer and test them on your phone using the App Inventor Companion App, called MIT AI2 Companion. View MIT’s instructions on how to get connected using WiFi.

Wifi Method Troubleshooting Tips:
  1. Make sure your computer and your phone are on the same WiFi network.
  2. Check that you downloaded the correct MIT AI2 Companion app onto your phone here:  AI Companion App (Android) or AI Companion App (Apple iOS)
  3. Reset your connection to App Inventor if you encountered an error.
  4. If you’re still stuck here’s a video that may help:  PhilsComputerLab: Connecting with Wi-Fi.
USB Method
Emulator Method

Activity: Thunkable Set up

Here’s a video to help you get started setting up Thunkable.

First, create an account at  https://thunkable.com/#/. Once you've finished that, let's go over how to set up your device:

Step 1

Click on the "Start Building" button.

Step 2
Step 3
Step 4

Reflection

At this point you should have choose your app builder or programming language and have your computer set up so that you can start learning how to code apps!

  • Which App builder or programming language are you using? Why did you choose this one?

Additional Resources: Most Popular App Builder 

Here is more information about what types of app builders and programming languages past Technovation Girls participants have used. Teams are not awarded extra points based on what they use to develop their app. You should choose a language/platform you are comfortable learning and coding with.

Programing Languages Popularity
App Inventor 46%
Thunkable 44%
Java or Android Studio 7%
Swift or XCode 3%

Sneak Peek!

Here are two videos from the MIT App Inventor team that walks through how to choose a problem, brainstorm a design, and code an app - exactly what you'll end up learning in Technovation Girls! Don't worry if you don't understand the whole process yet, this is just a preview of things to come.