Sunday 3 January 2021

Remote teaching during a pandemic

(10 Min Read)

Teaching remotely has the same goals as teaching face to face. Some of these goals are:

  • Transfer of declarative knowledge and procedural knowledge (skills)
  • Engagement with learners
  • Assessment of learning
  • Covering the curriculum and beyond
  • Highlighting misconceptions
  • Supporting learners to achieve the learning outcomes
  • Safeguarding and pastoral care

However the way in which teachers achieve these goals remotely is different. McAleavy et al (2020) succinctly state that "online teaching should not try to mimic the entirely synchronous teacher-student engagement of the conventional school." We also need to consider access to technology and teacher's digital literacy. We cannot assume that all students will have access to a desktop or laptop, some may be accessing remote learning through a small mobile phone or tablet. A simple, structured approach is always better than trying to use as much tech as possible.

McAleavy et al's report available here focusses on ensuring that remote teaching maintains structure, adaptation and assessment. The key takeaways from the report are:

  • Teaching presence - Social interaction needs to be intentional with high levels of engagement and teacher visibility. This visibility can take several forms e.g. live modelling and explaining content and thought processes in an engaging way, asking questions, assessment, diagnostic feedback, and adapting resources / learning sequence in response to students' progress.
  • Remote learning traps - Excessive personalisation and self-paced study can lead to underachievement. Give opportunity for students to work independently with some real-time Q&A.
  • Blended learning - Use of both live (synchronous) and asynchronous methods. Consider the use of printed materials instead of purely online digital content.
  • Assessment - Use of automated self-marking quizzes e.g. Google Forms, Microsoft Forms, SMHW. Use of paper-based assessment e.g. pupil self-assessment against teacher supplied models and mark schemes.
  • Community focus - Building a collective identity and sense of belonging. Do not allow students to become pre-occupied with competitive achievement.
  • Minimising workload - Use of centralised resources either created by the school or sourced externally. Then modifying these where necessary.
  • Realistic transition - Do not expect to go 100% remote, online and synchronous straight away. Consider virtual office hours, fixed times when teachers can provide one-to-one support.
  • Continuity for all - Maintaining education for all students in the cohort, particularly the vulnerable and disadvantaged is the number one priority. If an initiative might alienate learners or be inaccessible due to technology issues, then a simpler alternative needs to be sought. 

An area which may be controversial is the suggestion that teaching needs to be engaging and interactive. However, for students it is very easy to cognitively switch off or multi-task when learning experiences are not cognitively engaging. We need to consider how much passive time there is in our teaching activities.

From a personal experience, finding a balance between lecturing for 50 minutes and providing students with sufficient time to work independently is key. While students are working independently, students need a method to be able to ask questions, a chat/message feature on Microsoft Teams or Google Meets is fine or this. Some classes may work fine with audio Q&A, other classes you may want to limit to the text-based chat.

Once students have completed some independent work, the teacher needs to somehow assess this. It may not be realistic for teachers to read 30 pieces of work, so they may take a sample and offer whole-class feedback.

Teachers can also set an automated online test (this needs setting up in advance). These low stakes tests are fairly easy to setup on Show My Homework (Tutorial here) , Google Forms (Tutorial here) or Microsoft Forms (Tutorial here). I would advise using the platform which your school already currently uses - for our school, SMHW Quizzes work well, they can be accessed via the app and all students have a login which they use daily. All platforms can provide immediate data to the students and teachers. Alternatively, teachers may want to ask a hinge question with multiple-choice options as answers in the chat feature. Multiple-choice is more likely to increase student participation and the teacher can announce how many students have given an answer and encourage others to do so. Once answers have been submitted, the teacher may ask a student to explain their choice.

One of the best ways to resolve access issues is by using printed resources alongside some online content, the printed resources will mean that students are not reliant on a fast internet connection to access video and software to download or view files. Of course, if we're trying to increase teacher visibility then there are several ways of doing this. One way could even be on a conference call, alternatively the teacher could use e-mail or SMS to check-in on vulnerable or disadvantaged students. The idea of virtual office hours which could include scheduled phone or video calls is also worth considering. If access issues are resolved and engagement remains low, teachers and pastoral leads need a way of contacting these families to help students break down some of these barriers to learning. In some cases students may need to be encouraged to come into school (if it is safe) where they will receive more direct support with their learning.

For teachers in schools that have decided to go with synchronous or asynchronous video lessons, there are a few considerations in Brame's literature review (2016) available here. The report focusses on three areas:

  • Cognitive load
  • Student engagement
  • Active learning

Practices to maximize student learning from educational videos

