You’ve gone beyond the basics and can build out a decent application!

Concepts you should know


Loops are a concept in programming that allows you to run some code for a defined number of times. This means if you have an operation you want to run 1000 times, or maybe run some code for every user in a database, or show a menu until someone makes a choice in a game, loops are what you want.


In programming we don’t always want to execute the same code. Sometimes we want to execute code based on something. We might want to check if someone has a premium account before allowing them to access a song, or check if they’re in a certain country etc.


Functions are a way to reuse code efficiently. It allows you to define a set of steps of code that should be run when the function is “called”, along with a name.


When working with code you will inevitably want to store some information. To store information we use variables. Variables are basically labels we can use to refer to information more easily.

Data Types

Everything starts with data in programming. If you want to be able to do anything you need to be able to work with data.


Classes are a programming construct that allows you to organize your code. Essentially you create a class which acts as a kind of template which you can then create instances/objects out of.


Packages allow you to break up code into chunks that make it easier to understand what each piece is doing. How this works is up to the language, typically there will be a defined file/folder structure that is used to define packages.


Many times when you are writing a program you will need to find something. For example you will need to open a file to read it’s contents, or send users a page based on their URL.

Application Programming Interface's (api)

An application program interface is basically a system that allows you to use other people’s code and/or systems. There are lots of things people mean when they say API:

HyperText Transfer Protocol (http)

HTTP (HyperText Transfer Protocol) is the way most of the web communicates. It’s the system that governs how your computer talks to servers around the world to retrieve webpages, talk to your online calendar, and even send messages in point of sales systems.


When we visit a page on the web we don’t tend to think too much about what makes up the page.


Encoding just means a way to take a set of information in one format, and convert or represent it to another format.