What is a "a credit-card sized GNU/Linux computer"? Will it never run any other OS? Is it trying to achieve the same form of OS monopoly MS has been attempting in the x86 arena for years? I'm confused.
No review is ever written in isolation, absent from context. Usually, you can guess the reviewer's bias within a few paragraphs, and compensate accordingly. He hates LCD display quality, she dislikes proprietary software, they yearn for the days of full bandwidth vinyl. You get the idea. Raspberry Pi ARM PC Raspberry Pi …
This post has been deleted by its author
>Feel free to try then.
Thanks for the permission but I'll pass and as you fail to see the point of this board I'll make it as clear as possible. If someone was so inspired as to try then it has succeeded in it's objective of stimulating the pioneering spirit you seem to have long ago given up.
Just because you see obstacles which may or may not be unsurmountable others may wish to have a go and should be encouraged. They may not succeed but they will definitely learn something along the way.
I get it @Chris W you have no clue what you're talking about, do you even know your GPU from your PSU?
Reverse engineering the Pi GPU would not be "pioneering spirit" it would be a utterly useless waste of time since that particular SoC is not available for sale to the public. Actually, since Roku changed their design I don't even know anyone else using it other than the Pi foundation.
There are however other cores widely available on the market that are much more appealing such as the Mali 400, which already has a functioning open-source stack.
This post has been deleted by its author
> Oh dear, you don't even know Monkey Island references?
> You're posting on an IT related site why exactly?
Wrote my first program in 70s, continued throughout the 80s, moved into system admin in the 90s, set up my own IT company in 1998 and I'm now retired.
Why the fuck should I know anything about monkey island and what does it have to do with IT?
"If you need to reverse engineer the GPU you could try asking the linux community. They being doing that sort of thing for years."
Well yes, with some varying degrees of success of course. It's not easy peasy (I worked on reversing the Tseng Labs ET4000 on the well known x86 platform and that was enough for me, can't even imagine the work involved for an ARM-connected 3D core)
The other problem as I said is there's no good argument to make for reversing the Pi's GPU, because this GPU is almost exclusive to the Pi.... The Roku 2 is the only other platform that uses it, but the Roku 2 has so far never even been rooted and is now deprecated, so a graphics driver for that is not something that's really needed.
If the foundation changed their SoC in a future Pi all the many months (years?) of work would be rendered useless.
"Wrote my first program in 70s, continued throughout the 80s, moved into system admin in the 90s, set up my own IT company in 1998 and I'm now retired.
Why the fuck should I know anything about monkey island and what does it have to do with IT?"
You do sound like a sad and bitter person.
""Wrote my first program in 70s, continued throughout the 80s, moved into system admin in the 90s, set up my own IT company in 1998 and I'm now retired.
Why the fuck should I know anything about monkey island and what does it have to do with IT?"
You do sound like a sad and bitter person."
I don't think so, although it might sound like that to you because you are a twat.
> Look up George Mallory
Thanks for educating me about Mr Mallory, apparently he died trying to reach the Everest summit.
But this is related to reverse engineering a GPU how exactly? If you're using Everest as a metaphor, maybe a successful explorer who didn't die would be a better example.
Plus the Everest was and is not going away anytime soon, any exploration you do will be useful for generations to come, while by this time next year this little SoC will be in the scrap heap and forgotten.
>>much of the hardware is undocumented
Tell us how much, say NVidia, is documented.
As to the Raspberrypi dot org itself:
"Broadcom don’t release a full datasheet for the BCM2835, which is the chip at the heart of the Raspberry Pi. We will release a datasheet for the SoC which will cover the hardware exposed on the Raspi board e.g. the GPIOs. We will also release a board schematic later on."
>>much of the hardware is undocumented
>Tell us how much, say NVidia, is documented.
Why NVIDIA? I'd never use NVIDIA for any computer whose hardware I wanted to hack around with.
NVIDIA is evil, they've just dropped Linux support for PC chipsets with their Optimus tech.
The Mali 400 on the other hand is already pretty well documented.
As someone who works for Broadcom (on that particular GPU) and volunteers for the Raspberry Pi foundation, I can categorically say that the GPU you say is only used in the Roku device is also used in at least 5 current production mobile phones, as well as numerous other devices, so I think perhaps you need to revisit your arguments.
I wonder if you are thinking of the particular chip, the BCM2835, that has the GPU in it, which is currently used in the Roku device and the RaspberryPi. That particular chip contains the GPU to which you refer (A videocore4), but it isn't the only chip that does so.
Even Wikipedia has the information which you are missing.
You are correct in one point- it would de pretty much impossible to reverse engineer the GPU.
It runs an ARM11 chip, which (confusingly) uses the ARMv6 instruction set, as opposed to the ARMv7 more commonly found in your garden variety smartphone, so support for the chips isn't that widespread. In theory it'll run any OS you can compile to run on ARM11, but you'll quickly find that that list of OSes quickly degenerates to just Linux, and once you start considering usability that list degenerates even quicker to pretty much just Debian (for now, anyway). It's quite a step from common arm chips and a far cry from your typical x86 beast, so whatever OS you want needs to be one that is supported by a broad community of active and talented developers.
Aside from Linux, RISC OS is the one that's already been mentioned, and you should have no bother running Android on the thing, but after that you're out of luck. There'll be no chance of Windows on Arm because the RPF aren't a windows partner (plus MS aren't selling licenses to end users, just OEMs per device). But really, it begs the question, given the nature of the device; a low cost, educational/hobbyist PC/embedded electronics platform, why would you want to run anything but linux on it?
It's not particularly interesting to BSD really - or at least I've seen no interest from the FreeBSD community. See here:
The Pi is an ARMv6, which isn't that powerful compared to most other (Cortex based) SoC boards. The video out is controlled by a proprietary, closed source system, with no specifications - so there is zero chance of enabling video on a Pi without using the provided binary blob on Linux.
If you want a cheap ARM on BSD that can't do video out, you buy a sheevaplug, or one of the many derivatives. If you want a powerful SoC, you buy a BeagleBoard or a PandaBoard.
"...and once you start considering usability that list degenerates even quicker to pretty much just Debian (for now, anyway)."
I'd say that depends on how you define "usability". If you mean "it's mostly all there out of the box", then I'd largely agree with you; that said, Arch Linux ARM is pretty stable and usable, and many of the programs and services I've got on my Arch/x86 netbook, are available on Arch/ARM on my RasPi (subject to the more limited system resources). Mind you, Arch isn't for the total newbie, and I'm not sure I'd subject the average schoolkid to its quirks, but I like it :-)
No quarrel with the rest of the post, though the question of whether Android will run on the Pi is a bit thorny (I understand it's being pursued, but not much word yet). Like you said: I think I'm happy to stick to Linux on the little fella...
> It runs an ARM11 chip, which (confusingly) uses the ARMv6 instruction set, as opposed to the ARMv7 more commonly found in your garden variety smartphone, so support for the chips isn't that widespread.
You sure about that?
...seems to suggest quite a few phones use ARM11 chips and few seem to use ARMv7 chips?
> ...seems to suggest quite a few phones use ARM11 chips and few seem to use ARMv7 chips?
That list seems to suggest quite a few OLD and retired phones used ARM11 chips, e.g. iPhone 3G is already 4 years old...
Current phones have the more powerful ARMv7 instruction set cores.
The switch between armv6 and armv7 is typically just a gcc flag or two away. And most people don't need to care, as system gcc already is configured with correct flags.
There is not that much speed difference between armv6 and armv7 either in most cases. Neon is sometimes useful, but armv7 doesn't guarantee that either.
Actually, a lot of current generation smart phones use ARMv6 (e.g. ZTE Blade / Orange San Francisco), and practically all Android slates that sell for < ~£120 use ARMv5 processors, as do some NAS boxes in a recent review on this site. ARMv5 is still very popular, cheap, and the performance of some of them is pretty decent (e.g. Marvell Kirkwood). Except for the very latest release of Ubuntu, all Linux distributions support ARMv5 and have no plans for dropping ARMv5 support in the foreseeable future (Fedora, RedSleeve, Debian, etc.). Ubuntu is very much the odd one out for dropping ARMv5 support.
As someone who now wants to try and have a stab at a bit of programming (after dropping out of software design in high school due to never actually paying any attention) the Pi seems perfect - and it's at the right price point for it to essentially be a "no-risk" proposition - here's a computer that can be up and running for a lower overall price than many textbooks, and with a large fanbase already (and plenty of forums to go to for help) it seems it's almost a no-brainer to get one....
The only issue is the reported instability of the hardware, as has been spoken of both often and loudly in other articles on the subject here on El Reg. Having a piece of hardware this cheap sounds perfect, but even if it can't do *much* it needs to do what it can, *well*. If not, I forsee lots of frustration followed by an attempt to expand the functionality by attaching it very quickly and briefly to the heavy end of a large hammer.
I do hope stability can be sorted out and it succeeds though, with a dedicated fanbase I can see people doing things with it that the creators never imagined...
If you want to try out some programming there are free tools for your existing computer. If you are Windows based try DEV-C++ if you fancy trying C or C++. Perl and Python interpreters are just a Google search away and if you use a Mac then the world is your oyster as you have access to a hefty %age of the FOSS tools.
(Note to Linux users - I didn't mention Linux as I assume that if they were using Linux they'd know most of the above).
To be fair to them the software instability is exactly why it's been released in its absolutely bare bones to the world of hobbyists and developers first. The foundation want to target schools and children (that sounds sinister), but by flogging 150,000 of the things to techy types first they get us to work out all the linux-tastic kinks before they unleash the thing on kids.
As the other poster said - you have a pc you're posting this from? Then you have a platform you can program already. Install python, or a C compiler, Java SDK, or whatever runtime you want (these are all available free for Linux, Mac and Windows) , find an IDE you like or even just a text editor, then just go for it.
Pi is an interesting device for it's size and cost, but you don't *need* a new machine to code with.
Indeed you don't, but with raspberry pi the wannabee kernelmode developer gets a *cheap* *low risk* machine to play with. Yes you *could* do equivalent stuff on a PC, but when Bad Things happen (as they sometimes do in kernel mode) on the PC, it may take time+effort to fix. On RPi, reflash the flash and start again.
What a load of nonsense. The wannabee kernel mode developer already has a way to do exactly this, by using a vm on their operating system of choice.
I know lots of BSD kernel developers who run OS X on their laptops, and test all their kernel changes in VMs. Very little needs actual hardware to develop upon.
re "you don't need a new machine to code with" . exactly what I thought.
I'm still getting a raspberry pi, but that is because it is small and cheap, and I want to put in places, like home automation, where you only want and require small and cheap low power devices.
if the GPIO pins can be interfaced well to run relays, PWM power control, etc then I can see the RPi being much better than the arduino I've got. On the RPi model B you get ethernet on board instead of on a "shield" like the arduino.
An arduino + ethernet shield is about the same price as a RPi model B, and only has a fraction of the computing power.
I think most of the hardware instabilities are due to poor power supply. The spec requires a power supply capable of supplying 700mA. Many micro USB chargers only supply 500mA. Also, if you're using a power supply with a USB socket and supplying your own cable, make sure you use a decent cable with thick wires. If you don't have sufficient power you'll get random lockups every now and again.
I'm currently using an iPad charger with a Nokia USB->micro USB cable and that's rock solid. Farnell and RS both sell suitable power supplies.
After issues with a Master Plug USB charger (fine for other devices, but not enough juice for the Pi (pun half-intended)), I splashed out £4 for a Nokia AC-10X micro-USB charger on Amazon. They're slightly more generous with the power they dish out, and the Pi has been quite happy ever since.
I don't think the stability issues are power related. I've seen the same thing with a 1A usb psu, though I wouldn't call it a hardware instability, more of a software issue due to memory constraints. Running a browser on the Rpi, particularly the default Midori browser (on the Debian dist) eats what little ram there is. Chromium seems much more usable but even then, running more than one tab causes it to crawl. Give it enough time and it catches up.
I've seen the same thing when trying to compile libs, system looks dead, left it for a few hours and came back to an error message and a prompt...
> due to memory constraints.
I know that software bloat is the in thing these days, but how can 256MB of memory constrain *any* decent programmer?
If it shipped with 256KB I could understand the complaints, but anyone who can't get their choice of software to run in 256MB just isn't trying.
"I know that software bloat is the in thing these days, but how can 256MB of memory constrain *any* decent programmer?"
This isn't about any decent programmer being constrained, this is about the platform being limited. Big difference. Your implied sniping at the post you reply to is out of place.
If you're trying to run a modern desktop OS, that doesn't really leave you very much at all. Running firefox and multiple tabs on top, and trying to view webpages full of images and scripts, you're going to start swapping like crazy, which isn't going to be fun with an SD card.
I agree that if you set out specifically to tune an OS to the device (and stay away from script-heavy websites) then you could acheive much more, but this is not what is happening, people are running a full desktop stack.
> Running firefox and multiple tabs on top, and trying to view webpages full of images and scripts, you're going to start swapping like crazy
That's more a reflection on crap Firefox coding than on the system where you're trying to run it. A browser that takes GB of RAM, FFS! Someone needs to go back to progamming school.
It's not just firefox that has the large footprint but.... yeah, it's pretty poor. I'm not sure whether you ought to blame firefox or the legions of web developers who no longer consider footprint or performance to be their problem, but either way it's ridiculous that I can have three tabs open and be using half a GB of RAM for the browser alone.
Who's with me for the native/local code revolution?
And don't forget that while there's certainly a lot of bloat in many software packages, a lot of modern ones actually do significant stuff that needs lots of RAM.
Don't know if this helps... recently had to use an old XP pc with very little RAM. I found that Opera worked much better than Chrome- if this is because of Chrome's one-instance-per-tab design, then the performance difference might be seen in Linux too.
Also, there is the option to use Opera Turbo (website data get compressed on Opera's servers) which whilst designed to save bandwidth would obviously save some memory too.
The hardware is okay IF you have a stable power-supply. The main problem seems to be driving USB ports .. basically if need more than 2 usb devices you MUST use a good POWERED hub and use a decent power supply (>1amp) on that as well.
I've managed to get 7 usb devices hung off a single powered hub and communicating okay so far .. I will be trying out 3G dongles, web cams, wifi, bluetooth, OBDII, keypads, VOIP handsets etc to see what it can cope with.
I've seen a few application panics under Arch Linux .. theory is that the USB/Ethernet chip driver is "sub-optimal" at the moment (not unusual for Linux in my experience !-).
Yeah don't really like the review sorry. You made it sound like a usable computer but it really isn't. It's less usable than the first generation Atom netbooks which is now gathering dust because nobody can make it work in 1080p (or 720p for that matter) without lag and sync issues running on Ubuntu.
If you focus the article more on the embedded electronics capabilities then I see the appeal given that 4 years ago I had to make do with a Gumstix that is > 150 USD.
Selling a embedded electronics as a fully functional HTPC is something I personally find dissatisfying after we've already fallen into that trap once.
"Who buys a netbook to run 1080p video?"
Nobody - at least not 'simply' because it is marketed to run 1080p. But that's not the point of the OP is it? It is about what the review is marketing. Basically this review sounds like a netbook hype review which nobody in their right mind today would even believe.
Have a sense of context people. The OP wasn't criticising the device.
I don't recall saying I brought the netbook to run 1080p. Though I did buy it to see what the fuss is about. But enough about that.
The fact that if you search on Google or been active in any Linux forums, you'll find a lot of people now wants to do so because they finally figured out netbook can't even be used to do word processing in a satisfactory manner should be tell tale enough.
Also 'if I think all it's good for is embedded electronics you're just plain silly'. I don't know how to tell you but embedded electronics covers a large enough market share, so why is it that I'm silly because I think this device can be used to build, power and control 90% of your household items?
"In day-to-day use though, is it a PC replacement? Nope, probably not. The main killer is more the 256MB limit, than the clockspeed. It's fine for word-processing, and a little spreadsheet-ing, but as a thin client, it struggled to deal with the bulk of modern web-app sites – webmail, Dropbox, Stackoverflow and the like – and was prone to hanging when switching between browser windows." Not a very good salesman IMHO
"And yes, sorry, must stop calling it a board; it really is a PC. Indeed the Rπ Foundation could rightfully claim the title of cheapest bare-bones PC on the market."
"Unbelievable bang-for-your-buck educational/hobbyist ARM-based PC."
"Bare bones computing"
Yet it's computing power is that of a first generation Android tablet? Who in their right mind would buy this to run a PC? Rπ Foundation didn't claim it's the cheapest bare-bones PC or made any reference to PC for the right reasons.
Cost is the primary selling point of the Raspberry, but the OP isn't talking about the device's good points or bad point is it? You guys obviously haven't subscribed to a 25mbit internet plan but only got 8 mbit real bandwidth.
The Raspberry Pi is made for education and hobbyist electronic projects. Not for the PC. Clearly a warning label is warranted for pedestrians before they become zombified fan-bois only to fall into the trap of 'hype and dump' much like Facebook's shares.
It is a perfectly usable computer. It isn't really suitable as a desktop replacement, which the reviewer makes perfectly clear, however that's not the only possible purpose of a computer, and nor is it the target market.
As an HTPC (again, not the target market, but that doesn't mean it's not usable as one) - it's probably far more capable than your Atom netbook, since it has an inbuilt GPU capable of 1080p decode (and OpenGL ES 2.0 HW accelerated graphics). Currently not everything makes use of this acceleration, but these are early days. I downloaded the Raspbmc beta yesterday and that certainly looks promising.
Do cite your benchmarks claims that the Raspberry Pi is faster than an Atom netbook.
Given that http://www.raspberrypi.org/faqs actually says the Pi has the equivalent of P2 - 300 Mhz performance and nobody on the raspberry forum claims it's faster than an Atom.
Even if it can decode 1080p flawlessly, sound and general processing are still required and depending where you storage is. Network streaming performance will count as well.
All in all, pretty sure it won't work as a HTPC properly.
I can assure you that the RasPi is perfectly capable of running 1080p video, from local storage, or network attached.
Moving around the menus in OpenELEC/XBMC is not particularly snappy, but once you hit the "play" button, the performance is excellent. I have yet to notice a single dropped frame, or sound drop-out, and I've been playing with mine for nearly two weeks... (Ooh er missus).
"All in all, pretty sure it won't work as a HTPC properly."
I beg to differ..
I Have been using my pi as a HTPC for a week or two now, using OpenELEC on the pi and serviio as a media server and it is perfectly usable as a HTPC playing 1080p video WITH sound over network....
It actually does a better job than the UPnP player built into my TV....
the only issue is that the on-screen menus tend to make the video stutter slightly, but as its even a pre beta release of the source code I don’t expect it to be perfect, but with each build it is getting better. When it actually gets to an official release of an SD card image then expect a fully fledged tiny HTPC...
"My first generation aspire one is still limping along fine"
So is mine.... battery is totally screwed and its on its second PSU, no duct tape though, but i have worn away the case on the touchpad so much it has a black spot in the middle....
Linpus got ditched, an extra gig of ram installed, windows 7, and it gets used more than any of my other computers....
that said, it does need a replacement, I am sick of the site of it.....
Yeah, mine got pulled apart, I ripped out the ssd and replaced it with a fast cf, stuck in another gig of ram. Linpus got launched immediately. It's been running ubuntu (too much crap i don't use), debian (better) and finally arch, from the ground up (quite nippy).
The battery is dead on mine, I also had to buy a second psu (£5, ebay). My clumsiness means I also had to replace the screen. I've said that it's on 'do not resuscitate' from here on in.
Ah, another Arch user :-) Last summer, I was looking for a replacement distro for my trusty Eee 701SD (yup, the "original netbook" from 2007 - 7" WVGA screen, 8GB SSD, etc.), and eventually settled on Arch, largely because it's fast and highly customisable.
Best decision I ever made regarding the Eee (aside from upgrading the RAM to 2GB). Arch really gave the little fella a new lease of life - the machine fairly zips along, though leaving out a desktop environment (I use Fluxbox as a window manager) probably helped a bit there.
I think I'll run the Eee until it drops, then perhaps I'll take a look at one of those ARM "netbooks". Hopefully they'll have matured a bit more by then...
It's more than sufficient to run a web server, or to run a few discrete apps such as a media server.
Once you pile a desktop on though it probably does suffer. It has a fairly underpowered CPU and a brick wall of limited physical memory. The only place to go is to cut the desktop to the bone and / or enable swap. Swap would have to be on the flash or USB neither of which is going to be very fast.
The issue is compounded somewhat because X11 is a context switching bloater. I think Raspberry Pi would benefit a lot when Wayland appears since it cuts the memory bloat and context switching right down. Wayland is even built on top of OpenGL ES so it would be hardware accelerated. It still wouldn't be a good desktop but it might be tolerable.
> 8 FPS with Stereo. Not what I call a HTPC. No 5.1 Surround, can't run 24 fps.
What a complete tool you are! Does that really look like 8 FPS to you? FFS listen to the vid and you can hear the guy say "8 FPS which is incorrect". You've made yourself look a fool with your own evidence
Though aimed at education ,the massive interest outside education is a really good thing. We have teachers that are not specialised IT teachers, teaching IT classes, some with very poor understanding of computers and how or why they work (some can't even cut and paste, that's Ctrl C, Ctrl V not just nicking some information.) So enthusiasts from outside schools is a very good thing to drive the available echo system forward, volume to reduce costs etc.
The first time i used XP, I found that the middle mouse button did not work (as expected). Luckily the machine's owner was near by to explain that paste was Ctrl-something-I-have-forgotten. The usual default Linux settings are:
Left click: Do what I usually mean.
Left click and drag: Select for pasting.
Middle click: Paste.
Right click: Show a menu with less commonly used choices.
Alt-left click & drag: Move window - handy if the window is bigger than the screen.
Shift right triple click while singing the Monty Python spam song with your left knee behind you ear: Not normally assigned but I am sure someone will thing of a suitable use.
This post has been deleted by its author
"You'll have to make sure all your video is h.264. It doesn't support anything else outside of software. "
This is quite common for SOCs. The hardware might be quite capable of running h264, vc1, DTS etc. but they're individually disabled unless you buy software tokens which are installed at the factory which enable the functionality. Even if they are enabled, it doesn't help much if the APIs to get to them are undocumented or proprietary.
I imagine that most people would choose to encode their content with h264 anyway so perhaps it's not such a big deal. MPEG4 ASP could probably done in software if its not hardware enabled, at least for SD content.
Oh... I better stop doing that then. Thanks for the heads up.
I have it powered happily with my Panasonic TVs usb port.
I am using the Open Elec XBMC build headless with the android XBMC, streaming my content from my NAS and I was really blown away by it. Surprisingly responsive and usable. I'm not sure I'd let any other member of the family to use it but if I'm steering I'd be happy to use it.
As for a tool to learn programming, I've never understood the use. Join www.codeacademy.com and learn via a browser. There is no reason to buy a Pi for it.
"You haven't pushed the GPU far enough then. Pi at full tilt needs 700mA, regular USB port is 500mA."
However if you're managing 1080p decodes without random lockups, then perhaps your USB port is supplying enough power. That's one of the most demanding usecases. I found XBMC gui very unstable when I was using a dodgy power supply.
> I think it's adequate. I was running almost all 1080p videos I had.
Have you tried playing Quake 3? Do you have anything on the Pi's USB port, like WiFi or a disk?
As I said three times already the Pi can easily pull more than 500mA and in fact the quoted spec is 700mA.
Your setup may work reasonably with just 500mA, but that's not a general rule you should be making. No need to to be sarcastic either.
> regular USB port is 500mA.
Technically you're only supposed to draw 100mA from a USB port without asking, if you want more you're supposed to negiotiate with the USB controller, up to 500mA max.
In practice most USB ports that I've seen are just hooked across the 5v rail, and will deliver anything you ask, if the PSU can cope.
> regular USB port is 500mA.
> In practice most USB ports that I've seen are just hooked across the 5v rail,
Sounds plausible. Given that one main use for a USB port is external storage, Toshiba may have made a sensible decision and supply enough power to allow an external USB-powered harddisk.
>...the less software support the better.<
That *would* be true, if the target audience could be bothered.
I personally am afraid that the Rπ will not spark the same interest as its predecessors. In the early days your computer came practically useless unless you yourself typed something up. You couldn't just google for a ready made solution to your needs and find it. The most you could hope for was a magazine with some paper code that you had to type off. That made you look at the actual code and debug your own typo's if, or more likely when, they occurred.
Kids nowadays are much more interested in a running system that does everything 'out-of-the-box'; and the price won't be bait either. They usually have a mobile phone that cost 10 to 20 times as much already.
If children want to learn programming, they can learn on every computer. Even if it is starting on MS-Office's VBA on an old PC snapped up for £30 off ebay.
Don't get me wrong, guys. I love the Rπ idea, it's great! I will also definitely be tinkering around with one.
But as a revival of the PET/ ZX80/C64 era, when you couldn't wait to get home and try that new line that you thought up in school (during French, most likely...)? No, I don't think it will work.
I understannd what you're saying but I have a bit more faith in the youth of today. I tend to ignore all the something for nothing generation headlines and try to look on the optimistic side. Granted, this device won't be for everyone and the type of person you speak of probably won't buy it to start with so hopefully of those who do the majority will be of the have a go spirit.
RPi is Revenge of the DadCoders - the people (well, men mostly) who remember how awesome it was to get a *real computer* and make it do stuff.
But the world has moved on, and 1980s levels of awesum in IT are about as useful as an old Amgia floppy.
Today's smart kids will already be coding for Android and iOS, and the point of teaching the Linux Kernel in schools is - er - well, not obvious, perhaps, except for that tiny, tiny percentage of the school population that can have a nerdgasm over the word 'penguin.'
Yes, you can do fun embedded things with it. But if you want to do fun embedded things, you can already do them with an Arduino, and get direct access to useful analog and digital IO too. (Do you need 1080p video for a central heating controller?)
So that pretty much leaves games. My guess is if RPi makes money at all, it will be as a cheap games machine. And there *might* be some scope for coding there.
But is there more for Android and iOS, which already have stores you can sell your work in?
Don't forget the Beeb, Speccy, etc mags were full of cheap classifieds for cassette games - and they were a huge motivator.
Can RPi offer the same? I'd guess not. And if you have to say 'because it's good for you' to kids, you've already lost the argument.
Every child in the country who might be interested in programming will already own a vastly more capable computer of some sort, whether it's a phone, a tablet, a console or even a desktop/laptop/netbook. Why would they want to do their programming on a completely separate, low powered system?
The Pi would appear to have some promise for embedding in systems, if some sort of interface board ever happens, but the idea that it is a good platform for coding fails at about six different levels if you look at it closely.
It's pretty disappointing that a lot of comments on El Reg about the RPi show that the spirit of doing something for and by yourself - even thinking - is so degraded, while the expectation to get things handed out on plates is strong. The fact that the Pi /can/ be used as a desktop PC is amazing, not that is /should/ be used as such.
Myself, I'm planning to use them as cheap experiment platforms for a rural wireless grid, where low power is crucial (no mains on the top of a mountain) and the ability to add local intelligence to a node should be good. For example, a local node can provide a little web server that has localised info to its won area without needing to use backhaul bandwidth, remote cameras or weather stations can be set up, nodes can be used as points in e-orienteering - all kinds of things are possible. But, and this is what the "I want it on a plate" brigade will miss, we'll have to think of the ideas and make them work all by ourselves, something the Pi makes possible. We may fail, but we'll have fun finding out. And I'd rather fail having spent £30 than £300 or £3000.
Not sure how developing something like the above using something like a Pi as ONE component, albeit a crucial one, squares with commentard 1's assumption of lock-in though. If I've done 95% of the work myself, I doubt I'l lock myself in.
OK thanks, but as I am fully off grid myself, have been for 12 years, and seem to be managing OK, with an x86-based server purring next to me, router, wireless APs, I think I'll probably manage the Pi's requirements. The Pi-on-a-mountain won't need to run a few laptops, fridge, lighting etc either.
"running the Pi off small solar cells"
What I was getting at was that I have some real world experience of what it takes to do this. Low power remains an issue, of course, and the challenge will be getting a stable 5v supply but again, it's going to be fun to find out by doing.
There does seem to be a lot of armchair opinion about off grid power, and if I was a little overly-defensive, that wasn't my intention, just to confirm that it's amazing what you can do for not a lot of cash when you need or want to. The spirit of the Pi.
"The Raspberry PI simply pulls too much power"
Surely that would depend on the size of your solar panel, yes?
That a few wannabe hobbyists failed because their 2mW matchbox sized hobby panel they used at school to make a "solar powered model electric car" couldn't cut it in no way means that the Pi can't be solar powered.
People without one are blinkered about the device, but so are those who have it, and those who think it will impact general education in any way.
I have JUST this second posted off a letter to an employee at Broadcom (who make the main chips for the RPi) who is going to send it on to Taiwan where a device driver developer is going to look at the things inside (a bog-standard, fully-working 2Gb SD card) and try and work out why the RPi throws a fit any time it tries to use it. This is pretty much bog-standard basics and SD card interfaces are hardly difficult now. But they literally had to put out a call for "non-working" cards that passed certain criteria (i.e. it wasn't the card, or anything stupid, that was the cause of the problem) to random people with them in the hope that someone would send them a non-working example card so they could post it around the world for someone to tweak device drivers.
I'm also trying to get an answer to why random USB packets are just thrown out of the window which cuts off a lot of high-speed USB devices mid-transaction. Nobody's even bothering to answer that one yet. That's after the hurdles of things like the default setup totally lacking any iptables modules (on a 2Gb install? Come on... scrap some of the junk and install some of the vital components instead), numerous power problems, etc.
I have projects in mind for the Pi, and I'm an IT Manager at a private school in London. The two, currently, are not merging one iota, though. All my projects are personal embedded things as mentioned because I can just imagine the chaos of getting 20+ kids up and running with these things, even if they're cased and powered and SD-card'd properly. Hell, I'm scared to touch it because it's so damn fragile and numerous people have already broken off capacitors (casing will solve some of it but you think kids will be gentle when putting in an SD card or headphone plug? Their big education push is basically to say you can run Scratch on it. Slowly. Under unaccelerated X-Windows. Or you could just run it at five times the speed on your ICT Suite that the government insists you have to have anyway and has done for, what 10-15 years?
Sure, it fills niches but the niche it does not fill is the one it's plugged as filling - education. There's no documentation, few drivers (mostly closed-source), the entire Wiki section for lesson plans, etc. is empty, the demos consist of running the same basic programs as everywhere else (Scratch, Midori, Python, etc.) and there's no sign of exactly what you're supposed to do with it if you're NOT an IT and electronics expert (hell, I can make a circuit that talks I2C with it, but I doubt many others here could and the interface boards that exist and could be made commercial will cost as-much-again as the RPi and you'll have to program that damn things yourself).
The promise was this would be ready for schools in September. Schools would generally order in June/July (or even earlier) for September. As it is, general ordering is still closed. The "prototypes" (because that's what they are) that are in the hands of people like me are going to end up in personal projects, refunds, replacements and shuffling back and forth for several months yet. And in the end, it's NOT a PC, as advertised - far from it. It's an embedded board, no different from the end-users perspective to a STAMP or PIC or Arduino starter kit (without the kit!).
It's going to take AT LEAST a year of constant, vigilant work to get the documentation to the point where even a good IT teacher would be happy to risk more than one lesson on it. Like Intel QX3's and lots of other "fads" in education, at best it will end up in a cupboard somewhere after a year and never be touched again. At worst, there's going to be a HUGE call for refunds, repairs, replacements and, most importantly, resources. And that's the big, expensive, hard bit that you can't just lob an IT guy at if you want teachers to tie it into their lessons and curricula.
The RPi is nothing special. The GP2X was ARM-based, dual-core, integrated OpenGL ES accelerated, touchscreen, ran off two AA's for many hours, had a built-in LCD, ran Linux, had full drivers, stored on an SD-card, was "unbrickable", very sturdy, handheld and used for education in Korean schools. And that was YEARS ago and has had at least two successors in the meantime. The RPi is literally sending us backwards in those terms, not forward.
Personally, I see mine ended up where any other embedded board would end up. Doing one job all day long because it's simple to do and low power and convenient to have TCP access to the device doing it.
Don't diss the PI too soon. Yes, it is early days, they are in short supply, and the add-on electronics boards need time to develop. But this will come.
Whilst I wait for my PI, I bought an arduino to a science project (build a radio telescope with data logger all driven from six AA batteries ... watch this space) and got my breadboard and components out. Son (19, waaaaayyyy too cool for science and stuff) was fascinated and wanted to start building circuits straight away. So it can capture imagination.
Show a young person that you CAN do something, engage their imagination, and they MIGHT take up the mantle and run with it. It is way past the time when we needed a generation who can and want to build things.
Oh, and I quite like the reference to The Diamond Age. Great read.
"The Arduino is fit for purpose".
Yes, however it's fit for a different purpose, since that's a much more bare metal device - you can't run a full OS such as linux on there. Not saying that's bad - it's for a different market.
"highly tolerant and fully documented"
Early days with the Pi. Hopefully both of these will come - though I don't think it's particularly intolerant at the moment.
"There's even clones."
There's certainly not likely to be any clones using the same SoC, but a bit of competition in the marketplace wouldn't go amiss...
You can make the memory pressures a little more bearable if you only reserve the minimum possible amount for the GPU and apply some of the optimizations as explained here:
Using a decent SD card (if there is such a thing) for swap also helps to make the experience with 256MB of RAM less painful. You can see the relative performance of SD cards here (Note: write IOPS are the relevant figure, not the MB/s numbers which are essentially meaningless for normal OS use.):
You can also take RedSleeve Linux for a spin on it if you prefer something of the RedHat Flavour but not as bleeding edge as Fedora:
The Raspberry Pi is far better suited to running apps like XBMC. This is more or less how most set top boxes function today - an embedded Linux supporting a single foreground app. It was fairly predictable how lacklustre desktop performance would be, at least to anyone who has programmed set top boxes or used a comparable memory constrained environment such as Linux on the PS3.
I don't think the box would be suitable for a desktop unless someone ports Android, or Meego, or Wayland appears and cuts out all the X11 bloat. I think Android or Google TV would be particularly attractive if someone could get it going.
An Android port is in progress (apparently) but the problem is the RAM. Officially, you need more RAM than the Pi has to run Android (and sacrificing GPU RAM for system RAM is a bit of a lose-lose situation with something like Android) and the only ones that will reliably work are much older versions.
That said, the problem with that won't be getting Android running. It will be that the device is not an "Android" device officially, so that would mean that the Google Store is not able to be used (it can be loaded on any Android device that you "own or control", but the definition of that would probably exclude "hey, we slapped Android on a random ARM chip"). And there's no help from Google here yet, so it's unlikely to be updated, or officially endorsed, which means no Play Store (and thus, quite a lot of missing apps and point of using Android). Android is also "Java-based" in a way, and the Java performance of the RPi sucks. There's no help even in ARM's Java-acceleration instructions, either. And Oracle can barely get a simplified JavaFX running on it at the moment.
No doubt Android could be hacked onto the device but it will never run 1% as nicely as the cheapest, cheapy Android tablet out there (you can find them for £50 now, with touchscreen and wifi) which can run the Play Store and use the Android logo legitimately.
I'm not so sure than any media-centre use is any good for the RPi at all, to be honest. Everyone has bright ideas about doing it but even something as simple as playing a video can lead to a world of slideshow framerates and interrupted sound according to forums posts that I've read. X-Windows is still unaccelerated but even framebuffer access is pretty atrocious for playback of random formats. You'd be infinitely better off with just a basic Android device for that purpose, to be honest.
The RPi would be a good Arduino replacement, once they fix the problems and scale production. That's about it. Anything video-heavy, from desktops to media centres, you're going to be disappointed with.
Our company (back when I worked on STBs) had Android running on a 256MB MIPS SOC complete with mouse and keyboard support. I think you'd probably get the 2.x branch working relatively simply. It doesn't matter if Google support it or not since the community would maintain their own clone of the source and release their own binaries.
Nor is it hard to get the Google apps and once you get them you gain access to the marketplace and all the other apps. Any apps with native code (i.e. most games) are very likely to be filtered out though.
As to why do it at all, I think it would be useful for a couple of reasons. First because Android is rapidly becoming ubiquitous and therefore there are a lot of useful apps and widgets. Second Android is more lightweight than a desktop OS and is therefore better suited to the hardware.
I also mentioned Meego (or Tizen) being other alternatives. Basically something that doesn't overburden the hardware but makes it graphically useful for something.
The Pi can get, at most, 244Mb. That's if you use a basic, unaccelerated framebuffer. Other compromises are 128 and 192Mb that allocate more RAM to the GPU. Storage isn't a problem (SD cards). CPU speed isn't a problem (necessarily - of course it won't fly). Drivers might well be a problem but not unsolveable (binaries do at least exist for everything, even though they still need a lot of tweaking). The GPU is currently unaccelerated.
And before you know it, as discussed on the forums, you're looking at 2.0-and-before versions of Android at best. Maybe even pre-Eclair (i.e. pre-Bluetooth support in Android), let alone Gingerbread. I'm not even sure how much software supports that far back any more.
How many apps on the appstore would run? Nowhere near all. How many would run smoothly? Even fewer. How many would continue to run in the future? Fewer still. How many would be able to be run simultaneously or without running into memory problems at some uncertain point? Fewer still. How many of those would be useful to people on an RPi beyond just loading them up and looking at them? Fewer still.
Though I imagine we'll see it (just as we've "seen" Windows 8 on RPi via remote desktops, and no doubt some sadist will find a way to port some ancient Windows apps using Wine's ARM libraries), it's not going to be useful beyond one of those "Windows 95 running on an Android phone!" type demonstrations.
"No doubt Android could be hacked onto the device but it will never run 1% as nicely as the cheapest, cheapy Android tablet out there (you can find them for £50 now, with touchscreen and wifi) which can run the Play Store and use the Android logo legitimately."
I recently bought a generic 7" Android tablet from aliexpress.com for about $55 including shipping, to be used as a development platform. I was pleasantly surprised when I ripped the case off it and discovered that its only internal storage was a 4GB micro-SD card, with the whole system stored on it. I rooted it by mounting the card on my Linux laptop and copying in the necessary files. It has ethernet, wifi and USB.
On forums, people moan about how these things suck compared to an iPad, but to me, the possibilities are exciting. I'm planning on making it into a portable touchscreen-controlled media player, by attaching computer speakers. The sound quality from the headphone jack is good enough.
The Raspberry Pi sounded good to me at first, but the price ended up being much higher than they originally advertised, making it comparable to these cheap Android tablets. So it mostly became a choice between HDMI and a touchscreen, and the applications I was imagining favoured a touchscreen.
Sparkfun will sell you an Arduino ethernet shield for $45, a wifi shield for $90 and a 3" touchscreen for $85. If you're a thrifty geek, it's hard to beat repurposed consumer gear.
The price has dropped to $51 so the original product listing was deleted, and when I tried to go back to the same link, it redirected me to a different product. So I suggest going to the seller page:
Then search for some part of the product description which is "Dropship Free shipping 7 " Epad Android 2.3 RAM 256M ROM 4GB Camera Flash 10.1 WiFi 7 inch Tablet PC".
There are hidden screws under the corners of the self-adhesive screen cover.
The education line is such nonsense it has to be some sort of scam. Perhaps to get charity status or some such. There is NO way the RPi will do what the BBC did. Where are the teachers to teach? Most dont have a clue running windows, let alone some Linux programming witch craft.
Yeah, its a great little computer, and yeah, I have many ideas it would be really useful for, Im sure all us geeks do, but education in schools? No, dont see it.
And the BBC provides in-class teaching materials by the shedload, not to mention there were magazines galore and it was the start of the home computing revolution so a lot of people had one at home and, because there were only a handful of machines, they were being taught it by their own uses at home too. Hell, there were entire programs on TV to teach teachers how to teach students on using the BBC Micro.
The RPi currently has zero focus on education, despite what you might think. When you can show me a set of lesson plans, or tying the use of the device into the relevant curricula, then you can say that the teachers will have something to start from. That doesn't just mean "You can run Scratch, here's the manual" but actually giving the teachers something to go on and provide for their use and work how out they can use the device.
The best teachers might be able to teach themselves, formulate lessons from it and teach a good lesson or two. But the best teachers handle themselves. You have to think of the THOUSANDS of teachers who have no clue even though they are teaching ICT (I've seen A-Level programming projects written using Excel macros - bad macros at that with 50-deep nested IF statements - passing with 'A' because the teacher was baffled by how much more advanced that work was than they could understand) and they need hand-holding.
If nothing else, the time element and the cost of knocking up even a dozen lessons on the RPi for a single age-group in a single school could easily make it impractical compared to, say, just buying an ICT Suite and doing things properly. Except most schools already have an ICT Suite to satisfy the legally-required computer-pupil ratios, and that can run Scratch just fine too. So why bother to touch the RPi who obviously have no interest at the moment in helping teachers teach it?
I work IT in schools. They need to produce, en masse, an awful lot of educational content that can touch all sides of the teaching curriculum. Currently, the Wiki has exactly 0 of anything that any teacher would consider "useful" when teaching them. So it's only the geek-teachers who could quite literally teach assembler from memory on a handful of PIC chips anyway, if pressed, who will touch them. And that seems to be exactly who they are roping in to do demos and press releases and STILL not producing anything in the way of teaching resources.
It's like being an accountant, and someone tells you that you can have a whole new way of accounting for your business with 50+ employees, 1000+ clients, £1m+ budgets, liable to the taxpayer, etc. And then all you do is shove a datasheet into their face and say "it's all there... somewhere".
Your comment "The RPi currently has zero focus on education" implies that the Foundation isn't doing anything to promote/help along the educational side. That is not the case. There is a lot of work being done in the background on documentation, teaching literature etc, by professionals in the subjects. Unfortunately, it's not particularly newsworthy.
Please justify that.
With a RISC OS port it would offer pretty much the same as a BBC A3000. (BBC basic programs would still run, though most assember wouldn't)
If you started at the command line, you would have a similar environment to the earlier BBCs.
You then have the advantage that you can swap the SD card for one with a different OS, which may lack some of the advantages of RISC OS, but can offer things that it can't.
The interesting projects seem to be ones that are more hardware based - so writing software to control things like motors, sensors etc where the controlling computer sits on the device giving it some autonomy.
The Pi is small enough and cheap enough that you can add it to lots of wheeled devices then program the devices to be dodgems, or catch, or football... and see what happens.
First I want to make it clear that the Pi is awesome and the guys behind it should be congratulated for their efforts. I'll be getting one just for the fun of geeking out with it.
That said, I'm not sure about this whole "aimed at education" angle.
My experience with educators in the technology area is that the teachers are clueless, and they essentially just tutor students in how to use MS Office. Badly.
Maybe they are expecting some third party to whack the pi in a case, provide all the requisite accessories and then sell that as a package to schools?
If that is so then you can expect your cost advantage to disappear in labour and markup plus the cost of a monitor, mouse, keyboard, PSU etc.
Or did I hear somewhere that they will be selling a version of the Pi direct with a case included?
For the same price? I somehow doubt it. $50 would probably be more like it.
Anyway, when you can buy craptastic corporate style PCs for a few hundred bucks these days with Windows bundled "for free", allowing teachers to remain firmly entrenched in their Microsoft comfort zone and continue on teaching how to format a paragraph in MS Word and call that "teaching IT" what incentive is there for them to move out of their comfort zone for the sake of a relatively few bucks saved?
When you then take into account that your average school will struggle on with the crappiest fleet of PC's you can imagine, often exceeding a decade of use per PC, it is hard to see a barebone board like a pi lasting more than a few weeks under the ham-fisted ministrations of your average school kid and their bumbling teachers.
If you are having to replace Pi's at a rapid rate due to theft and/or breakage compared to a $500 PC used over 10 years ($50 a year) then the apparent savings seem hardly worth it.
Perhaps tertiary education would have some interest? But then let's be honest, who attends a university these days who doesn't take a full computer along for the ride anyway?
Can a notebook PC not be used for "learning to program" these days?
Even if you insist on running Windoze on your notebook but you are required to learn GCC under Linux, it is trivially easy to run virtualbox on your notebook to get access to any Linux distribution that takes your fancy.
Or dual boot even.
I just don't get it.
Flames or enlightenment accepted.
IT,? because like Jen on the IT Crowd, that is about how close your average teacher can get to understanding proper IT.
I have had my RasPi for about three weeks now and there are good points and bad, but overall its bad points are nothing to do with the board itself, but the people that just "don’t get it"...
I cant wait for the restrictions of one per order to be dropped because I can make use of at least 6 of them.
first of all, media players. OpenELEC which is still in the early days of development is an awesome media player. it is based on XBMC, but instead of having a Linux base system installed, OpenELEC still has Linux as its core, but only loads what it needs to get the media player up and running saving even more of the valuable resources. control of it is simple with a excellent xbmc remote control app for android or iPhone. Its still in a very early stage of development, and to date there is no official binary release, you need to compile it from the source code. Its not that hard to do, but it does take a while to compile (or look in the right place and you will find a link or two to the latest builds), but dont bother trying to compile it on the RasPi, I tried it once and it took 4 days..... it works very well in tandem with my serviio media server.
I needed to do some essential maintenance on my email server last weekend so it had to go offline for a few hours. It took me about 30 min to configure the Pi to handle email for me. My mail server does not handle huge amounts of mail, but coped very well with mail across 5 domain names with about 30 to 4 email addresses on each... so now I have a email server set up, that all I have to do is slot in the sd card and power it up and hey presto, backup email server running. I now have SD cards for backups for web and mysql servers ready and waiting for if i need them.
admittedly, the GUI is not that fantastic a experience at the moment due to the lack of hardware acceleration but I am sure this will be fixed soon. Working from the command line is fine. I really dont bother using it much direct from its own display. I connect to it via ssh,or VNC.
Yes, you can learn to program on your windows machine, but if you screw stuff up on the pi, just re flash the SD card and your away again. Also, for electronics projects, If you screw something up with your connection to the GPIO, at worst your gonna break a $35 computer, not your $700 laptop..
and finally, we have got into the habit of just running software thats available, why bother learning to code? If the RasPi, can encourage people to get back to productive coding, with very limited resources, when it comes time to put something together with more resources available, you will produce something much better than the bolted together bits and pieces of script that people try to pass off as coding these days.
> There are people working on it already.
And successful at it?
I mean I can just go and have a look at the code repository they're working on right now, can't I? Oh noes, I can't, since there's n o t h i n g.
You know how long it takes to write a proper, stable, accelerated X.org driver? Ask ATI...
But knowing the stone walls they're about to run into it's entertaining to watch.
Don't want much do you? The board has been out about three weeks now. But already there's "Early days still, but blits and fills are now jumping along at 2GB/s..." posted on the 18th.
No, I haven't written an X.org driver, and I assume you haven't either - but it sounds like some of those involved have worked on them, and while it's clearly not going to be ready next week it's not going to take 5 years either. But carry on pissing on the parade if you must.
Well, since you appear to know something about it, perhaps you would like to offer some assistance and advice. It is a community effort after all.
Or are you the sort of person who just sits on the sidelines and laughs at people efforts and claims to be able to do it so much better? A fan of BGT perhaps?
Or perhaps, just perhaps it's a combination of the two? Like, the stuff that needs to be done by the Foundation is being done by them, whilst the stuff that can be done by the community is being done by them?
Just fyi, there are, I think, 8 official members of the Foundation. None are paid. It's an entirely volunteer effort. Half of those are not technical. 8 people means it's an absolute necessity to get external support, and so far, the response has been pretty good.
If kids until now haven't learned to program with all the free dev tools available on any PC, this won't do it either. And if you're scared of damaging something, reach into the PC and yank the hard disk connector, and boot into a Linux distro with a USB stick.
Its appeal is that it's a cheap-as-chips toy to play with hardware experiments, and for people who think it's a great media player despite purpose built alternatives on Amazon for the same money (or even less). OK. so this has network connectivity too, whereas the Amazon ones are for standalone memory sticks only.
And, yes, it may just find its way into kids bedrooms if their parents genuinely can't afford a cheap lappy, or don't trust their young kids with anything more valuable than something at this 'disposable' price point.
But don't kid yourselves about the youngsters learning to program with this - unless there's very well written set of documentation, structured training program, the will to use it (and not play around instead with all the distractions we never had in the 80s), and a good large and friendly support community forum.
The geeky kids (not an insult, I consider myself a geek) will find their way into programming on their own just like we always have.
What we need are some switches for the GPIO connections which can do things in the real world and some python/ruby modules to control it.
The joy of something like this is that it can provide a comms stack which is easy to get into. So you could get it to be a media extender just for audio if you wanted. That would be great if you can't get a bluetooth connection from your server to your stereo. Your phone could do the job, but that tends to wonder off at inconvenient times. A cheap permanent fixture would be better. It won't turn non-geeks to geeks, but it might turn those heading down the dark path of VBA back towards the light side and lead to lots of cool gadgets. A cheap baby monitor perhaps, which could be re-purposed later. Say hello to Mr Radio Controlled Battleship! Or a cheap way to feed the cat when you're away which doesn't involve a cisco switch.
Hopefully it will also prod the more commercial gadget makers into more innovation to compete.
Unless we ask the right question: Why don't kids learn to program these days? We won't be able to draw the right conclusions.
Is it because computers aren't cheap enough to risk programming? (though in fact netbooks are effectively 3x cheaper than ZX Spectrums were in our day and modern computers provide far more protected programming environments than in the 80s).
Or is because they're 10,000 times more complex today? Based on my experience of programming machines from the 80s to today, I'd have to conclude the latter. And once you do, you have to conclude that the Raspberry PI (nice though it is), can't be any better for learning to program than anything we currently have.
In which case, what we really need is computers simple enough to understand; machines like FIGnition ( www.fignition.co.uk). It's not about going back to the past any more than teaching children to read using Phonics is regressive compared with learning to read using War And Peace or Harry Potter.
-cheers from julz
> Or is because they're 10,000 times more complex today?
I agree with that, but I would say that is the reason the Pi is suitable, the opposite of your conclusion.
The Pi is an ARM based device, (ignoring the GPU, which is fair enough given the lack of documentation :) ) it is not ridiculously more complex than a 1989 BBC A3000. (Just much faster and with much more RAM).
If you compare a 286 running DOS (and perhaps GEM) from a similar era to a current windows 7 PC, then your comparison is good.
I see no reason the Pi can't easily provide as good an environment as any of the BBC micro range.
Thanks for your reply.
> > The Pi is an ARM based device, (ignoring the GPU, which is fair enough given the lack of
> > documentation :) ) it is not ridiculously more complex than a 1989 BBC A3000
It's true that ARM assembler on a R-PI isn't that different from ARM assembler on an A3000, but the problem is with the overall complexity of systems and its the overall complexity that impacts on both how programming is learned and how developers develop for the systems. So, the 10,000 figure isn't hyperbole, but the literal growth in complexity between the early 80s and now (e.g. 256Mb / 32Kb = 8192; 200million lines of code of Linux / 10K lines in the BBC's firmware => 20000 etc ) Let's start from the bottom to the top.
At the bottom we have the CPU. Modern CPUs are orders of magnitude complex than in the 80s and R-PI's CPU is actually a microcontroller in itself. So, just considering the effect of memory management and cache means that in a modern system kids can't just poke around the computer, you have to use APIs just to be able to get access to memory (if it's allowed) and reading and writing to it involves more complex protocols (i.e. because of cache coherency, write-back policies).
Booting a modern CPU is more complex than an early 80s one: they don't just start running from address 0; you find you have to consider the boot-up reason, switch into the appropriate CPU mode; you find you have to explicitly enable RAM (enable chip selects and memory areas, take it out of self-refresh perhaps, allocate memory regions for the MMU). Thus rewriting say the ROM to support a fundamentally different OS to Linux is orders of magnitude more complex than for an early 80s computer.
Moving to the on-chip peripherals. The level of integration means that the R-PI's chipset is orders of magnitude harder to deal with than, say, an Atmel AVR, which in turn is several times more complex than the peripherals on early 80s computers. They are 1000s of pages long just for the main CPU itself (including peripherals) - so much more complex that the designers of the R-PI must only know a fraction of the contents. I used to be an Symbian OS baseporter, I've seen these things, no-one knows these chips to the degree hundreds of thousands of people understand the innards of a BBC or ZX Spectrum. By comparison I've read the docs for the chipset of the Arm250 (=> A3020), and although more complex than an early 80s micro, are pretty much fully graspable with some effort IMO.
All this has a knock-on effect further up the chain. Supporting a chipset with a billion transistors requires complex APIs and frameworks to be defined which itself impacts on the complexity and design of the Operating System itself. But of course, for a large system we want to run everything it theoretically can run, so the complexity is compounded by multiple frameworks, libraries, tools, environments, drivers, front-ends and at this stage what happens is that because the developers who contribute to these systems only understand a tiny fraction of the systems (and can't afford to spend the time to learn the rest) there's continual re-invention and duplication. Then the people who bundle the OS distribution similarly can't spend the time to work out what's truly needed they have to play safe and include the lot.
Finally, on top of all this we want kids to learn to program again. However, the development environments we've constructed to manage our 10,000x more complex systems are themselves formidable beasts compared with the 10 PRINT "I AM FAB!" environments on early 80s computers. Ironically, these environments were better than, say Python's interactive mode (so much for 30 years of progress). So we're drawn to recreating noddy programming environments that don't *really* teach programming as well as, say, a 1K ZX81 can (that is, I strongly suspect one can learn more about programming from a 1K ZX81 than by downloading and exploring for example, Scratch). It's like trying to teach kids to read and write using War And Peace and then deciding we'll just start with the easy words in it: and, of, the, it etc.
It's this baggage at all levels that makes it hard for an R-PI to provide an educational programming environment as effective as an original BBC Micro or ZX Spectrum; although of course you can run an emulator for these machines on it (which in a sense is to validate the earlier machine); yet even that wouldn't be terribly good, kids know the emulated machine is a fake, a form of magic and the deception would impact their learning.
All this is to say, the complexity has an impact in every way when it comes to development. Which brings me back to the original point: if it's true that kids don't program because today's computers are 10,000 times more complex than their forebears then we really need to give them simple computers, not small, cheap, complex ones. The difficult thing is accepting it, because powerful systems are so desirable we kid outselves into thinking they're better in every way. To finish with, a quote from Richard Altwasser (BBC News 17776666):
"What is important is not the technical speed of the device but the speed with which a user can get their computer out of a box and type in their first program." At this level, a BBC micro, ZX Spectrum and FIGnition succeed where R-PI would struggle.
-cheers from julz
But this is mainly down to the environment.
I see your argument as valid for Pi with Linux, but most of it wouldn't apply to the Pi if it were running RISC OS, with BBC BASIC on hand, as the A3000 did.
All the additional kit would be ignored, and you'd end up with a system that is very similar.
Like many comments before me, I don't see this replacing the systems already in schools as it doesn't offer anything that they don't already, at least not when your view is tilted towards programming.
I've received my invite from RS to purchase one; I really WANT to need this, but I'm struggling to find an excuse. Anything I may want to do on it (program, view videos, whatever) is already well served by my existing PC, my existing media players, etc.
When RISC OS is running on it, there are two chances. ArcEm which would emulate an old Archimedes (Also could be done on Linux.) or a port/patch to run on the newer processor.
Some old Archimedes games have been ported to run on newer ARM processors
Why has a review of an interesting little computer generated such a storm of ill-tempered comments? Calm down, ladies.
On a different subject £29, though cheap, seems unreasonable. I'm used to the "pounds for dollars" pricing strategy (though not reconciled to it). But £29 for $25 is taking the piss. Can I sell my dollars to the Raspberry people? At £1.16 each I can supply quite a lot.
I'm now SURE why we need the Raspberry-Pi...
People are moaning and complaining about how the device is "limited" and "can't run things like X11 properly"
Guess what that's a GOOD THING!!!
What would these people have been like 20 years ago...
"I've got a great Space Sim fighting game.. but i can't fit all the names i need for all the planets in the 86 bytes of room left... Ah well sod it! i'll make another frogger clone..."
The limited resources actually is a GOOD Thing it makes coders think about how their programs work. forces them to be creative, the programs are smaller and quicker. The end result you have programmers who actually know how to program.
Chill out guys - some people like to hack about on stuff, others dont. Thats the point of the Pi.
Its not a finished product, its somethign to get your brain ticking..
Having a dedicated devide for learning to code will maybe stop people checking FaceBook/Twitter etc every 5mins and allow them to get on with writing some cool code.
For me, whats missing for shools, is the flashing lights, bottons, buzzers etc. no doubt these will all come with time, and i think thats when we'll start to capture the kid's imaginations and make them want to code....
As per the review. How much of the review actually concentrated on what the Pi is really about?
When is someone going to issue out a pure BASIC or other language app that literally just boots into the command prompt. Nothing but a ring-bound paper manual and a blinking cursor.
That's why so many took to programming on the old 8bit machines because you switched it on and there was nothing there to do other than start coding on it.
How many of the 8bit guys would have got into coding if they could have just plugged in their Spectrum/BBC B and watched porn or played Quake on it all day?
I know. Not very I guess. Spoilt for choice nowadays really.
Back in the early 80's the mystery of what computers could do was bolstered by our wondering imagination. I used to watch War Games as a kid and thought how exciting hooking up to other computers could be (Dad's telephone bill permitting). That's all gone now.
I bet 90% of these devices will be thrown in a drawer by the end of the summer. A bit of willy waving from the guy in the office that has to have all the new trendy gadgets (you know the one) and then you'll never hear about it again.
When I see my cousin who works in recruitment say on Facebook that he wants a Raspberry Pi then I know that the bandwagon has truly pulled into town.
Most Pi fanbois I've met fall into one of two camps: "small. I want one. What's Linux?" and "I learnt to code in the 80s, so should everyone else".
The only innovative thing they've done is recognised a problem in ICT teaching and then come up with just another ARM board that's cheaper than the competition. Has anyone actually shown it to a child? Chances are they won't give a f*ck for it.
I know very little about ICT education but I'm pretty sure it's not a lack of equipment that is stunting our future ability to compete on the global IT market. How will a smallish PC help this? Once fully connected up (after DDing an SD image), all you're left with is a Bash shell? Whoopy do.
So is it that kids need something "unbrickable"? There are already many good online programming tools. Then when they out grown them, use VMWare Player to run Linux or Windows hosts, setup with Eclipse + PyDev. If they break it, get a new image.
Because it's cheap? You'll need a proper PC anyway, at least just to download and write images.
Because kids wants ownership? Then code for Android. What could be better than writing software that you upload to your phone, carry it around with you and actually show people it on the move?
Because they need to know the basics? Arduino is very mature, well documented and cheap. The old traffic light exercise with LEDs and push switches can easily be coded in less than 100 lines of straight forward code.
I can only hope that the bandwagon disappears soon before the Pi fanbois pressure schools into buying another piece of unwanted and dated IT equipment.
You might have a point about your cousin, but you can blame the BBC coverage for that one.
I think the point isn't lack of equipment in ICT, it's the freedom to do what the hell you want with it . This isn't just being able to solder stuff onto the pins, it's the ability to install software and hack about, which isn't on option for most home computers or any school computers.
While the Arduino is fun it's always going to be hardware oriented - great if you want to blink lights, but want to make a game of pacman starring your friends as the ghosts and you need something like this.
Not every kid is going to be enthused, but then I didn't give a shit about sewing classes either. Whatever. All I know is my career is a direct consequence of my dad buying a rubbish computer with no software other than a decent BASIC interpreter. I can't see why todays 12 year old is so jaded that they wont get the same enjoyment from it that I did.
I don't see the point, or actually I do see some point but not nearly enough to justify the hype.
Basically you are buying a set top media player box without the box or power supply.
The stupid name probably has as much to do with it as anything. If Broadcom had offered exactly the same thing for $25 called a BCM2835 evaluation board no one would have heard of it.
I'm reminded of the manuals of, say, 15 years ago, compared to the flimsy pamphlets of today. I have just had the fun of trying to figure out the tablet computer I bought--it looks like being a decent media player at least--and so much is taken for granted. I have often had to find my own way with computers, rather than taking the Office 2010 route to learning, and I don't find Linux, Windows, or MacOS, to be barriers, but that knowledge, and the quantity of helpful information on the Web, suddenly seems irrelevant for a tablet.
I rather think the teachers will be as lost as I was, and I wonder if their careers have prepared them for the very different world that the Raspberry Pi opens up. Programming? But doesn't that mean you have to teach the kids to think?
Good manuals are necessary, but they aren't sufficient. That explosion of 30 years ago came about because of people outside the schools, and that multitude of magazines. Yes, the schools were involved, but they were not the sole source of knowledge.
And, looked at in that light, Linux may be the only choice. Look at the magazines: where else can you go to find people having fun with the nitty-gritty oif programming?
I think the key point with this thing is the fact that it is perfectly breakable. Then fixable...
Yes schools have lots of computers in them, old and new, used and un-used. But typically they are locked down. No admin rights, no nothing, because the kids will break them and the teachers dont have time to fix them.
Where as this thing can be used to do all the 'other stuff' thats not just about programming.
All the things even us geeky types would rather have an isolated machine to try it out on.
I think our IT tech would've had a heart attack if you'd asked him to install and support Python across the hundred-and-however many PCs were at our comp. Even if you'd somehow cajoled the LEA into doing it, you still wouldn't get the unbrickability factor, or the gpio factor, or the "this is cheaper than your IT textbook - take it home and play with it!" factor.
This is the real problem with ICT in schools - people like this AC. Supporting Python on Windows is no different than supporting python on the Pi.
This makes me think that the educationalists going ape-shit over the Pi probably think that Pi devices will not require maintenance, support, software upgrades etc.
There is nothing you can do on a Pi that you cannot do on any vintage of a RM PC, teachers and technicians simply haven't wanted to do it. I don't understand why having special devices will get around this.
A machine that can be fixed or repurposed simply by swapping out the SD card is no comparison to a desktop bought for other purposes with python stuck on top. The Pi is as easy to maintain as easy gets; it's stateless. Plus, again, "a desktop with pyfon stuck on top innit" is nowhere near comparable to the capabilities of the Pi. You might be able to do some programming on your run of the mill desktop, but there's nothing you can't do on a Pi, even when working within the restrictive rules of an LEA's IT department.
>it's not going to be easy to box-up one of these.
Making a box for the Pi seems seems to be the perfect class Design and Technology project for pupils of a certain age... whether it be made from wood, acrylic, or metal. Or maybe showing pupils how the school's new 3D printer works (STLs and 3D modelling). Or how use Web-manufacturing (upload DWGs to a site like Ponoko and get some laser cut parts back in the post.
What a bunch of whining b@st@rds! Some posters here need to chill out some getting so sweaty over a £30 device.
Have some faith that this is going to be something special, no-one seems to have mentioned developing nations like Africa where a very cheap Linux system would go down very well.
And have any of you read the stories on the official RasPi site? Perhaps this post might change our mind about the Pis educational value, and kids today>
I thought I'd already posted this but it seems to have disappeared.
The RPi could be a great little networked media client, but is hampered by no accelerated MPEG2 (as used by physical DVDs and ISOs, and most DVB around the world) and MPEG4 (your old Xvid/Dixv media files), thereby making it useless to anyone who doesn't only care about H.264 and isn't bothered by not being able to view live DVB TV.
That eliminates a lot of media related applications.
The Foundation needs to negotiate an (extra cost) option for these codecs, and make them available. Otherwise you're better off spending more and getting a board which can actually do the most common media types that media players need to do, and not just H.264.
It's extremely disappointing and frustrating that the hardware can do the job, but the drivers are not provided (even as an additional cost option).
Not everyone wants to watch "media" all the time!!
The idea of the RasPi is not to sit on your arse watching TV, but to get kids using their brains learning to code.. with this in mind - why does it matter what video codec its ships with??
if you want to watch media, just go buy a media streamer from eBay for probably less money.. the Pi is not for TV addicts! </rant>
With all due respect, the point is flying over your head.
Firstly, as the Foundation has said itself, RPi is initially targeted at the developer community. Schools follow later. Hence the distribution channels, the availability of sources and the early port of XBMC to it.
If RPi wasn't intended to support media playback (amongst other possibilities), they wouldn't have chosen an SOC with multi-format hardware accelerated video decoding, and provided drivers supporting the H.264 part of that.
The point, then, is simply that they could (should!) have also shipped it with drivers similarly supporting the GPUs inherent ability to hardware decode MPEG2, MPEG4 and possibly WEBM too, perhaps at extra cost or via some sort of add-on or feature unlocking pack.
Not doing so renders the hardware crippled in one important application area, that of media playback. Which is an obvious one, as noted by most every professional review, and obviously by the XBMC community (hence XBMC for RPi).
There hasn't been a single adult, intelligent or meaningful response to this observation.
Computers that run off solar power or batteries in areas with unstable power? My Pi runs of a battery trickle charged by solar in my shed and it works great. At the very least having a Pi means more computers can be run simultaneously due to much reduced power requirements.
And to the other poster (the coward no less) stop calling it a Linux media player, they are computers. Why not go back to licking your own balls under your bloody bridge you troll?
I can see here why Britain is in such a rut with all these people who put down anything that is unusual or might be successful. Even getting to this point here should be applauded.
I'm not a teacher, so am not qualified to predict whether the RPi will take off in the education arena as the Foundation hopes. All I know, is that so far - despite various niggles - I'm pretty impressed by this little machine, and to have a pretty functional Linux device for £30 is something I could only have dreamed of even a year or two ago.
Yes, the Pi is very choosy on the power front (I found the Nokia AC-10X seems to supply enough juice to keep it happy), but it runs Arch Linux ARM quite snappily (esp. at the console), and I've found it interacts with a network with no problems I can notice. I can SSH into the Pi as if it were any other Linux box; I've transplanted many of my Arch/x86-running netbook's settings (.conkyrc, .screenrc, etc.) to the Pi; and best of all, the Pi can auto-mount the NFS shares on our Synology NAS box, so it has 2TB of storage to play with (at home, at least).
Geeky? Yes, so sue me - I'm already having fun with the Pi, and I haven't even done very much useful with it yet (though I'll get there). Are there more capable competitors? I don't doubt it - if the RasPi and its fellows help convince computer-manufacturers that ARM machines are coming of age, I say bring them all on.
Will the Pi get British schoolkids coding again? Who knows, but as far as I'm concerned: I'm just glad that someone is giving it a go...
And to the other poster (the coward no less) stop calling it a Linux media player, they are computers. Why not go back to licking your own balls under your bloody bridge you troll?
I can see here why Britain is in such a rut with all these people who put down anything that is unusual or might be successful. Even getting to this point here should be applauded.
Very grown up of you.
Media player is one obvious application of this computer (else why bother with H.264 support?). The hardware can do it., but the most commonly required drivers haven't been made available. It's reasonable to ask for them, at an additional cost. If that area isn't of interest to you, then simply mind your own business.
Hope that helps.
The first image is an alpha board, as the caption says; the second picture is the pre-production sample, also as captioned. The second picture looks as near as dammit to the production board pictures I've seen. I get mine next week, so then I will know just how close, but who cares anyway?
Amongst all the guff (interesting and otherwise) I haven't seen anything that states WHY schoolkids need to learn to program.
O.K. - you grew up with a BBC Micro and it never did you any harm - well, look, you're posting on here aren't you.
But kids today need to learn to use consumer electronic devices which have already been programmed - so learning Office Automation suites and web browsers will equip them to function in their long term employment.
As more and more resources are available mainly or only online it is vital that all school kids know how to browse the web, fill in forms, write emails.
General literacy would be a great help.
Phones, games consoles, video players - kids don't need training on these; they are the trainers.
Assembler, C, C++, Python?
Why do they need to know this?
I grew up before PCs were invented, and landed in mainframe IT quite by accident when I needed a job after University and took a programming aptitude test. The rest is a rather murky history.
As an ITphile we had computers in the house when our kids grew up - and they played games on the Atari STE and then word processed and played games on the PCs running Win95 and NT4 Workstation.
Good marks in school, them days, if you did your work on a PC.
Copy and paste from various resources produced impressive projects as well.
Neither showed any particular desire to program nor was there any need for them to do this.
Although I can program (after a fashion) I haven't for a few years - I mean, why do I need to?
What problem is it solving for me?
Strangely, one child has sort of followed in my IT footsteps though the other certainly hasn't.
As far as I can tell neither has suffered from lack of opportunity to program at the medium to low level whilst at school.
I learned my programming as an adult, learning a number of different languages and technologies over the years, so you don't have to learn it at school.
You can learn programming at any age, when there is a need.
Reading, writing, managing money, health & hygiene, cooking - these are much more basic survival skills.
Woodwork, metalwork, electricity and plumbing, general DIY; these would not go amiss either.
O.K. - there is a need for people to produce applications for electronic devices but this is going to be market lead, and the vast majority of school children are not going to end up in this area. They are going to end up as users of electronic devices. What is the ratio of Android phone users to Android application developers?
I applaud anything which brings home the message that there are real bits of stuff inside the shiny cases and you can actually make them do stuff yourselves, not just use other peoples apps.
However I see this mainly as a platform for hardware experiments - where you can do something simple and see something interesting as a result,
Robots, control gear, spy cameras, hi-tech stuff you can make work yourself.
Printing "Hello world" on a screen (instead of typing it in your word processor) seems very lame. Far less interesting than posting something on Facebook, Twitter, whatever.
So I say again - why do they need to learn to program?
[Probably more productive to teach them Mandarin.]
This post has been deleted by its author
Biting the hand that feeds IT © 1998–2020