The three areas work together. If the video input is short, snappy and well designed, student engagement is maintained, and there is a focus on keeping learners cognitively active and involved, then lessons are likely to be more successful. A full table of recommendations by Brame is reproduced below. The examples are quite helpful.


Element to consider




Cognitive load

Use signaling to highlight important information.

Can reduce extraneous load.

Key words on screen highlighting important elements

Can enhance germane load.

Changes in color or contrast to emphasize organization of information

Changes in color or contrast to emphasize relationships within information

Brief out-of-video text explaining purpose and context for video (e.g., learning objective for video)

Use segmenting to chunk information.

Manages intrinsic load.

Short videos (6 minutes or less)

Can enhance germane load.

Chapters or click-forward questions within videos

Use weeding to eliminate extraneous information.

Reduces extraneous load.

Eliminating music

Eliminating complex backgrounds

Match modality by using auditory and visual channels to convey complementary information.

Can enhance germane load.

Khan Academy–style tutorial videos that illustrate and explain phenomena

Narrated animations

Student engagement

Keep each video brief.

Increases percentage of each video that students watch; may increase total watch time.

Multiple videos for a lesson, each ≤ 6 minutes

May decrease mind wandering.

Use conversational language.

Creates a sense of social partnership between student and instructor, prompting the student to try harder to make sense of the lesson.

Placing the student in the lesson by use of “your” rather than “the” during explanations

Use of “I” to indicate the narrator’s perspective

Speak relatively quickly and with enthusiasm.

Increases percentage of each video that students watch.

Speaking rates in the 185–254 words per minute range

May increase sense of social partnership between student and instructor.

Expressions of instructor excitement, such as “I love the next part; the way the feed-forward mechanism works is so elegant,” or “Consider how the cell solves this tricky problem of needing to regulate three genes in sequence; it’s really cool.”

Create and/or package videos to emphasize relevance to the course in which they are used.

Increases percentage of each video that students watch.

Videos created for the class in which they are going to be used, with instructor narration explaining links to preceding material

May increase germane cognitive load by helping students recognize connections.

Explanatory text to situate video in course

Active learning

Consider these strategies for promoting active learning:

Packaging video with interactive questions.

May increase germane cognitive load, improve memory via the testing effect, and improve student self-assessment.

Integrate questions into videos with HapYak or Zaption, as described by Obodo and Baskauf (2015) 

Follow short videos with interactive questions within an LMS, as done by Keithly and colleagues (2015) , or within Google Forms, as done by Caudel and colleagues (2015) 

Use interactive features that give students control.

Increases student ownership and may increase germane cognitive load.

Create “chapters” within a video using HapYak or YouTube Annotate

Use guiding questions.

May increase germane cognitive load, reduce extraneous cognitive load, and improve student self-assessment.

Senchina (2011)  provides guiding questions for videos designed to introduce physiology students to professional ethics related to experimenter–subject interactions, such as the following: “Observe the subject’s behavior and responsiveness during the dehydration period. What changes as the subject becomes dehydrated? What problems does he have? Observe the experimenters’ behavior and responsiveness as dehydration progresses. What do they do differently? Why?”

Make video part of a larger homework assignment.

May increase student motivation, germane cognitive load, and student self-assessment.

Package videos with a series of questions or problems that ask students to apply the concepts from the videos. iBiology Education videos (e.g., What Can You Learn with a Light Microscope?) provide one example (iBiology, 2016 )

By weeding out un-necessary information and keeping teacher input concise, students are also more likely to avoid zoom fatigue - a phenomenon highlighted by Torrey Trust here.  

One common piece of advice from the sources above and anecdotal evidence from teachers is to incorporate paper-based resources during remote teaching. Having taught for over 6 months remotely this year in a school which uses paper-based booklets, I can confirm these are ideal for schools and students who do not have 1:1 laptop/desktop devices at home. The booklets are well-structured and low tech.

Example workbooks for Computer Science can be found here. You will notice that there are paper-based low stakes tests built into the booklets in the form of Do Nows either with the lesson or at the back of the booklet. There is text content with optional videos followed by at least 20 minutes of independent practice.

There are also hundreds of workbooks for various subjects here:

  • Science curated by CogSciSci here
  • More Science resources here
  • English by Douglas Wise  here
  • Geography by internetgeography (£60 subscription) here
  • Search or post on Twitter as there are always teachers willing to help


