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:


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.


Collections are a data type that is used to hold multiple other data types. For example lets say you wanted to keep track of all of the names of items in a player inventory.


Storage space is valuable. Whether it’s memory on someones computer that needs to be preserved to keep it running, or space on a drive to keep it from being full.


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.

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.


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


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.


Hashing is a process where you take some sort of input data and use a hashing algorithm map it to some sort of output data (called a hash).

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.


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.


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.


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.


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