Prerequisites: Basics of Code 4MProspective students with other prior programming experience will need to pass a placement test to be eligible for this course offering. Please contact us here should you wish to have your child take our placement test.

The 5th course in the Basics sequence represents a major leap for our Code Campers as they migrate from the relative confines of Scratch and other blocks-based programming into real-world programming with one of the world’s most popular programming languages – Python.

Moving from the drag-and-drop environment of the first three Basics of Coding courses into a text-based environment represents a challenge but this is well worth the effort. With a fully featured language like Python, what Code Campers can do is limited only by their imagination as mobile, web development, artificial intelligence, cloud computing, robotics, financial engineering and bioinformatics are well within reach of the savvy Python programmer.

To help familiarise Code Campers with the basics of programming in the Pythonic context, we have chosen to elucidate these concepts through Minecraft – one of the most iconic, beloved and dare we say, educational (so declares the New York Times) video games of our time.

Please note that the focus of this course is to teach fundamental Python programming concepts through Minecraft as an example, and not to use Python to enchance gameplay in Minecraft. No prior experience with Minecraft is needed for this course.

“Coding” is synonymous with “programming”. It refers to the art of writing computer code, which are instructions that a computer can follow to solve problems. Practically every facet of technology that we encounter in our daily lives - from online banking systems to video games on our iPhone, from the GPS systems we rely on navigation to the security systems that protect our homes and offices, is created from code.

Communicating with a computer requires the use of a language, just like how communicating with another human being involves the use of a language like English or Korean. The difference is that writing code for a computer in a particular language is a little like speaking to somebody who is absolutely particular about grammar and punctuation - any deviation from a language’s rules results in a computer not being able to accept the programmed instructions. Different computer languages are well-suited to doing different tasks. For example, JavaScript is the undisputed lingua franca of the web, LISP is used extensively by NASA and in Artificial intelligence research while C and FORTRAN finds its adherents in high finance especially in the field of high frequency trading.

At Code Campus, we start with Scratch and AppInventor - drag-and-drop block-based languages developed at MIT over more than decade for the specific purpose of teaching kids how to code. Learning to code in Scratch is a little like learning how to ride a bike by first starting with a tricycle - a tricycle can get you to places but you are not likely to compete in triathlon on one. With Scratch, kids learn the basics of the thinking process behind using computers to solve problems but what they can build is largely limited to video games, music and electronic art boards that run off the Scratch platform. Regular programming languages we hear about like Python, Java and C++ have no such restrictions and can be used to build applications across any technical domain you can think of but comes at the cost of much greater complexity and are much more difficult to set up for the beginner. Scratch and AppInventor are educational tools that allow us to separate the thinking of computer science from the operational tedium of regular languages, allowing us to introduce kids to the subject at a much earlier age and increase their future aptitude for the discipline.