How do our Python Heroes perfect their craft? In our Python Perfect classes (S101P, S111P and S121P), we utilise an individualised learning method to ensure that students are able to fully internalise and apply the concepts that they have learnt. 

Coding Lab’s S100P is a series of Python Perfect classes taken by students who have completed the respective core foundational classes (Python 1: S101, Python 2: S111 and Python 3: S121). These classes ultimately promote independent studying and reinforce core programming concepts.

You might be wondering: what exactly is individualised learning?

Image of S100P class

The key ingredient of it is the shift of responsibility for the learning process from the tutor to the student [1]. The entire process involves students acquiring an understanding of their learning, being motivated to learn, and collaborating with tutors to structure their learning environment. Our students’ progress therefore depends on how motivated they are in learning and how much they want to achieve.

This method of learning does not mean that students are to work alone – tutors have a huge part to play as mentors in enabling and supporting individualised learning. They ensure that students are on the right track, motivate them and continually ignite their passion for coding through the wonders of S100P.

How do our teens benefit from Individualised Learning?

Our Python Heroes in our S100P series of classes hone their Python power with lab work. This lab work mimics practical modules in universities (which make up a high percentage of the overall grade!) – so if you’re looking to take on computing or Python in university, it’s important to get started early and lay those firm foundations! Our tutors also provide term reports for students to refer to so that they can better understand the areas they need to improve on and work towards nailing those concepts down. 

Every Python Perfect class has 10 levels of coding challenges – and each student will be mentally stimulated by the challenges at their individual levels. Our coding challenges hail from a wide variety of domains ranging from Banking and Finance to Engineering, Mathematics and even Medicine, enabling students to appreciate the applicability of Python in the real world

Students can advance as quickly as possible on their own with the effort that they put in, and also have 24/7 access to our online system to submit their answers to practice questions. Afterwards, our keen tutors will grade their questions and guide them in achieving code efficiency during class. 

Students can submit their answers any time on our online system!
Image of Python Perfect class
Always an enjoyable time in our S100P class!

“Another part of Python that I really enjoyed was Python Perfect which was basically coding challenges. I would work on different challenges each week, to devise a solution to the problems. I really enjoyed it and that kept my interest sustained.”

– Josephine, 14, Raffles Girls’ School

Our Python Perfect courses typically span across 40 hours (2 Terms of Weekly classes: 20 x 2 hours). Most students are mainly able to complete 6 levels in 40 hours, but there are also very dedicated students who fast tracked 10 levels in 6 hours – like Wang Chen! Here’s what he has to say about our classes:

“The classes are engaging and I was able to learn things like Stack Overflow, which further added on to my coding knowledge!”

– Wang Chen, 14, Dunman High

(successfully completed 10 levels of coding challenges in 6 hours!)

As students level up, the challenges gradually get more difficult. Our experienced Python Perfect tutors will help students to reach their fullest potential through giving out hints, providing them with help and guiding them through what they’re struggling with. A signature trademark of the program is that students are not given answers, they are encouraged to find the answers to the challenges on their own, enabling full understanding and application of concepts, self-confidence and independent learning.

Image of Ryan and class
Ryan (top left) with his Python students in an online class.

“In Python Perfect classes, students have to apply what they have learnt from the Python courses into the coding challenges. The more they practice, the better they get at coding! I’d often challenge my students to pen out their strategy before coding. I’d get them to go back to the basics and ensure the students revisit the fundamentals and thoroughly understand them.”

– Ryan Wong, Educator



Coding Lab believes that individualised learning will help in cultivating a spirit of lifelong learning in students – not only do our Python Perfect classes help students self-study the core programming concepts – it also reminds them that they are responsible for their own learning. When students own their learning, it sticks with them! 

Begin your Python journey by clicking here!


Join the Coding Lab family! Click here to sign up for our monthly newsletters.

