I am very grateful to the Raspberry Pi project, because even though I will almost certainly never own one, I have been galvanised by the publicity that followed the wave of nostalgia for the digital version of Paradise Lost.
By ‘galvanised’, I do not mean that I have acquired a zinc coating that will prevent me from further rusting, but have experienced instead an effect more in line with the application of electrodes to the legs of dead frogs: I have leapt into action and have done some searching.
I find that the education world is embracing several micro-board based projects variously called Raspberry Pi, Ninja Blocks and Arduino; but why? What is their significance?
I thought at first it was all about nostalgia. You know the sort; BBC Micro blah, ‘why cant everyone write code anymore?’, ‘once we were all Alan Turing’ blah, but there seems to be more to it than that.
I started reading more about these tiny devices. They are all cheap single-board miracles that run open source software: I get that bit. They can talk to sensors and output devices: I get that too.
The Raspberry Pi and the Ninja blocks are based on ARM hardware (the Ninja Blocks use the Beagle Board and Bone), and both significantly run a Linux OS. The Arduino is on the other hand a micro-controller-based board which too runs open source software this time derived from the Wired program rather than Linux: I still get it.
The Ninja Blocks (Beagle-Bone) interestingly use a Cloud9-derived interface by which they can be controlled via the web and do similar things to those you could find in an Arduino project, such as switching lights on and off remotely: yeah I get it, but why?
You can, I find, use a Raspberry Pi board as an encrypted micro-server for secure P2P comms, as well as teaching kids to code.
I’m getting a bit lost now. I get how it all works, I get that the hardware is cool, but I just get the feeling that I am missing something important here. Something like the prototype Facebook important, but what the heck is it?
There is a conceptual division in the three products. Two are ‘proper’ computers with flexible OSes and one is a programmable micro-controller. Both computers are used to do simple things that micro-controller boards do as well if not better, especially in the case of the Arduino which makes micro-controller technology really accessible. Is this division significant?
The division is not absolute: assimilation and hybridisation is possible. The Ninja-Beagle powered blocks have an ultra-simple cloud-based programming interface which happily talks (in principle) to the loads of Arduino-Beagle projects on the net.
I thought at the start that this was all about education, but although it involves mostly the young it’s nothing to do with that world. It is, I think, all about robots and the evolution of the ‘next stage’.
The availability of the Linux free open source operating system coupled with hardware development has produced the first computerised ‘cells’, to use a biological analogy.
Real cells or rather uni-cellular creatures do very simple things, but are themselves very complex. They therefore more resemble devices that have a full OS but do very little, than they do a micro-controller-based biological robot. The difference is profound and lies in their latent potential to become other types of ‘cell’. In biology, this potential made the whole panoply of multi-cellular creatures possible.
My confusion therefore as to what exactly are the Pi and the Ninja is not surprising. They are not ‘a something’, they can be all sorts of things on all sorts of levels. The use of an infinitely mutable open source OS at their heart is key. In biology it would be called pluripotency. Pluripotency is a term reserved for undifferentiated cells, called stem cells.
I think we are seeing the stem cells of the robotic world coming into being. Those devices that sport whole OSes are the uni-cell analogues, which can in turn leverage micro-controller sub-cellular features. At the top level, those that can coordinate via the cloud have the analogue of the capacity for multi-cellular complexity.
Crikey. Mr Gove are you sure you want to teach kids to program? It all sounds a bit too unpredictable to me.