For many schools in the UK, high quality remote teaching will include some video. I will try to highlight the minimum requirements in terms of technology. If your laptop has a built in webcam, this will suffice. If you have a desktop, a webcam from a reputable company such as Logitech or Sandberg are recommended. Some teachers may also want to teach remotely with a visualiser, we use Ipevo visualisers. I do not currently use a separate microphone, as the webcam and visualiser have these built in.  I do advise using headphones. The last piece of technology which may improve call quality is an Ethernet cable. This cable can be plugged directly into your router at home and will provide a stable and fast connection, particularly if you experience WIFI or other connectivity issues. Regarding software, for live lessons, use the platform that your school currently uses. Do not assume students can train themselves to use a new platform i.e. if you are a Google school, use Meet, Microsoft schools should use Teams. Some schools use Zoom, which is the least secure of the three platforms. For safeguarding and to avoid "Zoom bombing" where uninvited guests join a lesson and take over the broadcast, you should:

  • Change screensharing to “Host Only”.
  • Disable “Join Before Host” so people can’t cause trouble.
  • Disable “File Transfer” so there’s no digital virus sharing.
  • Disable “Allow Removed Participants to Rejoin” so booted attendees can’t slip back in.
  • Use Mute All during teacher input (students can ask Qs in the chat).
  • Be aware that students can still record or screenshot the lesson even with recording disabled.

Tips via Ana Agneshwar

What this section highlights is the significant preparation and technology that all teachers need access to. Thankfully, my school bought all this hardware for teachers and dedicated a morning of CPD to training teachers back in September. If you need to buy time to provide training and create paper-based booklets, a temporary measure could be to use lessons on Oak National Academy or BBC Bitesize.

In Summary, consider vulnerable and disadvantaged students in your provision. Be wary of cognitive load, engagement and keeping students cognitively active. Consider using paper-based resources. Try to include live modelling, questioning, low stakes testing and diagnostic feedback. Lastly, be prepared to adapt resources and the learning sequence in response to students' progress.

Further reading:





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?

Thursday 16 April 2020

What every teacher training programme should teach

I have been very fortunate to have had the opportunity to observe hundreds of lessons and work directly with mentoring and supporting more than 30 Newly/Recently Qualified Teachers. I also base my reflection on the incredible books that have been recommended to me as well as my own experience teaching over 8000 lessons in 5 different schools over 14 years. 

The aim of this article is not a critique of any particular teacher training programme – it could perhaps be considered as a compilation of the best practice from the various programmes and teachers that I have had the pleasure of observing, developing and working with. Coverage of the following would ensure a solid foundation for any teacher. Some might even use this as a knowledge audit to identify areas for development in themselves or in teachers they are mentoring.


If we spend roughly 70% of our working day directly teaching lessons, I would argue that the majority of this time is spent communicating. We communicate ideas, subject content, our ethos and our expectations every day. So perhaps sessions on the following would be useful:
  • Voice training
  • Regular feedback on presentation-a weekly exercise could be for developing teachers to communicate a complex idea, perhaps something from their subject specialism or a specific learning theory. I really enjoy Wired’s 5 Levels series so perhaps it could be inspired by that. Trainees should have the experience of trying to teach a concept with or without certain aids e.g. without a whiteboard, with only a whiteboard, with only powerpoint, with only a visualiser and to reflect on which content is best taught through which medium.
  • Handwriting practice (on a whiteboard)-this will be one of the primary methods of communicating ideas for many teachers, learning how to write legibly on a board is often neglected.
  • Other strategies from Doug Lemov’s excellent Teach Like A Champion (TLAC) 2.0 book e.g. Threshold, RADAR, Breaking the plane, Strong Voice, Circulate, Strong Start. I cannot emphasise enough the importance of Lemov’s work and his book. I would argue that not a single day lesson goes by without me using at least 5-10 of his techniques. Likewise, when I look to help teachers improve, frequently I will identify a TLAC technique as the best action point or lever for improvement.


As aforementioned, Lemov’s TLAC 2.0 book should be a core text for any teacher training programme, when it comes to routines, Lemov’s book and accompanying videos distill the most effective strategies used by great teachers around the world. Whilst Lemov’s section on Systems and Routines mentions only six techniques, I would argue that the whole chapters 1,3,5 and 7 cover another 20 routines which are essential for an efficient and effective classroom.   

Resource Design

