The Collatz Conjecture with Python

The Collatz Conjecture is an unsolved problem in Mathematics which lends itself nicely to exploration with Python. The idea is simple: Pick a positive whole number. If it’s odd, multiply it by...

100 Doors Python Coding Challenge

In this lesson we are going to look at a fun coding challenge in Python called “100 Doors”. It’s a great challenge for developing algorithmic thinking and Python programming skills. Image courtesy...

Getting Unstuck in an Exam

This article will help you to achieve your full potential in exams for any subject. Have you ever been in an exam where you have read a question and your brain has...

Python Loops and Flowcharts

In this lesson we are going to learn how to convert between Python code and flowchart representations of loops when designing algorithms. Consider the following code. As with most code examples in...

Computer Science Pedagogy

This post is a work in progress where I will collect pedagogical tips about teaching Computer Science distilled from my 15+ years’ teaching experience. They are phrased as advice to teachers, but...

Python Simple Dice Game

Here’s a simple program in Python that demonstrates some important fundamental concepts in computer programming. The program simulates two players taking it in turns to roll a 6-sided dice, and keeps track...