Wednesday, 24 June 2020

The Little Book of Algorithms 2.0


Following the success of the Little Book of Algorithms - Over 20,000 downloads and hundreds sold worldwide, I'm pleased to announce version 2.0. The publishing model will stay the same, the digital PDF will be available free of charge (See bottom of post). For those who want to support me by buying a hassle-free printed physical paperback, you can do so on Amazon or directly here.

What's new in version 2.0?

Teaching, like software development and learning is about refinement. In this new version there are two key changes.

Firstly, challenges now directly follow each relevant skill. This reflects the structure of most mathematics textbooks and workbooks. It means there’s less time and effort spent flicking backwards and forwards.

Secondly, there are a greater number and range of challenges because you will become a better programmer and computer scientist by solving a greater number and range of problems.
While answers remain in the back of the book, I have also started creating walkthrough video solutions to some of the more complex challenges. These are available on Youtube here.

The Little Book of Algorithms 2.0 concisely presents 18 problems which computer science students will commonly encounter. These problems are solved efficiently using programs written using Python. However, reading these programs is not enough, so this new version of the book now comes with 48 challenges so that you can apply what you have learnt in various ways:

  • Writing your own programs
  • Solving Parson’s puzzles
  • Completing quizzes 
  • Tracing 
  • Gap fills

This range of exercises will help you to become more fluent in Python and ensure that you are comfortable with any question format in a programming exam.

  • After finishing this book, you should feel more familiar with:
  • While loops and For loops
  • Concatenating different data types
  • Using procedures and functions
  • Working with 1D and 2D lists and arrays
  • File reading and writing 


This book will show you how to write better Python programs and will expose you to the key skills that are required to do well in any secondary school programming assignment or exam.

I wish you the very best on your learning journey.

Free version: Here
Pre-printed paperbacks: Amazon
Preview below:




Walkthrough tutorials:

Wednesday, 22 April 2020

Remote CPD for teachers


During the lockdown, I have received a few emails from teachers about what we can do to keep abreast of curriculum changes and also develop our subject knowledge, and pedagogical content knowledge. Here are my recommendations.

General pedagogy, teaching and learning:

Dylan Wiliam’s latest videos offer some input and then a discussion point which you can have with yourself, an online community or your peers: LINK

ResearchED have had some incredible speakers. Take your pick from Daniel Willingham, Becky Allen, Sam Sims, Nick Rose, Daisy Christodoulou, John Sweller, John Hattie, Dylan Wiliam, Pedro De Bruyckere and more: LINK

I'm a big fan of the Teach Like a Champion blog as it discusses techniques in written form and then shows a relevant video. The current posts reflect on remote teaching and the previous posts are based on the classroom and sports coaching: LINK

Tom Sherrington’s Kitchen pedagogy series. This series focusses on research-informed ideas: LINK

As mentioned in my last post, we are essentially communicators and public speakers. One of my favourite videos for how to engage and speak publicly: 

GCSE Computer Science

There are new specification changes from Sept 2020. OCR have launched their new GCSE Computer Science course J277 and Paul Long has discussed the changes on this excellent post. A summary of the key differences are on the last page: LINK


  • As the spec changes are quite minor, I still recommend Computer Science Tutor’s tutorial series: LINK
  • Craig N Dave have also updated their video series for J277: LINK
  • Mr Weir has a great presentation style which I enjoy: LINK


Technocamps have a range of “activity packs” mainly aimed at KS3 and KS4 and they are great for teachers too: LINK

If you want to become more fluent in Python programming, the Little book of algorithms might help.
I am also a big fan of these two sites:

Cambridge Nationals in Creative iMedia

There are some great tutorials for content on these channels:
Photoshop tutorials - For those of you who do not have Photoshop, Photopea is an excellent free online alternative

GCSE Stretch and A-Level Computer Science:

Isaac Computer Science launched their full content this week. There are lots of mini exercises and the explanations are clear and concise. All the material is written by current or former A-Level Computer Science teachers who I respect.


Two years ago, I took to learning PyGame as so many of our students were interested in making games for their A-Level projects. These two sites are (almost all you need):

If you just want some useful videos for you and your A-Level students, I’ve curated a playlist here

Computer Science Education Research


Finally, if you're interested in CS Ed Research,There is:

Lots of videos from the Cambridge Computing Education Research Symposium
The CS Ed Research Book Club?