Principles X
Ages 13-18

Topics in Computer Programming

Prerequisites: Principles 8

Principles Level X is an optional, repeatable course featuring different topics in computer programming offered on a seasonal basis. Each iteration of this course will focus on a specific topic over 8 weeks - examples of topics covered in previous iterations include Computational Complexity and Algorithms Design; planned topics for future iterations of this course include Data Science, Cloud Computing, Cryptography and Web Security. Where appropriate, this course will draw references from and make associations to the material covered in the core Principles course sequence (Levels 1-8), with the goal of making students better game, mobile and web developers.

This class was last held in May 2017.
We will next be holding this class in 2018.

Frequently Asked Questions

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

Python is one of the world's most popular languages (consistently ranked within the Top 10 in recent years by Tiobe ) that is known for its learner-friendly syntax, versatility and ubiquity in the workplace. It is also a language that most of our instructors have had the pleasure of using in the workplace. In addition, students and parents might be interested to know that Computing will be available as an examinable subject for the Singapore "O" levels beginning in 2017 and Python will be the language taught in the curriculum.