Stressed about your upcoming O Level Computing papers? We’re right by your side in this final lap with analysis of past year papers, tips and guidance (and interactive questions to test your knowledge) straight from our Lead Educator Mona Tan, who conducts our O Level tuition programme.

Mona teaching Python
Our Lead Educator Mona imparting her knowledge to her student

As a subject that just began with 2017’s Secondary Three cohort, we know that there aren’t that many resources or information out there for you to tackle your Computing papers. Our team has therefore scoured the net (and much more – so you won’t have to) to compile this list of essential information to aid you in your Computing paper. With multiple subjects and other exams to manage, here’s how you can make the most of your time and be ready for the Computing exam on 2 November 2020! 

1. Know your papers!

As the old adage goes, “The man who is prepared has his battle half fought”. Do you know how the examination will happen and its detailed breakdown? Here’s your first question in our interactive quiz to test your knowledge!


There are ___ papers with a total duration of ___ hours.




Click the button below for the answer. The answer is B.
There are two papers in the GCE O Level Computing examination.
Paper One is 2 hours, while Paper Two is 2 hours 30 minutes.




Knowing what material is covered in the syllabus and the format of the different papers is crucial. For example, Paper 1 is a written exam while Paper 2 is a practical exam taken with the use of a computer, spreadsheet and programming software.

Here’s what else you need to know about your papers – expand the buttons below to view more – you don’t want to miss out on the information we have below!

Click Here for Overall Breakdown of Papers

Based on the format of the papers, different sections of content with higher weightage can be prioritised during revision. Moreover, knowing the different components of each paper helps to aid in time management during the examinations, giving you more time to check through your answers.


What exactly are your papers testing you for?




Click the button below for the answer. The answer is A, C and D.
The explanation is found below.




Overall, your knowledge and understanding are the most crucial components (40% overall), while the other two hold equal weightage (30% each) when it comes to the assessment objectives.

You can read the detailed breakdown of the assessment objectives from SEAB by clicking here (page 4).

Paper 1 Analysis

We’ve broken down the O Level papers from 2018 and 2019 to give you the detailed categories involved in Paper 1. In the table below, we’ve also arranged the categories in descending order based on its proportion of the paper. 

2018 vs 2019 Papers Breakdown by Category
2018 vs 2019 Paper 1s Breakdown by Category

Even though memory work takes up around 30% of Paper 1, it is essential that you understand what you’ve memorised so that you can put it into practice in the other components of your paper – remember, the huge chunk of more than 70% involves understanding and application of your knowledge! Ensure that you have a complete understanding of all your modules so that you are able to tackle ALL questions efficiently and maximise your score! 

Note: As there have only been two O Level papers, we do not encourage predicting the percentages of the next O Level papers. It’s essential that you fully understand what has been taught to be able to apply it throughout your papers!

Paper 2 Analysis

There are four tasks in Paper 2, which tested for the same things the past two years. Here’s the breakdown in the pie chart below.

Breakdown of Paper 2 - Pie Chart

While having knowledge and understanding are essential, the key thing is knowing how to apply it in Paper 2 when it comes to the development, testing and refinement. 

Did you know? One mark in Paper 1 is worth more than one mark in Paper 2.

We compare the equivalence of one mark in the different papers across various subjects. The breakdown in the table below is useful for Computing and your Math subjects too! 

O Level Computing Marks Comparison Table
O Level Computing Marks Comparison Table

One mark in Paper 1 is worth 0.875% while one mark in Paper 2 is 0.6%. These marks weigh more than that of A Math papers. Your Paper 1 marks are more valuable – losing between 5 and 6 marks could cause a grade difference – but Paper 2 marks are also as valuable – losing 8 to 9 marks could result in that grade difference too. 

Note: O Level papers are currently graded on a bell curve, so while grading in school has a 5-mark difference, this is not the case when it comes to O Level papers. Every mark is essential in scoring that A1!

The Rules of Flowcharting

