A brief history of computing in UK Schools
For many, computing began in 1981 with the release of the BBC Micro as part of the Computer Literacy Program.
These computers were sent out to schools across the United Kingdom and many children began to learn principles of computing with them. There was criticism that resources and guidance for teaching with these machines was lacking, often leaving schools wondering what they were for. University tutors frequently bemoaned that the introduction to (BASIC) programming that their students had experienced had done more harm than good but nevertheless, children were getting down and dirty at a bits and bytes level and this was a good thing.
In the late 1970s, Intel released a defining kind of new processor called the 8086. This was the first in a line of computer processors that has powered most desktop computers, made famous by IBM.
In 1985 a company known as RM released a machine for education called the Nimbus. It was based on the second in line Intel processor (80)186. This was the death knell for the short lived computer literacy program.
The impact of the “PC” had a profound effect on Computing in Schools.
Over the following 20 years programming and computer science died and, as noted in the Royal Society Shut Down or Restart was replaced by uninspiring ICT “basic digital literacy skills such as how to use a word-processor or a database”. This statement is rather extreme, there were some very inspiring and genuinely useful qualifications based on ICT which have now ceased to exist. The Diploma in Digital Applications being one such example.
During that period RM maintained a leading position by reselling equipment and software as well as network administration.
The release of the “Shut Down or Restart” document was a watershed moment. Suddenly in schools, computer science mattered again.
In 2011, with the release of Shut Down or Restart in my role as Curriculum Leader for ICT (Head of Dept) at Eastlea Community School I decided to put programming back on the curriculum. My initial attempt at this was with Microsoft Small Basic. I tested this on one machine, was pleased with the result and so raised a Change Request with RM.
A Change Request was an order to the company providing network and computer support to install some new software on a number of machines. Alongside the annual fee that the school had to pay, this would incur an additional and considerable fee for the extra work to be done.
Before this was completed I learned that there was no way RM would ever allow Small Basic to be fully installed on their network as the students create .EXE files when compiling their programs. These are viewed as a serious risk to security.
Around about the same time, Raspberry Pi were releasing their early model B, selling in the UK for around £35 I purchased thirty of them and sourced some very low cost cables and power supplies to go with them.
With my new year 10 GCSE Computer Science class we spent our first lessons constructing a network of our own, separate to RM and using Raspberry Pis for Computer Science.
We saved space and cost by using the monitors, mice and keyboards from the PCs we already had in place. I’ve written about all of this in detail in the Raspberry Pi community forums here.
This worked really well for me and one other colleague. In over three years the main problems we have had have come about as a result of SD cards breaking, a design flaw in the raspberry pis means they stick out and the slots easily broken.
Fear of the unknown
For busy teachers with a background in teaching ICT, working in a busy school where it is not always possible to provide the support that is needed maintaining a network like this is not possible. It does eat up a lot of time in lessons giving out SD cards, tracing dodgy cables and simply swapping over keyboards and mice.
One other colleague through necessity had a similar setup in his classroom. There were two of us teaching GCSE CS, at the time the Raspberry Pi network was the only way for us to deliver the course. Without this incentive it is simply too much extra work for an ICT teacher to take this on in their rooms.
I was recently asked by Microsoft if I would like to take part in a pilot of their “Azure” for eduction program. I was given a brief, the kind of brief I really like. Basically, here is Azure. See what you can do with it.
Azure provides powerful virtual computer that can be set up with a range of operating systems. Not just Microsoft but also embracing Linux as well! I have to say I am very impressed with Microsoft’s modern corporate attitude to open source systems as a valuable partner, not a competitor.
You can use a remote system like VNC to access your virtual desktop. With many schools still struggling to get what they need for teaching computing onto their networks I wondered if it would be possible to provide a VNC like interface to a virtual computer for programming and so on through a standard school internet connection and web browser. It turns out that you can, by using a system called Guacamole!
A “clientless browser based remote desktop gateway” based on HTML 5.
I set up a test virtual machine running Ubuntu in Microsoft’s Azure cloud.
I configured this with the Guacamole system and have done some single user testing. Results so far are very encouraging, to all intents and purposes I have got access to a computer that is more than adequate for teaching computer science but without the hassle of administering a network.
It is as simple as issuing student login details and the website address. Students (and teachers) then login by entering the URL in their browsers. They are then using a computer in the same way they do with the physical computer in front of them, they have their own logins and their own secure place to save their work. (This work can be accessed by the teacher by using the “root” login)
The login screen.
Python and Scratch. Running on my virtual Linux computer in a web browser on my Ubuntu laptop.
So far it seems like a very simple and straightforward approach to providing what’s required for teaching coding. I look forward to the real tests, next week, this will be when I ask other teachers in my department to deliver Python programming lessons to their classes with it. I wonder how it will hold up under the load of many tents of users accessing it simultaneously.