## Python Debugging

Sometimes when debugging Python code, it is useful to be able to see the values of the variables at each step in its execution. This can be done with a debugging tool...

## How to Trace Python Algorithms with a Visualisation Tool

Understanding all the details of how an algorithm works can be challenging, and it is helpful to be able to perceive what is happening from multiple angles. One particularly useful tool to...

## Analysis of Algorithms with Python

The efficiency of algorithms is important. Imagine a program that took centuries to calculate the solution to a problem (like Deep Thought from the Hitchhiker’s Guide to the Galaxy), or needed more...

## TI-84 Python Edition Calculator – Product Review

I’ve been a big fan of the Texas Instruments TI-84 Graphic Calculator for many years. It is a marvellous tool for exploring mathematics and supports a programming language called TI-BASIC which enables...

## The Change Making Problem with Python

The change making problem has become something of a classic due to what it can show us about different approaches to algorithmic problem solving. In this article we will look at the...

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

## Number Placement Puzzle with Python

This post is about a fun puzzle called the number placement puzzle. I have provided an interactive console program that lets you explore it. I have also provided a couple of algorithms...

## The Gambler’s Fallacy with Python and JS

In this article, we are going to explore the Gambler’s Fallacy with Python and p5.js by simulating sequences of coin flips. If I flip a coin 4 times, and the probability of...

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

## Fizz Buzz Coding Challenge in Python

Fizz Buzz is a classic coding challenge based on a game played at school in Maths lessons. Fizz Buzz is a game for two or more players. Take it in turns to...