Revise the rules involved when constructing the program flowcharts! 


What are the four common symbols in flowcharting?




Click the button below for the answer. The answer is all of the above.



What are the other rules of constructing flowcharts? Read more here (on pages 32 and 33).

2. Revise and practice consistently

“Start early by breaking down content into manageable chunks,” Mona advises. “It is important to remember and assess your understanding of all the important concepts required for the paper.”

She also suggests getting familiar with the formula sheet attached in your O Level paper. You can find it here (pages 30 and 31).

With a formula sheet provided, it doesn’t mean that you don’t have to remember what’s on it at all. Here’s the thing: you should know that formula sheet like the back of your hand – save precious exam time to ponder over questions instead. Leave the referring for emergency mind blocks! (Psst, this is the same for Mathematics.)

How do you remember your formula sheet?

There’s this thing called Retrieval Practice, which involves remembering information repeatedly – which results in it coming to mind more quickly in the future [1].

You can better remember it with these suggestions [1, 2]: 


    Space out your retrieval practice throughout your study sessions.
    Self-test and retest yourself repeatedly in the days or months leading up to your exam.
    Actively engage with your material, such as by making notes or doing questions that require applying what you’ve memorised.

Tracking Your Progress

Creating a detailed checklist with all the topics and sub-topics covered would help create a systematic method to track your progress during the last lap. You can even personalise your checklist, perhaps by breaking down the sub-modules, chapters and/or learning outcomes*.

*Note: certain learning outcomes in Module 2 are exempted in 2020’s O Levels

Don’t forget to place extra emphasis on Modules 1 and 4, since these are specifically assessed in Paper 2.

Keep track of your revision and practice sessions with our free A4 timetable that you can download here. Blocks of time can be made to ensure good exposure to both practical and theoretical concepts. You can also record the level of your understanding before and after studying each topic to track your progress.


Modules covered so far and Level of Understanding:
    Module 1. Data and Information
    Module 2. Systems and Communications*
    Module 3. Abstraction and Algorithms
    Module 4. Programming

We all know that practice makes perfect! However, practice questions are scarce when it comes to the O Level Computing papers. As this year is the third year of the O Level papers, the best option would be to request and rely on the resources from your teachers. Don’t be afraid to ask for help if needed! And practice, practice, practice… and more practice.

3. Analysing Questions

While understanding the content is important, knowing how to apply it is equally as – if not more – essential. Here at Coding Lab, we create the questions for our O Level Computing Tuition classes, drawing on the O Level paper questions and our extensive experience in Computing education. We also put together revision papers for Secondary 4 students to have mock papers under exam-like conditions.

Paper 1 is more theoretical and ‘easier to score’ in the sense that memorisation can ‘give’ you some marks, but Paper 2 is more of demonstrating your knowledge and honing your time management by practising under time constraints. Do you know how to effectively break questions down into more digestible and easy-to-tackle questions? 

Here’s how we would break down the thought process for this pseudocode question from 2018’s O Level Paper 1.


Question: A check digit for an 8-digit number is calculated by:

  • multiplying each digit by 3 or 1 alternately as shown in the following table
  • adding together the result of each multiplication
  • dividing the total by 10 which gives a remainder
  • subtracting the remainder from 10 to give the check digit, unless the remainder is 0.

If the remainder is zero (0), the check digit is 0.

The calculation of the check digit for the number 19483725 is:

Sample Question table

Write an algorithm, using pseudo-code or a flowchart, to generate a check digit using the method given in the question.


We begin with defining the problem and identifying different parts of our program to write the pseudocode. 
Input: 8-digit number
Output: Check digit
Process: Multiply each digit in the input, alternating between 3 and 1. 

Sum up the results of multiplication. Divide the total sum by 10 and find the remainder.
Check if remainder is 0. If yes, output 0.
Else to find the check digit, take the result of 10 – remainder

Step 1