Beginning teachers often spend some time learning to design resources, but they may often be left to their own devices to “explore what works” and “try things out” based on their initial lesson observations of other teachers. Based on the principles of direct instruction that we would use with novice students, I would argue that beginning teachers also need to be taught in the same way, with direct instruction and only gradual fading once expertise has been developed. Here are a few things which every teacher should know how to design:
  • Multiple Choice Questions
  • Do Nows which interleaves, reviews and provides a form of low stakes testing and formative assessment
  • Exit tickets
  • Worksheets or workbooks which follows the “I, We You” and Shed Loads of Practice (SLOP) format – starting with teacher modelling, followed by joint construction and leading to lots of independent practice questions
  • Sequence of lessons- which build on prior knowledge and allow for revisiting of content
  • A spreadsheet marksheet/tracker – SUM formula, VLOOKUP, Conditional formatting.
  • A seating plan (preferably in a spreadsheet) and what data to use. The data I always start with is prior attainment to ensure weaker students have a strong partner near them. I would also then check this seating plan with the Head of Year for potential behaviour issues and compatible working pairs.
  • Functional wall displays

Workload and time management

This is something that all teachers will struggle with at some point, but certainly in the early days when lesson planning may take hours in itself. A few useful strategies:
  • Stephen Covey’s Time management matrix
  • Planning by the week (Not by the day)
  • Importance of Sleep
  • Use of technology e.g. Quizlet, Google/Microsoft Forms, Online resource banks and communities (Facebook, Twitter and subject specific communities), using email filters, classroom management software

Marking and feedback

  • Sampling and Whole Class Marking and Feedback
  • Immediate and precise feedback during circulation
  • Peer marking
  • How to mark summative assessments (Question by Question), identifying misconceptions and actions to address these gaps

Science of learning and research-based instructional strategies

Instructional principles and pedagogy should be based on research along with experience of the tutor. I will provide an extensive reading list later. However, here are the key theories which every beginning teacher should be aware of:

  • Direct instruction and gradual release
  • Cognitive Load Theory
  • Dual Coding
  • Cognitive Apprenticeship
  • Retrieval Practice and low stakes testing
  • Interleaving
  • Variation
  • Elaborative interrogation – asking how and why
  • Reflection
  • Spacing
  • Semantic Waves (Legitimation Code Theory)

In addition to the above general theories. I would also include sessions on subject-specific pedagogy.

Additional sessions

Classroom culture is such an important topic and although most students are taught about high expectations, it would also be useful to talk about explicit strategies for building a culture of success in the classroom. A strong learning culture encourages students to learn from mistakes, to participate and be proactive in their learning and students will have a strong (collective) purpose for being in that classroom.

Oli Knight and David Benson discuss the importance of thinking like an expert in a specified subject in their book “Creating Outstanding Classrooms”. This concept is based on David Perkins’ “Playing the Whole Game”. Students and teachers need to know how to think like a Mathematician, Computer Scientist, Artist, Musician, Historian etc. What does it look like or mean to be an expert in this field. This has to be the end goal for students and we need to design our curriculum not only to match the specifications (which will change regularly) but also to prepare students for the real world. For some teachers, they may enter the profession directly from university, without much industry experience. It may therefore be useful to have industry talks and panels to map the talent pipeline and get insights from industry. What are the most important and in-demand skills in the industry, how can we teach “junior versions” of this.

Closing thoughts

All of the above would produce a solid foundation for any teacher. After 14 years, I still think I need to work on certain areas above. It is an ambitious and utopian teacher training programme. The big picture is complex and I’ve tried in the past to codify it in a diagram, shown below:

You will notice that I have not really focused on behaviour management in this post. This is partly because Lemov's book is a solid starting point and clear routines themselves lead to fewer behaviour issues to start with. I may decide to do a later post on behaviour inspired by the work of Bill Rogers and Michael Linsin.

Some may think that I am prescribing a particular way of teaching for all. I do not believe in “Roboteachers” and a set way. These techniques are a toolkit and the way we use these will vary as teachers develop their own teaching style. Joel Klein once said, “You can mandate adequacy , but you cannot mandate greatness: it has to be unleashed.” Eventually, teachers will build on this foundation and discover their own teaching style.

Recommended reading

These are the books that I would recommend for all teachers. They're the best books that I've read over the past 14 years:
  • Teach Like A Champion 2.0 – Doug Lemov
  • Principles of Instruction – Barak Rosenshine
  • Why Don’t Students Like School – Daniel Willingham
  • Make it Stick – Peter C Brown, Henry L. Roediger and Mark A. McDaniel
  • An Ethic of Excellence – Ron Berger
  • The Hidden Lives of Learners - Graham Nuthall
  • Embedded Formative Assessment – Dylan Wiliam
  • Creating Outstanding Classrooms – Oli Knight and David Benson
  • The Motivation Breakthrough – Richard Lavoie
  • How We Learn – Benedict Carey

