Eben Upton's overwhelming emotion at having co-created a $35 Linux computer that sold in the hundreds of thousands last year is surprise.
The 34-year-old chip architect is genuinely taken aback that demand for the Raspberry Pi proved to be orders of magnitude larger than a small pool of aspiring UK computer engineers.
"We honestly did think we would sell about 1,000, maybe 10,000 in our wildest dreams. We thought we would make a small number and give them out to people who might want to come and read computer science at Cambridge," he told ZDNet.
The first inkling of the fervour the credit card-sized board would create came in May 2011, when the first public outing of the Pi in a BBC video generated some 600,000 views on YouTube.
Upton and his colleagues revised their initial run of boards up to 10,000, thinking that would be more than enough to meet demand.
It wasn't. The 10,000 boards sold out within hours of going on sale in February last year, with an incredible 100,000 boards ordered on that first day.
Today more than 700,000 Raspberry Pi computers have been shipped to modders who are fitting them to robotic drones in the sky and underwater, to hobbyists designing home automation systems, and to wannabe coders looking to build their first programs.
So what, exactly, is the Raspberry Pi?
The Pi is a credit card-sized device and one of the lowest-cost computers available. At first glance it looks nothing like what is generally considered a computer, nothing more than a bare board and ports, but it is perfectly capable.
The board is powerful enough to stream 1080p video, browse the web or write documents, and it was designed to be portable enough to carry around without breaking. A number of distros of Linux run on the Raspberry Pi, including ArchLinux, Debian "wheezy" and Raspbian — a Pi-optimised version of Debian.
Raspberry Pi provides OS images for download here. Most are bundled with programming aids such as IDEs and the drag-and-drop programming software Scratch. Programming tools are easily available from the desktop and Upton wants future OS images to boot the board straight into a programming environment.
Putting these tools front and centre is designed to inspire tinkering. The Pi is there to encourage a similar taste for experimenting with computers that was inspired by the blinking Basic programming prompt of the Acorn BBC Micro in the 1980s.
There are two versions of the board, the Model A and the Model B. The Model B is on sale through Premier Farnell and RS Components. The Model A will go on sale in the first quarter of this year.
The origin story
Despite engineering one of the unexpected computing success stories of 2012, however, Eben Upton and his colleagues didn't even set out to build a computer.
The Raspberry Pi Foundation was established with the goal of inspiring the next generation of programmers: it just turned out they felt the best way of doing that was to provide a computer cheap enough for kids and easy enough for them to hack.
"I looked at our founding documents and nowhere in there does it say 'We'll make a small computer'. What it says is 'We want to get kids programming'," he said, while giving ZDNet a tour of the Raspberry Pi factory in South Wales.
"The kids [coming to university to study computer science] haven't had the opportunity to do much programming before they come in the door," he said.
"It would have been heartbreaking if it turned out that kids aren't interested" — Eben Upton
"You've got to put in your 10,000 hours and it's a lot easier to put in the 10,000 hours if you start when you're 18," he said.
Despite Upton's belief that kids are still interested in coding, he was nervous about showing the Pi to young people for the first time, a fear born out of the received wisdom that they are interested in playing with smartphones and social networks but not the underlying technology that makes them work.
"I think I'd been avoiding testing my hypothesis just in case. We took them into a school a week before we launched and these kids went crazy for them," he said.
"It's been great to see that we had this theory that kids still want to program, and it would have been heartbreaking if it turned out that kids aren't interested."
Upton believes it is the feeling of being able to control a machine that gets kids hooked on programming in the first place.
"It's that sense of power in making a computer do a thing — it's 'I made a cat move'. Because the Pi's simple and bare bones if you make it do something, they seem to feel they can own it, more so than making a PC do something," he said.
Building the boards
Meeting demand far in excess of what the Foundation planned for posed a challenge. As the Pi was getting ready to launch, the operation to build and ship the boards — from booking factory time to purchasing the chips — fell to the relatively modest resources of the Raspberry Pi Foundation, a charitable body initially funded by loans from Upton and five other trustees.
"That would have been fine at 10,000 boards, but there was not a hope in hell that we'd be able to scale that up to build 100,000," he explained.
"We would have struggled in two ways...
...With the supply of capital, we wouldn't have had enough money to build them at a high enough rate, and we would have struggled with logistics, with just moving the boxes."
To meet the demand Raspberry Pi struck a deal with major electronics distributors Premier Farnell and RS Components and licensed them to manufacture and distribute the boards. Partnering with the electronics distributors gave the operation the buying power to keep component prices low and the global distribution network to handle the logistics.
Boards were originally made in China but from September last year some of the manufacturing was moved to the Wales. The Sony factory in Pencoed in South Wales now produces 4,000 boards each day.
The Raspberry Pi is sold at just above cost price, and even though the Foundation is sharing that profit with the two distributors, Upton said it still has enough money to pursue its charitable aims.
"We're not rolling in cash but we do have enough money," he said. Those aims range from lobbying government about IT curriculum reform to attending conferences, preparing teaching materials and setting up programming competitions.
The reasoning behind the Raspberry Pi wasn't to head off some future IT skills crisis — Upton says the crisis is already here.
In his day job Upton is a system-on-a-chip architect at chip designer Broadcom and says he sees firsthand the evidence of the lack of new computer scientists, software engineers and programmers coming out of UK universities.
"It's an industry with a lot of niches and when I look around at Broadcom there aren't enough guys in their 20s. There should be the same ratio of guys in 30s to guys in their 20s, but there are a lot more guys in their 30s. It's not a dying industry yet but if we carry on, we'll probably fall below a critical mass and we won't be sustainable anymore," he said.
The question of whether there is a shortage of computer programmers and engineers in the UK is a contentious one, with figures suggesting its effects are sometimes overstated. The number of advertised IT roles in 2011 stood at little over half those advertised in early 2008. Some IT skills crisis sceptics say the domestic talent shortage is overblown to justify the offshoring of entry-level roles.
Upton's take is that he sees little evidence that there is software engineering talent going begging in the UK.
"If I was besieged at Broadcom with talented applicants, then I would believe that, but I'm inclined to believe this is bullshit," he said.
Sales of the Raspberry Pi board are split about one third in the UK, one third in North America and one third in the rest of the world. Outside the UK and US most sales are in Europe. They remain relatively weak in China, India and South America.
"I think that Britain had the strongest 1980s indigenous computer culture and that a lot of the early Pi adopters are people like me who had a BBC Micro" — Eben Upton
"We're strongest in the UK, I think for two reasons," Upton explained. "One, we've had an enormous amount of support from the press and people in general. I also think that Britain had the strongest 1980s indigenous computer culture and that a lot of the early adopters are people like me who had a BBC Micro."
Early adopters of the Pi were in general not children with an interest in programming, but men with passion for computing who saw a cool new toy for them to hack. Grown-up tech enthusiasts accounted for about four-fifths of sales at launch according to Upton but the pendulum is now swinging back towards kids, as both parents, teachers and children buy the boards. He estimates that hundreds of UK schools have also picked up the device for use in lessons.
"I'm a real space cadet. I love those pictures that he gets from 40km up with the blackness of space," he said.
Businesses are also increasingly finding a use for the diminutive board, and since it became possible to bulk-order the Pi, Premier Farnell has seen an upsurge in large volume orders — those running into hundreds of boards.
Upton said that businesses are buying up the board to use for tasks ranging from automating factory production lines to running consumer media player appliances.
"Industrial computers typically cost a few hundred dollars and they're typically much less good than the Pi," Upton said, adding the Pi provided a low-cost computing alternative for these niche applications.
"There are lots of little industrial verticals. None of them on their own are big enough to justify somebody coming in and making something that can address that market. What the Pi has done is to make a multi-tool."
Upton believes that demand for the Pi will sit close to its current level, of between 100,000 and 200,000 units a month, for another year.
"There's always the concern that it might tail off. [But] I think there's enough demographics and enough geographies that we haven't hit yet that we can keep going for a bit," he said.
The Raspberry Pi Foundation doesn't share...
...the rest of the industry's penchant for overhauling its products on an annual basis. Upton warns not to expect any imminent announcements about new versions of the Pi or substantial price changes.
"There will be a successor at some point. I think 2013 isn't the right time to do it. I don't want to orphan the 700,000 Raspberry Pis that are already out there," he said.
Upton prefers to focus on incremental upgrades to the existing boards. The model B has already received a boost to its memory, from 256MB to 512MB, and Upton is keen to stress the ongoing software optimisation, both by the Foundation and Pi users. The software, he points out, is just as important as the hardware.
"We can improve performance by further optimising the software. ARM 11 didn't see an enormous amount of targeted optimisation, so there's a lot of low-hanging fruit" — Eben Upton
"We can improve performance by further optimising the software. ARM 11 didn't see an enormous amount of targeted optimisation, so there's a lot of low-hanging fruit," he said.
"One of the things we've been doing recently is paying people to crawl over Linux, profile it, find out why it's slow and make it fast."
The benefits of this optimisation are evident when comparing the slightly sluggish desktop of the Linux Debian distro available for the Pi at launch to that of the relatively nippy Raspbian distro, which has been customised for the Pi's hardware.
By rewriting OS software functions to suit the Pi's ARM V6 architecture, underlying hardware operations have been sped up, for instance memcopy and memset operations were given a 2x and 7x speed boost respectively.
"If you talked to people who used the Pi from May through to now, in August people saw a really big kick-up in performance," said Upton.
For Upton more important than making the Pi faster is making it easier to use, or at least easier to start programming on. He wants the Pi to boot straight into a programming environment like Scratch, the drag-and-drop programming tool made by MIT, much as the BBC Micro greeted you with a BASIC programming prompt when you turned it on.
"I'm a big fan of having it boot into a programming environment. It's Apple-like optimisation, taking options out of a platform to make it better," he said, adding that hidden features would be easy to gain access to if users wanted additional control.
Bug fixing is also an ongoing process for the device, particularly drivers for the Pi's USB controller, which has had a number of software bug fixes via kernel updates.
Most of the Pi's well-documented USB problems, Upton said, stemmed from the way that USB 1.0 traffic is packaged on top of the USB 2.0 link between the system-on-a-chip and the hub chip.
Upton said that while there had been a time when a number of USB peripherals were failing or not working as expected, there were now only problems in a handful of fringe cases.
Enter the Model A
The $25 Model A Raspberry Pi will also ship in the first quarter of this year. The board doesn't include the ethernet port, has only has 256MB of RAM — half that of the Model B — and only one USB port. The board consumes less power than the Model B and so is suitable for use in battery-powered robotics devices.
Upton said that while the 512MB board is suited to people who want to run the Pi as a computer, the 256MB is fine for people who want to use the board as a media centre, for robotics or embedded computing.
The Foundation originally planned to release the Model A last year but Upton said it had had to wait until its manufacturing partners were able to meet demand for the Model B boards before it could start selling the Model A, as both boards use the same Broadcom 2835 chipset.
One factor that helped ensure the Pi's success is the lack of alternative machines offering the same mix of performance and capabilities at such a low price. Since the Pi's release other boards have gone on sale that have been touted as capable of snatching the Pi's low-cost crown. One example is the $49 Cubieboard, a 1GHz board based on the ARM Cortex A8 processor with 512MB or 1GB of memory.
The numbers might at first glance suggest these boards are faster and more capable than the 700MHz Pi. But Upton insists that in true performance terms, there is nothing on the market that has him worried.
He points out that the Cubieboard and other potential Pi killers are...
...generally based on 1GHz Allwiner A10 chips, which are built around the ARM Cortex A8. While the chips carry out memory access operation tens of a percent faster than the Pi, Upton says their floating point operation and multimedia performance is far worse.
"If someone came along with something that was based on a good, fast AP [ARM processor] at $50 then I would be very concerned," he said.
"There's a number of people out there who market these boards saying 'Three times the performance of the Raspberry Pi'. I can't find a single benchmark that runs at that.
"I do find it annoying that people, and sometimes the manufacturers, naively claim that they're faster than the Pi when in practice they aren't."
The Foundation prides itself on the Pi being an open platform that offers completely open-source drivers for the ARM-based chip at its core. Being open — allowing anyone to rework software from the drivers up — is key to the Foundation's ethos of encouraging kids to take technology apart to see how it works.
"My view is where we've got to is sufficient to give people the goals of free software, which is for you to have control over what your machine does" — Eben Upton
However the Pi is not viewed as an open system in all quarters. A recent criticism of its open-source credentials was that the firmware for the GPU on the Pi's Broadcom chip is a closed-source blob, and not open to anyone outside of Broadcom to peruse or rewrite it. While the GPU driver might be open source, critics claim it operates at a high level and does very little of the heavy lifting, describing it as "little more than a message passing shim". Some tweaks to extend the Pi's graphical capabilities, for example adding new OpenGL features, cannot be carried out by modders as they would require access to the GPU's closed-source firmware, it was claimed.
The decision to base the Pi on the ARM architecture has also been called into question by those who decry the lack of publicly available documentation for the ARM core and its extensions, and the difficulty they say this causes in tasks like porting open-source VMs. From the point of view of being able to learn about the hardware and hack into it, these critics argue that open chip architectures like the LatticeMico32 would have been a better choice.
Upton says he struggles to understand the level of criticism by some members of the open-source community.
"I was a little bit disappointed that people were unhappy. I thought we'd taken a useful step in the right direction," he said.
"We have got to a point where everything on the ARM is open source and that is a new thing. Ninety-five percent of people gave us credit for doing what we could. People who are porting OSes are finding it useful, it accomplishes many of the goals of wanting to have free software," he said.
Upton believes the platform is as open as it can be, given the need of companies like Broadcom to protect their intellectual property — the designs of the underlying chip architecture — and also questions the pragmatic benefits of making the platform this open.
"It would be lovely if we distributed the source for everything, including the firmware and the documentation for all of the registers. I'm not quite sure I can understand the benefit it would bring to the community," he said.
"We and Broadcom put an enormous amount of effort where we could do that level of open source. I would like to open more stuff up but it's going to be tough. If you can't articulate a tangible commercial benefit to the IP holder, the person who has borrowed money from their IP investor, then you are on a hiding to nothing.
"My view is where we've got to is sufficient to give people the goals of free software, which is for you to have control over what your machine does."
He jokes that he is tempted to test the Pi's critics' commitment to having an open-source GPU.
"I'm tempted to do a Kickstarter and say 'I'm going to produce an open-source GPU'. I want $2m from all the people who've criticised me," he said.
The legacy of the Pi
The popularity of the Pi doesn't come without a cost. Upton and his wife Liz, who handles the PR for the Foundation, have bounced from helping to run the organisation to doing media and building the Pi community since the computer launched in February last year.
"I came out of an MBA programme directly before launching the Pi, so I had no time before and now I have also have no time," jokes Upton, who also works full-time.
"I'm very busy but it's good busy. Of course there have been bad days, like when we found out we had to CE test it and we'd built 2,000 boards and didn't know whether they were going to pass."
Despite the personal cost of being involved with the project, Upton says he believes in the Foundation too much to not stay around for at least another product launch.
"I'd like to take one more trip around the bay with this. We've got a really strong team, there's Pete Lomas who's our hardware guy and a very strong software team, both inside Broadcom and at The Computer Lab in Cambridge," he said.
Just as many of today's software engineers have fond memories of the Acorn BBC Micro and crafting their first BASIC program in the 1980s, Upton hopes the Pi might win a similarly treasured place in the hearts of engineers of the 2030s.
"I would like there to be some engineers who got their start with the Pi, who have a dusty old Pi in the attic that they will get down one day to see if it still works and reminisce about it," Upton said.
"I would like it to be remembered in the same way I remember the BBC Micro."