We know the number has 8 digits. In this case, we will write a loop to ask the user for the 8 numbers separately and then store the digits into a list.

Sample code:
FOR Count = 0 to 7
    OUTPUT "Enter the next digit"
    INPUT Numbers[Count]
NEXT Count
Step 2

We need to multiply each digit in the input, alternating between 3 and 1. We can do this by using % to check if the list index is odd or even. We will use a variable named total to store our result.

Sample code:
FOR Count = 0 to 7
    IF Count % 2 == 0:
        Total = Total + Numbers[Count] * 3
    ELSE:
        Total = Total + Numbers[Count]
    ENDIF
NEXT Count
Step 3

We now divide the total sum by 10 and find the remainder. Once again, we can use %.

Sample code:
Remainder = Total % 10
Step 4

Check if remainder is 0. If yes, output 0.
Else to find the check digit, take the result of 10 – remainder

Sample code:
IF Remainder == 0:
    OUTPUT 0
ELSE:
    OUTPUT 10 - Remainder
Full sample code
FOR Count = 0 to 7
    OUTPUT "Enter the next digit"
    INPUT Numbers[Count]
NEXT Count
Total = 0
FOR Count = 0 to 7
    IF Count % 2 == 0:
        Total = Total + Numbers[Count] * 3
    ELSE:
        Total = Total + Numbers[Count]
    ENDIF
NEXT Count
Remainder = Total % 10
IF Remainder == 0:
    OUTPUT 0
ELSE:
    OUTPUT 10 - Remainder  

That sums up our walkthrough of a sample O Level question. Pseudocode questions make up the majority of Paper 1, so understanding the steps to solve such questions is a key ingredient for that A1!

Bonus: Create a cheatsheet

It is undeniable that the Computing papers involve memory work. Hence, a common difficulty students face is remembering the fundamental blocks for the exam, such as logic gates, functions and formulae. Questions tend to ask a range of things, from identifying components and explaining what it does to the pros and cons.

The solution? Create a cheat sheet with all the functions and relevant information to create a personalised resource where the most important information is available at a glance. We get our Computing students to consolidate their learning via cheatsheets and instil the information through practising practical problems, which – as mentioned above – builds memory for programming in the process.

Your cheatsheet could be a black and white A4 one-page or you could use coloured pens and highlighters to facilitate your memory – it all depends on your preference and learning style!


It is normal to feel stressed and confused after practising various exercises. Although it is important to continuously practise, it is just as important to play hard as well.

“Sometimes when my codes don’t work, I would just do other things,” Mona laughs. “The solution will suddenly come to me out of nowhere, then I’ll go back and continue my codes.”

We would also suggest taking breaks throughout study sessions and not to forget having some time off, especially during this stressful period. Overall, it is important to achieve a balance between studying and taking breaks, while preparing for the examinations. This is especially so during these unprecedented times of the current Covid-19 pandemic. 

From all of us here at Coding Lab, we would like to wish everyone all the best for their upcoming examinations! 🙂

Taking the ‘O’ level Computing Paper this November 2020? Join our Bootcamps, where we share essential tips and tricks in achieving that A1 or get your burning questions answered by booking a semi-personalised consultation with us (Limited Slots available).

Click here to find out more about our O Level Computing tuition programme.


Stay in the loop with Coding Lab news! Click here to subscribe.

Have you ever wondered what are the opportunities unlocked for your child after learning how to code? With the right foundation and guidance, children will grow to be confident and creative problem solvers as they apply math to real-world situations. They can apply the knowledge they’ve learnt to not only their programming projects, but also to areas like lighting for animation, the making of MacBooks and many more!

Here are 5 tech geniuses whose early exposure to coding has brought them to where they are today – these successful individuals have brought much change in the digital transformation of the 21st century. Read on to find out more about them! 🔍


Danielle Feinberg (Pixar Animation Studios)