Further reading

  • The End of Average – Todd Rose
  • Why We Sleep – Matthew Walker
  • Start With Why – Simon Sinek
  • Cleverlands – Lucy Crehan
  • Inventing Ourselves – Sarah-Jayne Blakemore
  • Legacy – James Kerr
  • The Chimp Paradox – Dr Steve Peters
  • The Art of Learning – Josh Waitzkin
  • Get Better Faster – Paul Bambrick Santoyo
  • Theory of Instruction: Principles and Applications - Siegfried Engelmann and Douglas Carnine

Sunday 1 March 2020

Computing At School (CAS) London Conference 2020

24 hours have passed since my third CAS London conference, so here is a write-up. This is my second time presenting at the CAS London conference. You can find my slides from last year’s session on secondary pedagogy here.

The organisation leading in to the 2020 event was incredible, Jane Waite and Jo Brodie clearly sacrificed a lot to put together such a smooth and successful event. The more seamless the event, the more well-organised it is. You never seem to notice when things don’t do wrong!

I was escorted to my room on arrival which was already set up. I quickly loaded my slides, checked everything was working and went back downstairs to catch up with friends and fellow teachers from the CAS network. I spoke to one of my seniors from the Teach First programme, Peter Kemp who is currently in charge of the ITT course at Kings’ College London. We chatted about our open source projects Pete’s A-Level WikiBooks and my Little Book of Algorithms and Computer Science Colouring Book (sneak preview below).

I also got chatting to Rochelle Laurencin from ScreenSkills. ScreenSkills support Peter Kemp’s 3DAmi animation school and it was fascinating to hear of all the work they do, from their bursaries for courses to their apprenticeships. I have a student who does not want to go to university and wants to go into the film industry, so we exchanged details and I picked up some flyers and posters to share when I returned to school.

