App Builders and Programming Languages

Are you ready to become a computer programmer and code your very own apps?Before you start, you will need to decide what you will use to code your app.

This lesson will introduce you to app builders and programming languages that are commonly used by Technovation Girls students. The Technovation Girls curriculum has example code for both App Inventor and Thunkable, but you can submit in any of these languages: Thunkable or Thunkable Classic, App Inventor, Swift, or Java. If this is your first time ever coding, the Technovation Girls team recommends you try using App Inventor or Thunkable.

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 let you 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.

App Inventor

Thunkable

Android

x

x

iOS

x

Cross platform

x

Open Source*

x

Free

x

x**

Available in many languages other than English

x

Gallery with example projects

x

x

Real Time Testing

x

x

* 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.

** Thunkable allows account creation for free. Thunkable also provides a paid subscription service that will allow you to create private apps. Free accounts create publicly viewable apps that any other user can download and tinker with. Other users downloading your code will not affect the code in your own account.

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.

Programming Language

Used to create apps for

You will also need

Java

Android

Android Studio

Android Studio is the program you will use to create and test your Java code

Swift

iOS

XCode

XCode is the the program you will use to create and test your Swift code

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 (App Inventor & Thunkable), or an iPhone or iPad (Thunkable only)

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.

Activity: App Inventor Set Up

Part 1: Sign in

Log in with your gmail account. If you don’t have one, you should make one now.

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 Android phone or emulator

You can connect an Android 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.

This is the most technically difficult method to use and requires you to install software onto your computer.

Choose this method if you have an Android phone or tablet and no WiFi.

Using this method you will build apps on your computer using App Inventor and will test them on your phone by connecting it with a USB cord. You will need to download software onto your computer and the companion app onto your phone. If you are using a Windows computer, you may also need to download a USB Driver for your phone. For Macs, you do not need to worry about USB Drivers. View MIT’s instructions for the USB method here.

USB Method Troubleshooting Tips

Reset your connection if you encountered an error or page not loading completely.

You may need to enable developer options before they show up in your settings. Here is a good article to show you how to enable developer options and USB debugging on most Android phones: howtogeek.

You may need to accept the dialog on your phone before it can connect to your computer.

Mac

You may need to change your default security preferences to if you get an alert that says “”MITAppInventorSetup.pkg” can’t be opened because it is from an unidentified developer.” To change this open security & privacy in your settings and click “open anyway” or change your settings to allow apps to be downloaded from anywhere.

Windows

Make sure aiStarter is running. You may need to search for it and start it up.

This method can be very tricky to use, especially on Windows, and is not recommended by the Technovation team.

You should use this method if you have no Android phone or tablet.

An emulator is software that allows you to run a virtual phone on your computer. With the emulator method you will build apps on your computer and test them on your computer using an emulator.See MIT’s instructions for the emulator method.

Troubleshooting Tips

In Windows, make sure aiStarter is running. You may need to search for it and start it up.

The emulator may be slow to startup.

Reset your connection if you encountered an error or if the emulator is not responding.

Here is a video to help you connect with an emulator:

Activity: Thunkable Set up

Thunkable is cross-platform app builder, which means that any app you build on Thunkable will work for both Android and iOS devices.

Next, name your project and set it to Private or Public. Public projects are visible to the entire public community. Private projects are only visible to their creators but required a paid subscription to create.

Step 3

On the left you’ll see the tutorial panel. If you have a mobile device (Android or iOS), click on the “Getting Started” tutorial and follow the instructions.

Reflection

At the 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 Technovation Girls participants use. Please keep in mind that a majority of the semi-finalists and finalist at World Pitch use App Inventor and teams are not awarded extra points based on what they use to develop their app.

Programing Languages

Popularity

App Inventor

60%

Thunkable

18%

Java

1%

Thunkable Classic

3%

Swift

2%

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.