You have probably watched Danielle Feinberg’s work on the big screen without even knowing. The Director of Photography for Lighting at Pixar Animation Studios [1] was in charge of coding the lighting in well-loved movies like Finding Nemo, Monsters Inc., The Incredibles and many more that you watch with your kids! Yes you read that right, these animated movies could not have been made possible without coding [2]! 

Since young, Danielle had always been in love with math, science and code. When she was 10, she got the opportunity to join a programming class where she got to program photos on the computer – and this experience left her absolutely fascinated! Growing up, she continued to attend summer camps and after school programs for students interested in computer programming and engineering. 

Afterwards in Harvard University, she was introduced to computer animation in her first year as a Computer Science student. After graduating with a Bachelor of Arts in Computer Science, her love for art, coding and creating things propelled her to work at Pixar – where she discovered her passion for coding in the lighting department. 
Outside of Pixar, she inspires and encourages girls who have interest in STEM through groups like Girls Who Code.

“The idea that all the math, science and code that I’ve been learning, could come together to create these worlds and characters and stories I connected with, was pure magic for me.” – Danielle Feinberg in her TED Talk: The magic ingredient that brings Pixar to life


Jack Dorsey (Twitter)

Who wouldn’t be familiar with the term ‘tweet’? There are about 6,000 tweets uploaded every second – messages that allow users to express themselves in a short and snappy way. We definitely would not have been able to tweet if it weren’t for Jack Dorsey, the CEO of Twitter. 

Having had a huge interest in city infrastructure and transportation when he was a teenager, Jack started learning how to program on his own so as to understand how the city works [3]. 

When he was 15, he wrote dispatch software which would then remain in use by taxicab companies to manage the logistics of their dispatch for decades afterward. Inspired by his dispatch work and the instant messaging services that were growing popular at that time, he came up with the idea that would become Twitter. 

After pitching his idea to a Silicon Valley company, he then went on to code the prototype with the help of another programmer in just two weeks. From only having 5000 users in 2006, Twitter now has 330 million monthly active users to date [4]. 

Though his journey had its fair share of ups and downs, Jack stayed dedicated and developed his skills to become the programmer and businessman that he is today. Aside from Twitter, he now also runs a company called Square – a form of mobile payment that is used in multiple countries worldwide. 

“My goal is to simplify complexity.” – Jack Dorsey


Jeff Bezos (Amazon)

When was the last time you bought something from Amazon? Have you ever wondered who was the genius behind it? 

Well, it’s none other than Jeff Bezos! 

As a child, Jeff was curious about how everything worked – he especially had a particular interest in computers. When he was 10, he stayed after school hours with his friends to tinker with a computer and taught themselves programming from books. This experience inspired a lifelong love of invention. 

Immersed in the world of technology, Jeff took part in the NASA high school initiative and went on to major in Computer Science at Princeton University. Upon graduation, he worked as a coder and even ventured into the realm of wall street before starting Amazon on his own [5]. 

Jeff first started off with selling books on the e-commerce website. As sales rocketed and the years went by, Amazon jumped into new markets and started offering products other than books like music, video, and holiday gifts. 

The Amazon today has become a dominant player in the worlds of e-commerce, digital streaming and artificial intelligence. Thanks to Jeff’s relentless efforts, Amazon has become many users’ one-stop destination for almost anything and everything. 

“One of the only ways to get out of a tight box is to invent your way out.” – Jeff Bezos


Mark Zuckerberg (Facebook)

Thanks to Mark Zuckerberg, you can easily stay connected with your friends and family on Facebook – be it sharing a post that you found funny, sending a message to a loved one or even playing an online game with your friend! 

At the tender age of 10, Mark’s father introduced him to a computer and together, they wrote a program that allowed all the computers between the house and his father’s dental office to communicate with each other [6]. Soon, Mark was studying with a programming tutor, reading his first book on programming and even made games out of his friends’ drawings. 

