Can you talk about the hardware at all? Technical details seem really hard to come by.
e.g. Wikipedia suggests it's got two processors. That's application processor and a USB I/O processor, right? Which handles mass storage mode and bootstrapping the applications processor? Does it also provide a debugging interface, and can it be programmed? Have they exposed any JTAG pins for the applications processor? Are you required to use their toolchain or can I just womp something up with gcc and deploy it?
I'm under NDA, but I believe we can talk about things that have already been disclosed.
If you do a google image search for large micro:bit images, you'll see there's a Nordic NRF51822 chip (Which is an ARM Cortex M0, with BLE), and a Kinetis ARM chip connected to USB. It's running an mbed-compatible bootloader that appears as a USB mass storage device. You just copy hex files onto it and it programs the NRF51822.
Ok, Wikipedia says it's KL26Z, also 16K RAM, good. I was concerned there may be some cheating with higher RAM available on it. But nope, folks now will really need to optimize stuff to do something useful in 16K ;-).
The RPi has a different aim (to provide a full computer), whereas the micro:bit is to facilitate first steps with minimum effort. By using Python a child gets a sense of progression from one device to the next.
I can confidently say that all the partners are working very hard to fulfil the vision the BBC has of inspiring a new generation of digital makers, engineers and creatives. Each partner brings different skills, capabilities and expertise to the table. It's most certainly a case of the whole is bigger than the sum of its parts since we're all pulling together in the same direction.
Is this going to be an ongoing thing? I mean, after the device is distributed this coming year, will another batch will be sent to the students in the following year? I'm asking because my son will start secondary school at September 2016 and I would be very thrilled to have me, i mean - him, play with one.
The BBC and partners are working together to organise how the legacy will function. This could include a second drop next year. Others are correct, the device will be available for the general public to buy. Given the eventual openness of the plans and resources, you should also be able to order your own to be fabricated somewhere. ;-)
I tend to get fanboyish around MicroPython, because it dramatically lowers a lot of barriers between my rough web-plumbing skills and the world of embedded devices / IoT. Hopefully it will be the same for kids.
On related news, it's great to see the generation that grew up with the BBC Micro is now fully in charge and understands the power this sort of "social programs" can have.
As a web plumber, the Arduino (and Photon and all the other similar platforms) is very very easy to get started with. With minimal C experience, I made a mobile phone[1] and the software was, by far, the easy part.
I definitely recommend buying an Arduino or one of the clones that sell for $2 or so.
I'm very excited about MicroPython as well, though, can't wait to buy something that will run it. (EDIT: at almost $50 per pyboard, it turns out I can wait :( )
I would have gone with Lua, personally, specifically eLua, but this is still pretty awesome.. for those who have the micro:bit already, whats it like? Do any of you guys have experience with giving one to kids and seeing what they do with it?
I'll get one for my kids eventually .. but for sure, I'd imagine eLua to be high on the list of things to get running on it.
EDIT: Lua would be better than Python, imho, because it doesn't require an editor for young minds to harness before they can get working code .. my experience with my 5 and 8 year old kids is that they absolutely are not interested in programming if everything has to line up right - as is the case with Python - but if there are less restrictions imposed on them by the language, the interest flourishes. To me, while Python is an easy language to learn, Lua is a better language to start with .. so if I were a micro:bit user, I'd be putting Lua/eLua on it ..
Yeah, I was not quite coherent with that statement: I mean that Lua doesn't require that you learn to use an editor to line things up properly, a concept which my 5 and 8 year old kids definitely have an aversion to, since it seems like trivial nonsense (to them) to have to do formatting to make code work, having cut their teeth on the BASIC of our 8-bit battlestations set up for the task.
I just mean, to a new programmer - especially a young one - having to grasp alignment/editing concept is a stumbling block, and unnecessary when languages like Lua provide all the same degree of power as Python, and less to learn to get started..
There is currently a version of Espruino for the Micro:bit too, so kids will have the ability to use JavaScript. You can even program/debug it over BLE as well :)
However there's been virtually no interest in it so I haven't spent as much time on it as I'd have liked. Hopefully that'll change when the boards start appearing though.
I'd be willing to help put Lua on the thing, if that's of any interest. I guess I'll start thinking about that when the boards ship and I have one available.
Am I right in understanding you put Espruino on the micro:bit - care to tell us more about that?
Damien is one of the most talented developers I've ever had the pleasure to collaborate with. Seriously amazing amounts of very clever work have gone into this.