Practical teaching of computer science - Rob Leeman
30 June 2016
@MrButcher_IT suggested that a practical hands on element to the new GCSE (9-1) Computer Science course would be desirable and that got me thinking about what the best ways would be to make the new specification 'come alive' and where the best opportunities to use practical hands on teaching in computer science lessons might be.
Hands-on computing
When I taught ICT/computer science I always found you could get even the most disengaged students re-invigorated for the subject by adding in practical lessons like:
- Taking apart old PCs to learn about hardware
- Making a shoebox PC
- Building a LAN using an old switch from the PCs they had built
- Adding a Wifi router to the LAN and setting up the security etc.
- Learning algorithms in the playground (a la CS Unplugged)
- Taking a tour of the schools network, including the server room (accompanied by a nervous technician)
All of this stuff requires support from your technicians and most of it requires some kit that hopefully you will have lying around at school. The hardest thing to come by if you don’t have it is the actual computers, these don’t need to be fast machines and it is worth contacting local businesses as they have to pay to dispose of old computers and you could make their life easier by taking a few, they may however insist the HDDs are removed so be warned!
If you can source some hardware then you can do all manner of interesting stuff as you now have a sandbox to play in which (should be) off the school LAN and so creativity and mischief alike can be encouraged. I had one PC as a server and 3 others as clients with a mixture of Linux flavours (Mint and Ubuntu) and one with XP as well as a couple of Raspberry Pis.
Getting your hands dirty
With this set up (all across two desks so not too intrusive) I could teach pretty much all the topics that had a physical element that couldn’t be done from the students 'normal' computers in the classroom. We played with:
- Networking using Wireshark
- The AV and firewalls in both Windows and Linux
- Command line and the terminal as well as Powershell and BASH (SS64)
- A very old virus (Sub7) and how it worked and how a Firewall stopped it
- Scripting in various languages to various ends (including a script in Java that deleted Flash games that some students tried to play on the LAN)
- Web design, hosting it on the server
- How DDOS worked using LOIC
- How to backup, restore and maintain a system as an admin
Some of this stuff may upset your technicians (especially the DDOS and malware bits) and so it is worth collaborating on these projects so as not to upset anyone at your centre. All these things can be done perfectly safely in the confines of a sandbox and you could do all of this virtually if you have the necessary skills/facilitates to do so. Nothing beats getting your hands dirty with computer science and so I will write a guide on potential practical activities that can be used to teach the new specification. I suspect most of these will fall under Component 1 but can encompass all of Component 2 with access to various IDEs and tools on the LAN. Watch this space!
About the author
Rob Leeman - Subject Specialist - Computer science
Following on from his work on the Computing A Level, Rob is now assigned to lead the development for GCSE Computer Science qualification. His experience began in IT support before embarking on a career in teaching and assessment having taught and managed A Level IT, and prior to joining OCR in 2013 Rob held the post of Head of ICT and Computer Science at a secondary school in Cambridgeshire. In his spare time, Rob loves to exercise his dogs and indulge in CrossFit, airsoft, diving, clay pigeon shooting and is a keen proponent of Open Source.