His hunger for progress didn’t stop there. Mark went on to pursue a degree at Harvard, where he built a site in his sophomore year called CourseMatch – a site that lets students choose classes together. Afterwards, social networking site Facebook was born – a site which would then continue to grow into the giant that it is today. 

From building Facebook in his humble beginnings (his Harvard dorm room), Mark now has a Facebook headquarters based in California and is now running the site with over 48,000 employees. While he has a lot on his plate – like raising his two daughters and running his company – Mark ensures that he is productive and balanced. For the many hours that he has to work, he also dedicates time for family, leisure and exercise. 

Although Mark had been offered millions and billions of dollars for Facebook, he would often turn such offers down. Did you know that he has walked away from such deals for at least 11 times [7]? His vision of where he wanted Facebook to be made him dream big and never settled for less. 

“My goal was never to just create a company. It was to build something that actually makes a really big change in the world.” – Mark Zuckerberg


Bill Gates (Microsoft)

You probably know Bill Gates as the one who founded Microsoft – the world’s largest personal computer software company. When he was 13, his school was one of the first in the country to get a computer terminal. From there, he spent his time playing with it and fell in love with programming [8]. 

“Exposure from a young age to the realities of the world is a super-big thing.” – Bill Gates

His first software program was done when he was still 13 years old – the popular game of tic-tac-toe. When he ran out of money to pay to use the school computer, he got around to logging into it as the system operator so as to get around the time limit [9]. 

Still in high school, he and his friend Paul Allen started a traffic counter startup known as ‘Traf-O-Data’, but the company eventually went under. This failure, however, did not dissuade Bill but instead taught him the value of combining programming and business together. With the lessons he had learnt from his first startup, Bill went on to start Microsoft – his most successful venture to date. 

Due to Bill’s guidance and perseverance, Microsoft has become the well-known multinational technology company that it is today. Although Bill is no longer its CEO, he remains one of the largest individual shareholders of Microsoft. Aside from this, he now chairs the Bill & Melinda Gates Foundation, the world’s largest private charitable foundation.


It’s amazing to learn how all these techies discovered what they loved to do when they were young, and then continued to pursue and become the successful people they are today! 

If your child is interested in learning something, let them learn – who knows, your child might just be the next big thing in it!

Lynn Kiew is one of our dedicated educators with a passion for teaching and a love for numbers and solving challenging problems. 

At Coding Lab, she seeks to excite students in programming and empower students to excel through technology. Read on to find out more about this amazing educator!

Lynn with her students in a Home-Based Learning class!

1. Tell us about yourself!

I graduated with Distinction from Nanyang Technological University (NTU) with a Bachelor in Mathematical Sciences. I really enjoy learning and teaching Mathematics and always thought that I would be a Math teacher in the future… I never imagined myself teaching coding to children! Given the fact that I had some difficulty in computer classes when I was in secondary school, and had to seek help from the partner beside me (haha!) But look at me now – a coding teacher! I guess when life throws you lemons, you make lemonade?

2. Wow, it’s interesting to learn that you had difficulty in computer classes – how then did you start teaching kids coding?

I have always known that I wanted to be a teacher because I love being in the company of students and to know that I have positively impacted their lives! Back when I was in NTU as a Math undergraduate, Computing was one of the compulsory modules that I had to take. To my surprise, I came to love the subject and discovered that I have a flair for it.

I guess it’s thanks to my early exposure during my secondary school computer classes – it really did me well! In hindsight, I believe that it’s due to the early struggles that I went through during those classes that have really helped me and eased my learning for university. I also like how Computing requires some form of logical thinking and practice, which can be challenging, and I’m always up to solve challenging problems!

Lynn conducting an online class via Zoom.

3. What motivates you to teach?

The moment when students get the eureka moment ‘Aha!’. It’s really satisfying to see students understand what I have taught. The smiles on their faces make me forget all those moments when I was pulling my hair out because they forgot a simple concept. Also, their cheeky antics definitely bring joy to my life – 82.75% of the time. 

