The very first assignment and one every game player should be aware of, a pong clone. Easily considered the ‘Hello world’ program for game developer, pong is a great test for any budding game developer to write and get there feet wet without feeling too overwhelmed as it contains enough of the core essentials that all games require. These include a game initialisation function, where assets such as images and other external items are loading into memory. An update function that process the game logic. A draw function that renders everything so the player has instant feedback and can see the game. An input function that processes what the player presses on the keyboard and relays that back into the update so it can be drawn. Finally a clean up function that when the game ends all memory is freed and everything is returned back to normal.