How good is your Python 3 knowledge? Take our quiz to find out now.

Binary Search Algorithm for GCSE and A Level Computer Science

Binary search is an algorithm which is fundamental to both GCSE and A Level Computer Science for all boards. It is a very clever algorithm which reduces the time needed to search for items in large datasets dramatically. It is important to note that in order to use binary search, your data must be sorted. […]

Node Class for a Linked List with Object Oriented Python

When you come to study Data Structures such as Stacks, Queues, Linked Lists and Binary Trees for A Level Computer Science, you will often make use of Object Oriented Programming. That is a bit of a double whammy if you are not yet very confident with OOP, and it can seem a bit overwhelming. I’ve […]

Graphs in Python for A Level Computer Science

Part 1 – Networkx Basics networkx is a powerful python package that allows you to easily work with graphs in Python. Combining it with the matplotlib.pyplot package even makes it simple to draw graphs. This is very useful when learning or teaching about graphs for A Level Computer Science. # Auto formatting – completely optional, […]

GCSE Computer Science Programming Practice – Pascal’s Triangle

Whether you are going to start your GCSE Computer Science course next term or are already halfway through, it’s always a good time to do some coding practice. Here’s a fun intermediate level challenge for all you coding enthusiasts out there. Coding Pascal’s Triangle with Python Pascal’s Triangle is a fascinating mathematical structure which contains […]

Python Turtle Graphics Demos

If you are using the standard installation of Python from python.org which comes with the IDLE editor, there are some exciting demonstrations of the power of the turtle module available at the click of a mouse. The turtle module is hugely useful for learning about and teaching programming, and also great fun. It provides a […]

Times Tables Trace Table

I want to share a programming activity with you which addresses several topics in the GCSE computer Science syllabus. One of the challenges when following a syllabus with clearly delineated assessment objectives is that the knowledge required to become a competent programmer is deeply interconnected, and the various components rarely appear in isolation. For example, […]

Book Review – Grokking Algorithms by Aditya Bhargava

Understanding algorithms for A Level Computer Science can be tough, and any resource which makes the job easier has to be a good thing. I expect you are familiar with the phrase “a picture is worth a thousand words.” One of the main strengths of Bhargava’a book is the extremely clear (and sometimes quirky) pictures […]

Insertion Sort for GCSE and A Level Computer Science

Insertion sort is one of the standard algorithms you will come across studying Computer Science for GCSE and A Level. There are many different versions of the code for it scattered across the internet, but there are basically three common “flavours” you will find. In this article we will look at some Python implementations. First […]

Low Level Programming for Cambridge A Level Computer Science – LMC vs 9608 Assembly

The best way to learn about low-level programming is to do it! (At least an emulated version of it using a tool such as the fantastic Little Man Computer simulator available here.) The LMC instruction set is simpler to the one used in the Cambridge A Level Computer Science 9608 syllabus, but it is similar […]

Cambridge A Level Computer Science Trace Tables Exam-Style Question

The Cambridge International AS and A Level Computer Science Coursebook is generally a fantastic resource, covering the entire 9608 syllabus in depth. However, there are a few frustrating issues with the book, including some errors. For example, on page 245 as part of an exam-style question, the following pseudocode is given for an algorithm to […]