4. Describe how a typical class would look like – what would we be able to see and hear?

Ask any of our teachers, and they will all be raising their hands and FEET in agreement – ‘TEACHER HELP! MY CODE HAS AN ERROR!’ You have no idea how many times we hear this in one lesson. But with that, we train and teach our students the concept of TRYING! We don’t simply just run to them to provide them with the solution but we let them explore and attempt to solve the error by themselves first, before providing hints and guidance.

Lynn assisting her students in class.

5. In your opinion, how would kids benefit from learning how to code at a young age?

Coding helps to train children’s problem-solving skills (which is useful for their Mathematics in school) in a fun and exciting manner! There is no one way of solving questions, thus it exposes them to think out of the box and find different ways to solve a problem. With the rise of the digital age, we can see how AI is becoming more and more popular these days – hence, coding will really give a head start for young learners.

6. How do you keep track of your students’ learning progress?

Educators at Coding Lab keep track of our students’ progress with our online system – students use it to submit their work between classes for us to grade, and from there it informs us of their level of understanding of the topics taught. We are also always in close contact with our students’ parents – we have a WhatsApp group for every class to send parents a brief summary of the topics covered, the homework required and address any other concerns after every lesson. Parents are always kept in the loop and updated about their child’s progress!

For me, I always provide a target for my students in every class – of course, every student’s target is different. Once they have met it, I will definitely give praise when it’s due. However, for students who are falling behind, I will nudge them and provide feedback to their parents if needed.

7. What has your experience with Coding Lab and teaching coding been like?

It has definitely been an enriching journey, with a lot of learning, testing and experimenting with new things! I am also glad to know that the Coding Lab team has my back – they have made work more enjoyable and memorable! Coding Lab truly has a nurturing environment where we are constantly giving and receiving encouragement. If you have been a part of Coding Lab’s team, you would definitely have remembered using this word constantly – “GREAT!”, it’s just a common word that our team always uses that has become sort of a catchphrase for us.

8. What are some words of advice that you would give for children/teens who have just started learning how to code?

Lucky you, you have made the right choice to start coding! The process is definitely not going to be easy – there will be lots of ups and downs, but NEVER GIVE UP! The joy when you finally see your program running without any errors is going to be AMAZING!

Just like how I initially faced some difficulties with computer lessons, I later realised that it was my calling – hence I believe that students should be exposed at an early age as it would definitely be beneficial and ease their learning in the future!

9. What are your interests/hobbies outside the classroom?

I watch a lot of Korean dramas – ask me any, and I would probably have struck them off my list. Other than that, I started to pick up crocheting during the circuit breaker period! I must say it’s a really good pastime and it’s really satisfying to see the final products that I have created. I made a few pouches and cute keychains (which I can ‘bribe’ the students in the future…)

Due to the rise of the digital economy [1], the demand for tech jobs has increased tremendously. Among those in demand are programmers – but what exactly are the starting salaries of programmers, and how do they compare to those of other professions? 

If you’re interested in pursuing programming in the exciting field of technology and wondering how it would fare for you, you’re in luck! We’ve done the research and here’s all you need to know about the starting salaries of programmers in Singapore (based on recent years). 

We’ve also thrown in a few career tips for you budding programmers, so keep reading to find out!


In recent years, companies have been restructuring efforts in an increasingly digitalised economy. This has resulted in workers with tech skills being the most in demand [2] – particularly workers with the knowledge of programming languages, data science, AI and machine learning expertise. 

The latest graduate employment survey released by the Ministry of Education (MOE) [3] – showed that students in the information and digital technologies sector posted one of the highest rates for full-time jobs and median gross monthly salaries in 2019.

Those in courses such as computer science, information security and software engineering cinched one of the highest median gross monthly pays of $4,400, with Engineering and Health Sciences following closely behind with the median gross monthly salaries of $3,750 and $3,500 respectively. 