The Keynote was by John Nixon. He’s an HMI (one of Her Majesty's Inspectors) and Ofsted's National Lead for Computing and Online Safety. I wasn’t expecting to take so many notes. However, with the new inspection framework, I found myself scribbling away furiously and I realised that the four pages I filled, was the most amount of notes compared to any of the other sessions on the day. His keynote deserves its own separate blog post.

I figured that a lecture theatre operates very much like a stack data structure, last in first out (LIFO), so I made sure I was at the end of the second row and made a speedy exit to get to my session. My session was about one dimension from Legitimation Code Theory – Semantics. I hoped to introduce attendees to Semantic Waves and how they could apply some of the associated principles immediately on their return to school on Monday. I started out by looking at the big picture of classroom best practice and then considered the role of Semantic Waves in our practice.

Perhaps Semantic Waves are a missing piece of the infinite and addictive puzzle that we also call “teaching”.
A bold claim.

We looked at the theory and went through some practical tasks, along with a sample lesson. All of these resources are available here.

In choosing sessions for a conference, I have a few parameters that go into my so called selection algorithm:

  1. Have I attended the session before?
  2. How good is the speaker? – What is their background? Do they have a proven track record? How good were their previous sessions?
  3. Can I make use of their workshop in the next week, day, month or year?

Based on criteria 1, I therefore automatically de-selected Sue Sentance’s and Peter Kemp’s sessions on PRIMM, Programming with Python and Flask and 3DAmi. All excellent sessions which I chose based on criteria 2 and 3 at previous conferences. The three remaining sessions, I must admit I went by the presenter’s reputation first. I chose:

I was not disappointed. I left trying to pick a favourite session and at first I thought it was Hardip’s, but then I couldn’t put it above either Paul’s or Katie’s. So why were these sessions chosen and why do they all receive a resounding 5-star review from me?

Hardip is a rare gem in that he currently teaches both OCR and AQA A-Level Computer Science. He taught himself how to write computer games on the Commodore 64 in the 80’s and his understanding and ability to break down and deliver complex concepts will leave you in awe. His session used a programming language called Forth. Hardip told us that Forth is a programming language, an IDE and a philosophy too (woah, mind blow already). He reeled us in further by telling us Forth was used to write programs for robotic arms on the International Space Station and some of these programs are less than 4kb! The language is clearly robust and it is entirely stack based which make it wonderful for teaching and learning stacks. Despite not using Forth for 30 years, Hardip demonstrated fluency whilst also pacing us gently through the exercises, which were all of course mapped to AQA and OCR spec points. I chose this session based on Hardip’s reputation and I was not disappointed. I left feeling as though I’d just been given the cheat code to teaching stacks. How had I not realised the sequencing and thought about using a stack-based language sooner? His iterative approach, re-visiting how stacks are used was a key theme throughout the conference. Thanks Hardip. You’re incredible. If you’re reading this wondering how you can find out more about Hardip or whether he might be able to help your school, he does outreach work as he is currently part time. So if you require some training or 6-12 week development/teaching particularly at A-Level standard, you can email Hardip at HardipmATgmailDOTcom.

Lunch was great as usual. I recalled that at my last visit to Gladesmore Community School (GCS) I was impressed by the facilities and I must say, my return left me thinking it really is a brilliant venue with great staff and students. Between Igli and his team at GCS and Jane and Jo’s CAS London team, it sets a high standard for other conferences. The conference’s 200 tickers were sold out and 80+ were on the waiting list. The success of this conference made me think back to the CSTA conference – an international conference that I attended in Baltimore in 2017. I wouldn’t be exaggerating if I said that I think we could host something of similar scale in the UK – 1 week of Computing CPD in the summer or Easter holidays. I’ve got so much faith in Jo, Jane and her team. I don’t know if the CAS National Conference will make a return or not, but I can envision an international conference within the next 5 years in the UK. We definitely have the quality in terms of workshop /session facilitators. It was clear that many of the sessions on Saturday could have lasted 90 mins or even 2 hours. A format that the CSTA conference sometimes uses, allowing for 3 sessions in a day over the week. It's something worth thinking about…

Back to the sessions. Session 3 was a somewhat unusual choice for me. My session was entitled, "Going from abstract to concrete and back again with Semantic Waves" so why did I also attend Paul Curzon’s session entitled "Semantic Waves"? In the run-up, Jane expressed slight frustration that I had chosen to deliver a session with the same focus as Paul’s. However, having attended both, I can assure her now that attendees would have got something different from both sessions and it was totally worth it. I chose Paul’s session for several reasons. I’ve been attending Paul’s training sessions since I first started teaching in 2006; he’s been running sessions at Queen Mary University London (QMUL) often with William Marsh and Jo Brodie – quite possibly they were doing this before the existence of CAS. I always leave those sessions thinking Paul is a crazy genius (in the nicest possible way) and that I could never deliver or teach like he does. This is exactly the reason why I keep coming back. Paul recently won the IEEE Computer Society 2020 Taylor L. Booth Education Award. The previous link goes into a some detail about Paul’s contributions to computing education. However, his attitude and work rate were exemplified by the fact that he delivered four sessions on Saturday (including a lunchtime one!). I just about had enough head space to run one session and deliver a TeachMeet presentation. Paul clearly operates on another level. He is a seasoned professional on the conference and CPD circuit.

The most important takeaways from Paul’s LCT Semantic Waves session was firstly that Semantic Waves can be used to evaluate lessons and lesson planning. His clear division of disciplines into technical language and abstract concepts was also powerful. Lastly, I left with the important differentiation between a teacher planning Semantic Waves in their lesson activities and students actually doing the repacking themselves and riding the wave themselves.

Yes, you may be teaching…but what are the students doing and what are they thinking about?

This emphasis on the students doing the repacking, not just the teacher was such a simple point, but it is an important lever in working with Semantic Waves. We had different foci and emphasis in our sessions and I left feeling even more informed. Of course, I also got to witness some signature unplugged teaching activities from Paul too.

The fourth session was with Katie Vanderpere-Brown. Katie is a regular contributor on the weekly #CASChat on Twitter (Every Tues at 8pm). I signed up to Katie’s session based on our similar views on computing education, our interest in cognitive science and our skepticism towards some online learning platforms. We met briefly over lunch and when someone tells you that they’ve come up with a way to print onto post-it notes, you realise that you’re talking to someone who is serious about their teaching craft or someone who is addicted to stationary or both. Katie is both.

There’s a few people who have debated with me about the importance of passion and enthusiasm in teacher delivery style. A prolific tweeter once proclaimed that it just wasn’t their style and enthusiasm and passion were not important-you just need knowledge and good behaviour management. I have to disagree! I think I can spot a good teacher within 30 seconds of watching them teach. This sounds arrogant, but I’m quite confident in my “thin slicing” after developing and observing (probably over fifty) teachers over the years. One of the things I subconsciously notice very quickly is whether or not the teacher wants to be there-how passionate are they about the subject and the lesson they are teaching? Would I want to be taught by this teacher? Within ten seconds, Katie passed this test. Her relaxed and humble demeanor, enthusiasm and informed delivery puts you at ease. After a minute, it felt like I was sitting at home catching up with an old friend. Except, this was someone I’d never met before. Katie went through three different ways of teaching the fetch-execute cycle and I have no doubt that if you ask any of her students, they could tell you the name and function of the registers and memory during the CPU’s fetch execute cycle. The first activity was a card sort with printed post it notes, the second an unplugged physical activity and then she consolidated by demonstrating how we could use different LMC simulators. We were her guinea pigs for some NCCE/Isaac Computer Science material and I think we all left pretty impressed, particularly given that she was weaving metacognitive theory in between her tasks.

The first task with post it notes, simple as it was, generated a lot of debate about sequencing. It made us all think about what the pre-requisite knowledge was for teaching the fetch execute cycle. The three simulators that we saw: 101 Computing , Peter Higginson’s new RISC LMC and Higginson’s AQA LMC  were all new to me. I'd grown so used to the original LMC, I had not really invested the time into exploring the new versions and I have to admit, the 101Computing one is my favourite.


Whilst the physical unplugged task which demonstrated the use of cache memory would be difficult for me to implement in my computer suite, I could see how it would work if we had a different room layout. It is a lovely idea and clearly shows how some instructions in cache clearly have a faster access time. The misconception we need to be careful of here is the student's discussion of distance. Frequently students say that the cache is nearer than the RAM and this is why it is faster. Distance is somewhat insignificant in the fetch execute cycle as electrical signals move so quickly over such short distances. This is something that a lot of students misunderstand. The real focus of the activity should be on the access speed of different memory types and the overall execution time.

After the last session, I managed to catch up with a few old colleagues and friends before delivering my TeachMeet presentation. My TeachMeet presentation was on the importance of language, etymology and storytelling in computing education. My example was on the origins of cache memory and how the term "cache" originates from 18th century French Canadian fur trappers! This presentation was inspired by one of my former head teachers, the great Oli Knight. I hope those that attended will share this story far and wide.

Image result for fur trappers cache

What a day! My thanks go out to Jane, Jo and all the volunteers for ensuring the conference was a success. Thanks to all those who ran workshop sessions and it was good to catch up with some old friends. I hope we can grow this conference into something much bigger with a wider international reach. However, for now I still love the intimacy of our London CAS community conference. Until next time… 

Saturday 15 February 2020

A Just Cause

I’ve been reading Simon Sinek’s “The Infinite Game” during my morning reading session with my sixth formers. 

Occasionally, I’ll read excerpts to them as it’s such an insightful book on long-lasting success. One particularly powerful chapter is chapter 2, “Just cause”. Sinek argues that every company and every leader that wishes to have sustained success needs a just cause - a vision for the future. Sinek states that a just cause must fulfil five criteria:

  1. For Something – affirmative and optimistic
  2.  Inclusive – open to all those who would like to contribute
  3. Service oriented  – for the primary benefit of others
  4. Resilient – able to endure political, technological and cultural change
  5. Idealistic – big, bold and ultimately achievable

In some countries, teachers have to write an educational philosophy. I was asked to write one for a job application once and I have attached it to the end of this post. However, the more I read Sinek's book, the more motivated I felt to write my own just cause. Why do I do what I do, what is it that I believe in and what is my ideal future. My just cause is as follows:

I believe in developing a world where more people know how to use computers to make their lives easier, better and more productive. I aim to teach computing to as many people as possible and I will do this by sharing my resources, knowledge and skillset - primarily through my books, blog, digital and physical resources and videos. Whilst I teach in a secondary school; I want to also help teachers, adults and younger children discover the beauty, fun and utility of computing.
For too many people, computing and computer science in particular seem daunting. Many people timidly or proudly admit to “not being good with computers”. I was once one of these people and I can confidently say that this can change. Everyone can learn about computing, everyone should be exposed to computing and given the opportunity to learn how to use computers to improve our lives.
The process of learning should be straightforward, accessible and involve achievable stepping stones. We should be able to learn about computing regardless of age, gender, race or income. We should be able to learn about computing without the fear of being labelled as a geek. Geeks are great, we should love them. It should be everyone’s aim to be a bit more of a computer geek and I’m here to help you achieve this.


Educational Philosophy – William Lau

From Nanotechnology to Synthetic Biology, from Wearable Computers to Self-Driving Cars; Computing will continue to shape the future that we live in.

Computing teaches us how to solve problems by breaking them down into manageable components. In developing our own original solutions, Computing requires us to be both logical and creative. Computing enables us to develop a skillset and mindset which will be useful in literally every other discipline.

As a teacher, leader and student of Computing, I believe that being a digital native and a mere user of technology is not enough. Technology is changing at such a rapid pace that in order to thrive and succeed in the Information age, we need to understand how computers work. One of my primary aims is to transform users of technology into creators of technology by giving all students the opportunity to think, create, persevere and grow.

To achieve this aim, we must strive to:
  • Create an environment in which all pupils enjoy Computing and feel they can do well in Computing.
  • Create well rounded users and creators of Computer technology with a focus on independent problem solving skills.
  • Engage pupils and expose them to a wide range of Computing tools and skills which will empower them in whatever career path they choose.

Too often, students come into our classrooms with a fixed mindset; the belief that ability is innate and static (Dweck, 2006). As a result some students have got into the habit of giving up easily or not attempting difficult tasks due to a fear of failure. Inspired by the work of Carol Dweck, I believe that the growth mindset is fundamental to teaching and learning Computing. We need to help our students realise that they can achieve great things if they persevere and are resilient when faced with challenges and setbacks. There is a risk of students believing that as digital natives, they have little to learn and that everything they want to do with a computer has already been created or will be invented by someone else. There is also a fear that Computer Science is difficult and too technical. However, by eliminating these misconceptions, our students will be able to push themselves and learn to enjoy the learning process despite the many challenges that they will encounter.

Computing lessons should not just be about ‘doing’; the focus should always be on what the pupils are thinking about. Lessons should aim to teach pupils the real-world relevance of Computing; this relevance comes ultimately from a Fertile Question which feeds into every lesson question.

My teaching methodology revolves around meticulous planning, modelling, formative and summative assessment, feedback and putting the individual learner at the focus of all interactions. In order for a student to understand the standard of what is required, it is important that the teacher models how an expert in the subject should think and perform. This expert may be the teacher themselves, or they may use their students as experts. Having modelled the thought processes and explained the tasks, students should be given an opportunity to demonstrate their skills either through joint construction or independent tasks. It is at this point that formative assessment and monitoring is most crucial. Unless the teachers can visualise student’s thinking, identify misconceptions and mistakes and correct these, a student is not going to make good progress over time. Through regular intervention and feedback, these interactions with the group and the individual allow the teacher to address common errors and help students improve their learning.

Saturday 14 September 2019

Quick Fire Five

The Quick Fire Five is derived from Doug Lemov’s Do Now in Teach Like a Champion 2.0. In brief, a Do Now should:
  • Involve students putting pen to paper
  • Review previous learning (See also Rosenshine)
  • Be completed in silence without any direction from the teacher
  • Be consistent in delivery format e.g. on paper or on the board as students come in
  • Take 3-5 minutes to complete

For more detail see here

Based on cognitive science, Corinne Flett @FlettMiss designed the Quick Fire Five (QFF) in 2017 whilst working as an Assistant Head in charge of Curriculum and Assessment. QFF involves 5 questions which allow for interleaving and spaced retrieval practice. The 5 questions should be one question from:
  • Last Lesson
  • Last Week
  • Last Month
  • Last Term
  • Any time

Many have asked for my bank of QFF Do Now’s. I have included some examples here and here. However, I would say that QFFs are best designed by the teacher, as they should be based on your own students’ misconceptions and will vary based on your sequencing. Some think it will take too long to make. After a year of making them, I can now modify existing QFFs in 5-10 minutes. Writing new ones take 10-20 mins at most.

For more on cognitive science and research-based practice visit:

Further reading:
How We Learn (Carey)

Disclaimer: Whilst I embrace research, I also value experience. Context will shape your practice as will your own gut instinct as to what feels right. I’m a firm believer that there is no “single best way to teach” – if there was, there would be no innovation and no need for new theories. I think if you’re reading this, you’re open to improvement and hopefully open to the view that many of the techniques in the above texts will work but some may not.

William Lau 
September 2019

Thursday 25 April 2019

The Little Book of Algorithms

Version 2.0 has now been released and you can read about this here

The text below refers to the original version.

The Little book of Algorithms is designed to help students build fluency in their Python programming. The book would suit students who have already been introduced to the three basic programming constructs of structured programming, namely sequence, selection and iteration.

Following the publishing philosophy of Al Sweigart, "I write books to teach beginners to code. I put them online for free, because programming is too valuable and needs to be accessible to all. (Though I sell print versions to pay rent.) Get started. It's a great journey."

You can buy printed copies directly here  or via Amazon here.

Download the PDF here which you can print yourself

An embedded book is also below:

Full description:

This book is designed to help those learning and teaching Computer Science. The aim of the book is to help students build fluency in their Python programming. The book would suit students who have already been introduced to the three basic programming constructs of structured programming, namely sequence, selection and iteration. The learning curve for programming can be quite steep and this book aims to ease this transition by encouraging practise and gradually introducing more complex concepts such as lists and 2D lists, file writing and using procedures and functions. Originally, the book was written for my 14-16 year old students studying for their GCSE Computer Science programming exam. However, I hope a wide range of students and teachers will find this book useful.