First look The BBC Micro:Bit will start rolling out to all year-seven pupils in the UK from this morning.
What the kids will receive is a matchbox-sized single-board computer with 256KB of flash and 16KB of RAM, manufactured by element14.
Yes, you read that right, the same amount of RAM as the Acorn-designed BBC Micro Model A of 35 years ago – the first time the Beeb launched a computer at schoolchildren.
It’s small because all the heavy lifting in terms of development environment is done by apps and browsers running on tablets, phones or PCs. Think of this not as a full computer but as a board for running simple programs and interfacing with the surrounding world.
The Micro:Bit is also six months late, which is a good thing because it’s given the BBC and its partners time to actually ensure that it's useful. Rather than simply get dumped in schools, the Micro:Bit comes with lesson plans, obligatory videos and an array of code samples.
Although this is not a Windows or even a .NET platform, Microsoft has waded in deep, providing two languages to program the thing, and much of the course material (which you can see as good or bad).
Why not take the PIs
Reg readers may enjoy Linux command line interfaces, but to the average 12-year-old, it looks like some kind of evil computer from the 1980s trying to over the world. Micro:Bits are designed to be used by the smartphone generation. Instant gratification rules here and the BBC, ARM et al want to reach all kids, not just those whose parents force-feed them C++.
From talking to teachers, I’ve found most are positive about it being useful for more mainstream kids, which is a wide spread of abilities. That’s a real problem in classes where one teacher has to keep 25 kids going, so the Micro:Bit ships ready for four development systems.
Entry level is Microsoft Blocks, which if you haven’t seen Scratch, is drag’n’drop flowcharts where kids simply assemble programs and fill in blanks. They can bang out something which scrolls text or reacts to being picked up without typing any text at all. You might not be scared of cryptic syntax errors, but many 12-year-olds are. The shaking is detected by the accelerometer and they can write rude messages on the five-by-five grid of LEDs. This is basic Internet of Things stuff, which teenagers today are going to be using in their jobs – or possibly while they're not working at all.
So you get event driven programming, loops, simple variables and the ability to make it complain if you pick it up. Many kids are more motivated by a “gadget” doing something more than the boring miracle of instant message processing.
The BBC is pushing the idea of “creativity”, which apparently means making it into a message-displaying badge and for it to respond to text messages through a phone. This can be banged out quite quickly, unlike those BBC Micro days at the dawn of the 1980s when we’d lose three days typing in code from a magazine.
Microsoft TouchDevelop has been in schools for a while as a simple way to get kids started in mobile app development for Android and WinPhone. The feedback from teachers has been pretty good and again it is helpful and simple. When reviewing this I had to keep reminding myself that the patronizing messages are actually a good thing if you’re 12 (as in My First IntelliSense) and has code as you’d recognise it.
These work by pushing the whole program, plus the Lancaster University Runtime, down the line to the Micro:Bit in an IoT rather than PC development style. The runtime includes a Device Abstraction Layer that means languages plug into a jump table and novice programmers don’t need to care much about hardware at all.
Part of the reason for having two Cortex MPUs is to dodge problems when you have one processor doing booting, loading and communicating with the host; corruptions can brick the device, which is annoying for an adult developer and catastrophic for a teacher with 25 kids all demanding their device get fixed, right now.
The Beeb is cagey about how much this has cost, but it can’t be very much. The partners have mostly shouldered the costs themselves with Barclays helping home educators. The BBC will open-source the whole thing and turn it over to a non-profit outfit that will sell Micro:Bits and develop it for the next year.
“But,” you say, “there are only 583,212 Year Sevens in the UK, why make a million?” Have you met 12-year-olds? The BBC is shipping extra units to cope with breakages and losses as well as keeping a pile for projects that show it off. Aside from some reports of heating issues in early models, the Micro:Bit is pretty tough able to stand treatment short of being stamped on.
The Micro:Bit sports low-power Bluetooth, so it can be paired with your phone or tablet to respond to texts or be programmed via Samsung’s Android app.
The board's Nordic Semiconductor ARM Cortex core handles Bluetooth as well as the actual execution of the self-contained apps. The NXP Cortex microcontroller communicates with the host via USB, as well as a magnetometer for compass direction, and accelerometer for motion.
The five-by-five LED grid is surface mounted and only the most determined teenager will break them, with power coming from AAA batteries which will keep it going for days.
First fruit ... the Acorn team hold an Atom, a BBC Micro predecessor, in 1981
If you have a Year Seven kid, it will be yours to keep – hence the need for more units next year. That hasn’t been universally popular among teachers, partly because of tight budgets but also because they know how 12 year olds operate and expect many to get lost, destroyed and so on. Many aren’t going to give them to kids until they’ve finished explaining them.
The Micro:Bit won't kill the Raspberry Pi, that other great small computer board aimed at the next generation. The Pi runs Linux and – at a push – something approximating a version of Windows, which the Micro:Bit does not.
Rather, it aims more at the middle ranks of kids who haven’t yet got coding in their blood. Given that all UK kids are now expected to be able to code at least simply, however, this is not a bad way of getting the masses into programming. ®