The figures reflect the high demand for IT savvy graduates as companies hope to use technology as a competitive edge [4] by digitalising their processes. 


Distinguished billionaires Bill Gates and Mark Zuckerberg started coding at the tender ages of 13 and 10 respectively – so never think that you’re too young to start! MOE schools have even rolled out a compulsory 10-hour coding enrichment program for all upper primary students with effect from this year but in today’s day and age, we all know that it is still not enough. 

Today’s technology has brought us far – classes can even be conducted online! So how do you know if your kid has the chops for programming? Here are some tips (Budding Teen Coders – this is for YOU!) if you are planning to get started or have already gotten into the thick of coding:

5 tips for budding programmers:

1. Build a strong foundation in logical thinking

You learn to walk before you run, so learn to master the basics first! With a strong foundation, mistakes such as writing more code than necessary or finding code solutions that are not optimal can be avoided. Focus on mastering logic and your computational thinking concepts to build a solid foundation. Python’s a good one to start off with. After that, it’s just a matter of getting used to the syntax of the different programming languages – Building a 3D Game? Designing your own Stock Rating Algorithm? Building your own Web App? The sky’s the limit!

Students in our S101 Python classes.

2. Work hard, work smart

The more practice you have under your belt, the better. Participate in competitions, get involved with different projects, or even volunteer for a local non-profit organization to write software or teach coding to kids. Be prepared to be amazed with what you will learn. You’ll not only gain exposure, but also get to build soft skills and gain a sense of accomplishment.

The bright participants of our Young Coders’ Global Hackathon (YCGH) Finals!

3. Never Give Up!

There will be times where you’ll feel frustrated when trying to solve a problem in your code – and that’s totally normal! The key thing is to never shut off when you experience such setbacks. Error messages in your code are not messages that you’re bad at coding, it’s telling you the code just isn’t working in the way that you thought it would. It’s fine – chances are, you’re closer to finding a solution than you were before. 

Students learning about Program Errors in our Python classes held via Zoom.

4. Optimise code efficiency – Be a perfectionist

Everytime you learn something new, work on your efficiency. Don’t approach your code the same way with the newfound knowledge that you gain – use shortcuts and make yourself a cheat sheet so as to save time and energy. It’s also really important to take breaks every once in a while so that you’re constantly refreshed to do your assignments! 

At Coding Lab, we enforce a 5 minute eye break for every hour of coding that our students get to safeguard their eye health and to also inculcate good habits from young. It also helps to keep our students energised during our lessons! 

Image showing IB Computer Science/O-Level and A-Level Computing tuition
Students focused on their work in class.

5. What can I do better?

Never be satisfied with what you have done. Always ask yourself: “What can be done better?” – There is always something that can be improved. Continuous improvement is a key trademark of a good programmer. 

Bought the expansion pack for League of Legends yet? Who doesn’t love the refreshed look of your phone or your laptop after installing an upgrade for iOs, Android or Windows? These updates are important and beneficial in strengthening your cyber security through processes such as the removal of bugs and outdated features as well as the addition of feature enhancements to your devices. 

“Good specifications will always improve programmer productivity far better than any programming tool or technique.” – Milt Bryce 

Put out questions, search for solutions and learn from the Internet. Code can always be shortened. Code can always be more optimised. And the beauty is in the final product and the work that you have done with your two hands at the keyboard, day and night.

And of course, our reliable tutors at Coding Lab are always dedicated to helping students learn coding in the best possible way – we infuse our students with enthusiasm and help to create the best learning environment for you to comfortably learn in. Make sure to check out our classes here

Students waving hello as they join our online classes!

With the knowledge of starting salaries of programmers and these awesome career tips, we hope that these would motivate you in learning more and increase your passion for coding! After all, it’s our job to nurture future leaders in technology.