The story of the creation of the RaspberryPi microcomputer



    Congratulations to the developers of RaspberryPi - they recently overcame the barrier of 2 million boards sold .

    And in honor of this significant event, we offer a translation of the speech of Eben Upton (PYCON US conference March 2013).

    Performance



    Thanks everyone! My name is Eben Upton, I run the Raspberry Pi Foundation, a UK based company. We make small computers for children.

    I would like to talk a little about what the Raspberry Pi is. This is a very big story about the Raspberry Pi itself and why we are doing this.

    For me, the Raspberry Pi is a seven-year journey, since I was, as they say, the head teacher of the University of Cambridge. Now the role of the head teacher is to organize the teaching of students in a subject at one of our thirty colleges, as well as to ensure a sufficient number of students in the future. Every December, high school students come to us. Before, a lot of students came to enroll in our course.

    When I came to Cambridge in 1996, we had an excess of the limit with a share of 6: 1, so in order to get to the computer science course, we had to fight, we had to beat the other five candidates. And these five candidates are most often those people who had a deep understanding of what computers do. These are those who have been programming since 10 years of age. They probably had Commodore 64 or Timex's. There was still a BBC Microcomputer in the UK, and it was with him that I grew up. These were the people who bought these cars as children to play computer games on them. And maybe they created or bought these machines for study.

    But all these machines had something in common: when you turned them on, they made the sound “beep” (well, I had a “beep”) and showed the program line (expecting you to enter a command). And so the first thing you had to do if you wanted to play games or run a text editor for homework - is to choose not to program a computer.

    This means that any British of my age who had a penchant or, simply, an interest in programming, had the opportunity to satisfy this interest (since it was the default when the computer was turned on) - they could program for many hours a day, developing their skills. This means that almost everyone I knew at school could at least write a simple 2-line program:

    10 PRINT “I AM THE BEST”
    20 GOTO 10
    


    ... or maybe something more indecent. Then they went to the computer store, drove the code in all the cars, and pressed 'Enter' on all the cars and ran out the door. It was a simple 80s, we had fun as we could.



    The result was a huge stream of smart and talented children who came to us at the age of 18. Courses in Cambridge are quite famous for their short periods: the better the university in the UK, the less time you spend there. So, for a three-year course, we had 60 weeks to turn a high school student into someone who can start working on a 3-year doctoral [3-year PHD program]. This means that it was very useful for us to rely on the already existing level of skills and a certain level of knowledge of those who came to us, and in fact, what we needed to do was to convince the children that they did not know anything. For this we had an amazing tool - “functional programming” - Standard ML .

    It was necessary to “pound” these children (I was one of these children); they broke stereotypes in the first eight weeks of the course. And, when they, whimpering, were lying on the floor, we realized that they can already begin to learn the things that they need.

    People absolutely need to know functional programming. By the time I defended my doctorate and began conducting interviews with people in 2005, the picture had changed radically. If earlier we had about 500 candidates for 80-90 places, there were only 200-250 of them. Of course, it was a good share, but it was still getting smaller. We began to think that we could not recruit 80 or 90 people. But, so far we could find these people in courses that were undoubtedly as smart as those who studied in the mid-90s, but they lacked built-in hacker knowledge about what the computer does. We had to spend a lot of time at the start of these 60 weeks to adjust students to a level that used to be taken for granted.

    In 2006, a small group at the university began to wonder why this happened, and if we could do anything about it. The theory was that the 8-bit machines that existed when we were kids were gone. This ecosystem has been destroyed by game consoles: they are not only non-programmable, but they are designed to be NOT programmable. A specific business model encourages the creation of non-programmable hardware parts in order to generate revenue from platform development.

    Then came the PC. A PC is a perfectly programmable hardware, as a programmable medium, a PC is much more intricate and user-friendly than those machines that existed in the 80s. What has changed is the architectural choice. If you bought a PC [it worked out of the box], and you had to make an effort [choice] to start programming on it, you needed to make an effort to install a program, or find documentation. And this small energy barrier was enough to significantly reduce the number of skilled candidates.

    We thought that this niche exists, and we need to fill it. We had an idea to fill this niche, and it consists of four parts.

    First of all, it must be something programmable.

    Secondly, it should be interesting. We remember why the children bought these cars in the 80s - I bought them myself in the 80s, but for programming - the fact is that they bought computers for games and for school work, so there had to be something else . It should not be just a programmable device. For us, “interesting” meant games, graphics, and video.

    Also, it must be strong. We needed something small and reliable, something that could be put in a school backpack, pulled out many times and not damaged.
    In the end, we needed something cheap. We knew that we needed to ask people to buy these cars, but they should not be expensive. Our idea was to set the price of an ordinary school textbook, because you can ask children to buy a textbook. We chose a price of $ 25, which shows that we did not even know how much the textbooks cost. If we knew how much the textbooks cost, we would not have problems with the engineers for several years :)



    We set the bar at $ 25. This is the cheapest Raspberry Pi model. We spent a lot of time trying to figure out what we could do for $ 25. The first thing we did was like the Arduino family, which I think many of those present worked with. It was based on microcontrollers. You could insert this microcontroller into an old standard-quality TV, and you could end up with a microcontroller similar to an 8-bit Atmel or ATmega. But we did not succeed in these tests. One of the wonderful things was that you could make a similar device on a breadboard [veroboard]. You could sit down to work on a rainy day, and in the evening you could get a computer. And it definitely fits in our declared $ 25, but it may not be interesting for children, right? This is interesting to me because I already know how to program, and I like computer toys [geeky toys]. But they should be interesting for children. So we threw this idea.



    Around this time, I went to work for Broadcom, and still get paid a salary, although now I spend more time with this device. We made chips for phones that cost about the same cost as microcontrollers cost, and I was amazed that if you are a mobile phone company, then $ 10 here differs from $ 10 in Digikey [electronic components store] in terms of performance. And our small group decided to see what we can do on the basis of one of the platforms for mobile phones.

    Somewhere in 2008, in our hands was a device invented in Cambridge, based on the graphic processor of a mobile phone, and it was just what we needed. It was a device that did not have an open processor, inside it was a proprietary RISC core. We ported C Python there. We got what we wanted for so long. It was a machine that ran under a language known for learning, in this case, Python. And she looked cool. It fit in $ 25, could play video in 720p quality, it had a fairly powerful graphics process, we added Python binders for all these features. It was a really cool little platform. You know, we thought it was a great start. We thought we needed an organization to advertise this car. We came up with the name 'Raspberry Pi', where Pi means Py in 'Python'. Yes, misspelled, but I have defended this spelling for the past four and a half years. It seemed to us that Pi would be a terrific logo, and never used this opportunity, but in the end they staked out this name.

    And then off and on. But one of the problems that we encountered was that we had to do everything ourselves - it was a very closed platform. We built a popular language there, but we had to write everything ourselves: our network drivers, drivers for SD cards and all that, so we still didn't get to the end. We were very lucky that after a couple of years [at Broadcom] a new chip was released for mobile phones, and I managed to put the chip - ARM11 at the forefront ... Here they are - the advantages of working in a chip development team.

    “We definitely need ARM11 in this chip for unexplained business reasons.”


    We got this chip, and it was perfect: we got what we wanted. It was an almost open platform on which Linux could run, which meant that we could afford this investment in developing a real operating system for which you did not have to pay.

    But we still thought too narrowly. The only thing we wanted was to reach the bar of 250 candidates a year who would like to study at the Department of Computer Science in Cambridge. Maybe add 80 or 90 people there to learn assembly language. That would be a good result. Since we all suffered from nostalgia - I do not know if there is anyone here who came across a machine called the BBC Microcomputer? It was an educational microcomputer in the 80s sponsored by the BBC. So, our group worked with BBC Micro, and we were all quite romantic, so we thought it would be cool to stick a BBC sticker on the car. We started calling it BBC Nano, since we never wanted the Raspberry Pi brand. We started asking the BBC: “Can we stick your logo on the car?”, And they continued to answer “no”,

    Our last attempt took place in May 2011 (almost 2 years ago): we went to Rory Sellan-Jones, BBC's chief technology correspondent, and asked him again, he told us no. But then he added: “Although I think this is a great idea. Can I make a video with one of you and you could talk about the idea of ​​a prototype? ”



    One of my colleagues, David Braben, one of my comrades - I don’t know, did anyone play the computer game“ Elite ”? Who has lost all his childhood in this game? So, this is David's fault. A 45 second video appeared with him. He just stood with something not at all like the Raspberry Pi, and talked about the Raspberry Pi project.

    Video [for some reason there is no audio]

    The video was watched 70,000 times on YouTube in two days. And it was a wonderful two days for me: I sat at Broadcom at work and did nothing. I just sat constantly pressing F5.

    You saw an episode from The Simpsons where Homer buys a console home and replaces all the functionality of one of the toy birds. That's about the same way I pressed F5. My counter "how popular are you" continued to rise, I felt great.

    At the end of the second day, I came home, I was really inspired, and so I sat with my wife Lisa to have dinner, sat down to dinner at the table against each other, and then we suddenly realized ... - 'oh, damn it!' [oh, shit!] - we realized that we promised 600,000 people that we would build them a 25-dollar computer - not knowing how to do it ...

    And so the 2011th year was very difficult for me, since it was necessary, first of all, to understand how to achieve this price. If you add up the price of all the chips, it will turn out something like this, but the Raspberry Pi has about 180 components. Some of them cost one cent, some two, some 10, and they can really add value. We have been trying for a long time to figure out how to lower the bar to $ 25 or to $ 35, but this is already with Ethernet and with several USB ports.

    By the end of the year, we had something that was just right for the price. It was fantastic. We thought about 600,000 people and thought: “Well, most of them just passed by, they really don't want the Raspberry Pi.” We came up with a great business model (I just graduated from the MBA, so I knew everything about business models), and I thought: “We will release 10,000 Raspberry Pi boards, put information on a website that looks like an online store, people will start buying them, and then, in a few months, we will run out of 10,000 boards, and we will use this money to make subsequent boards, it will be cool! ”

    But then danger signals appeared: the traffic on the site was huge, the number of people on the forums increased. And in order to leave people interested, we posted the contents of a bootable SD card on the site, since the machine started from it. It was early beta software with bugs, simple firmware, you could run it on Qemu. This version has been downloaded 50,000 times. This was the moment when we realized that there are 50,000 people of our fans, how severe they are, that they are ready to download even the most buggy alpha version of the operating system, for a computer that does not yet exist.

    Then we thought that our 10,000 models will be taken apart in just a week, and their creation lasts three months, so we will have problems. We were very lucky as we found two companies in the UK: Premier Farnell and RS Components. They work here under the trademarks of 'Newark' and 'Allied'. Two huge distributors who had the same goals. Their customers are engineers, they have an interest in creating a strong engineering base in the country. Therefore, they had the same goals as ours. Therefore, they were ready to help us out, not just distributing the fees, but producing them for us. They were ready to provide capital, they were ready to provide supply and support from buyers. In January 2012 - two months before the launch, we turned from an institution with fixed capital, to the company that issued the intellectual property licenses [IP licensing company]. We were the owners of the board drawings, we owned the RaspberryPi brand, and we issued licenses (for the board and the brand) to these two companies, and they did the hard work for us. That's what helped ensure scalability.

    We were very lucky that we did so - because we had 100,000 orders on the first day (April 12, 2012). The answer to our question was: "15 minutes." That was cute. A year has already passed. We sold the millionth Raspberry Pi last month.

    I need to pretend that I knowingly called the number 1, right? So, a unit is one million cars sold. [at the beginning of the speech, the number 1 was highlighted from Pi]

    It was a wonderful year, and one of the most important things this year for the first six months was that there were a lot of licensed programs on our site that we did all this time. For the next 6–9 months, people who are computer savvy started writing about us.

    The last 3-6 months, the nature of the submission to our site is changing. There are adults who work on Pi, and children want to work on it too. This is a very good sign.

    I'll hit you now. (speaks backstage) Can I get the slide back?

    (Pi number appears - 3.1415, number 15 is highlighted)
    15 cool pictures. I could not do fifteen, but it will be very fast.



    We did not expect people to do projects. I do graphics and I believe that many people would like to make graphical demos for the platform. If there are graphic specialists in this room, then do some demo on Pi and make me happy. But all that people have already done for Pi was completely unexpected for me. Here you are, wonderful work.

    People use this platform in order to create music. This is an analog-to-digital synthesizer that you can download, called ... The name has popped up, but you can find out about it on raspberrypisynthesizer.blogspot.ru .



    Beer! It turns out that there are many people who equally love computer programming and beer. You will not believe it, but some people, having started working with the Raspberry Pi, decided to make their own brewing station correctly. There is a program called BrewPi, it is an open platform. I think it is written in Python, Arduino and for the Raspberry Pi. This is a system that analyzes the "micro brewing of beer" on the Raspberry Pi.



    The photo. I liked that. If you want perfect macro shots, there is a process called “focus reduction,” in which you photograph twice, focusing the camera on two objects, and then bring them together. Typically, this requires software worth £ 1000, but here everything is done with a simple scanner, camera and Raspberry Pi. Very cute.



    Oh yes, games. Around the Raspberry Pi there is a huge community of fans of retro games. The Raspberry Pi is powerful enough to emulate the era of computers on which I grew up and which the era of computers destroyed. I constantly complain about it. Here you go, Super Nintendo, damn you!



    Now about lighting. I inserted this slide because it is incredibly cute. There are many paper boats on the Thames, probably not plastic boats. There is a small pier on the Thames, called Canary Wharf, there are many UK financial services. There is a row of boats, to which you can connect, type the text, and the boat will change its color. Installations of this kind have become popular with the Raspberry Pi.



    Oh, this is my favorite! This is Doctor Who, space, and the Raspberry Pi in one. One gentleman, Dave Ackerman, whom I met for the first time on Thursday evening, but I have known him for a long time, he has been installing cameras on weather balloons and sends them to a height of 40 kilometers and takes photographs. He does this with camcorders and simple digital cameras. A year ago, right after launch, he started to do it with the help of Pi. He got these wonderful shots of the Earth from an altitude of 40 kilometers, and he continues to do incredible things, such as the little polystyrene TARDIS in space.

    It is important to note that this allows the “Space Program” with an affordable budget to reach the level of each elementary school in the world. I challenge all children who are not interested in science, technology, engineering, and mathematics so that they can launch TARDIS into space.



    We have the same magazines that appeared in the 80s, with the same capital codes as in the 80s. Python codebook. There is something in it, because the Internet is an excellent assistant for people to learn how to write on the program. I remember how when I was a kid playing Elite, I wanted to write a little 3-D game, I wanted to draw lines. I knew that there was such a Bresenham algorithm that allowed you to draw these lines. My father was a professor at British University, and I had access to the university library. Could I find there about the Bresenham algorithm? Could it? Curse. And now I can find out about this algorithm by simply scoring it in Google.

    But the great thing is that when you type something instead of just downloading it from the Internet, there is a feeling that passes through your eyes, into your brain and leaves your fingers, it is more than just downloading and starting. Usually, when you write a code and make a mistake, you get a “learning opportunity”. I remember these “opportunities” in the 80s.

    Here is a free magazine called The MagPi. I hope that in the future we will print them. While this is an electronic version for the first eight issues, it is released every month. Soon it will turn into a print version, which you can subscribe to.



    We have books. I don't know if you have Haynes tutorials. Yes? Well, Haynes machine books were in vogue in the UK when you opened the hood, and there was a big piece of metal that said "if you open it, then there is no guarantee." Haynes had to go through this transition and they survived through tutorials such as the Haynes Tutorial for the Space Shuttle and the Haynes Tutorial for the Baby, now they have made such a tutorial for the Raspberry Pi, so we are observing the evolving ecosystem around Pi, which is very it is gratifying. We even have one book by O'Reilly, which means “you did it.”



    Here is a cool thing. This is a programming language called Python. One guy figured out how to run Python on the desktop of his computer. You can focus the cursor on the desktop and start writing in Python. This is how people came so close to the primitive experience that I talked about earlier, which is really nice.



    Cases - we thought to make about 1000 of these, at the beginning, and about 10,000 after. We did not think that we would make enough templates for them, so we did not make the case. This meant that we left a lot of values ​​in the ecosystem. Many people began to make cases for Pi, even several accessories. Cases would ideally complement this gamut. They covered the entire market. And this is the lower threshold of the market because it is .PDF. You just need to print the template on the thickest paper that you can find and insert into the printer without breaking it, then collapse it and you will have a case! And it doesn’t even ignite, which is not bad. I like it, it looks like a basket.



    And here is another example of a cool case - based on LEGO. We had the idea of ​​creating a computer the size of a credit card, it was our way of focusing on the small size and ease of communication. You can say that this is a computer the size of a credit card, but in fact it is not, because I did not pay attention to the guy who was developing the board, this is my friend Pete Lomas, so it is one millimeter more than necessary. But thanks to some kind of happy coincidence, the abscissa and the ordinate of the board turned out to be equal to the usual LEGO details, very, very close. And now there are a lot of such LEGO cases. This idea came up with a girl named Biz. She is 11 years old, and she posted training materials on her website. Now there is a website with a store of custom LEGO sets, you can buy them. Since Biz has come up with all this, she gets a fee, and since she is 11 years old, this fee is given to her in the form of LEGO. Now she has more LEGO than mine.



    And here, on the other hand, is Pibow. Jesse's daughter got an amazing case for her Raspberry Pi. This is Pibow. It is made by the person who designed our logo. This is a stack of pieces of plexiglass. The most beautiful computer case I have ever seen.



    Here is some evidence that kids learn to program on the Raspberry Pi. This guy's name is Mikey. You cannot see this because it is not in the picture, but he learns to program in Scratch, the programming language that we created. We are currently spending a lot of money to coordinate Scratch with Pi.



    We had a very narrow view: we thought that this would help us with the problem at Cambridge University, but it turned out that children around the world want to use the program. Here are the guys from Uttar Pradesh, India. In the lower left corner you can see that they use Scratch in order to learn how to program. Many similar photos are sent to us. When we have difficult days in the development of the Raspberry Pi, and there are not so few of them, these kind of photographs cheer us up and help in promotion, because they show why we should deal with this small computer.



    We have Minecraft. I don’t think there is anything else to be said. I said that a clue was needed here. You need to hook children into the world of computers. It is clear that many children like to play Minecraft. Mojang helped us a lot since they made a pocket version of Minecraft called Minecraft Pi Edition. The wonderful thing is that in this version there is a small "socket" to which you can connect any programming language (guess which one is most used), and then write text commands to interact with the world. You want to build a house and start "brick, brick, brick ...". Or you can open a window with Python and write:

    for x in range(10):
      for y in range (10):
        brick()
    


    And you will have a small floor. And this is a very quick response. This allows children to find what they will certainly need.



    Trying to take over the world. “What are we going to do tonight, Brain?” This is a wonderful map created by Ryan Volmsley, who was then 14 years old. This is a redesigned Google map, self-registering, it shows where the Raspberry Pi is currently located. You can make sure that we are out of the comfort zone in Cambridge, there is a little in the UK and a lot in North America. North America is currently the largest market for us for the past three months. Also there is the largest base. This is fantastic, we did not even expect that there will be so many of you.

    There are small chances in South Africa, Australia and Asia. I think we can manage to sell a large number in South America and India, but so far we are getting there. We have plans for them.



    And here is Wales, where I come from. When we started developing the Raspberry Pi, we did what everyone did: we went to China and built. We started from China, and a few months later they called us from Sony, who have a factory in Wales, and said: “You know, we can build a Pi for the price you can afford.” Last September, we developed Pi in the UK at the same price that we built them in Shenzhen. This is very important for me because I was born 10 miles from this factory. South Wales, like many areas that are the industrial centers of the developing world, have huge economic problems. And the opportunity to develop the cheapest computer in the world in Wales is a terrific sign for all those who are worried about the manufacturing industry in the developing world. For me personally, this is very important.

    [the number Pi again on the slide, the number 4 highlighted]
    Four. Four things about Python, four reasons why Python is important to us. Our name. We got the name from Python, and I will defend all my life the opportunity to write the name “Python” in that way, but, yes, we owe it to them.

    We use their chip. This is the 2835 Broadcom chip that I developed as a team for the GPU. We created the whole machine under Python. When we created processors for shaders, we developed a multimedia IP in a Python chip, because it is a hundred times faster than transferring data through Verilog, since these tools are simply better. We had an idea: “Why are software tools so much better than CAD?” Because programmers show what their own company can do. So the main engineers do the same.

    Our software. Python and many other programming languages ​​helped us create an unusual ARM / Linux environment with a very strong software base that can be run in the regular X86 world.

    And finally, our language for learning. We support many languages. For young children, we have LOGO and Scratch. We will also support C and C ++ for those who want to be closer to the hardware. Python helps us create a story that we can tell children. We tell them: “Learn this language in which Hello, World is just text ('Hello, World'), and then you will follow the“ curved line ”that will lead you to other programs.” There will no longer be a gap between how you write a two-line program to annoy people in computer stores and how you become a professional software engineer. We think this is very important, because if there is a gap in this curve, people fall into it.

    I am almost done.

    PyPy. We are big fans of PyPy. I think this is a great idea. I was a frequent user of Psyco before, these programs are really useful and important. We do not have such great performance on the Raspberry Pi, so we are working hard to squeeze everything we can out of this platform. Of course, PyPy will be a big part of our future.

    That's all. I think that’s all I wanted to say. Thank you very much for your time, thanks for the warm welcome. Please go to www.raspberrypi.org and talk about what you have done with your Raspberry Pi.

    From the editor



    I would like to thank Maxim Kalinichenko, who has already completed the second translation. To support the initiative, we decided to allocate a microcomputer to him from our MakeItLab hackspace - RaspberryPi :)

    By the way, this is what he commented after the translation:

    Finished translation on Raspberry Pi. It was a great performance.
    It was a difficult and long translation. I don’t know if I could have done without the text or not :) Most likely, yes, because the topic is interesting. Eben told everything perfectly and readily.
    I even wanted to learn how to program in Python, to be honest!)
    I can program a little in Pascal, but these are the basics, because I was self-taught. But I would like to overpower Python. I don’t know why, but it’s just very interesting.

    Thanks for such an interesting video!


    So I thank Andrew McBrearty, who kindly agreed, and typed the English text of the speech.

    TheMagPi Magazine Translation



    By the way, the translation into Russian of Eben Upton's speech took more than half a year - several people started, but only Maxim was able to finalize the translation (he took up the translation in early November).

    There is a suggestion - so that translations on RaspberryPi topics (educational materials for schoolchildren) appear faster - to collect a certain fund.

    For example, you can do a crowdfunding campaign to raise funds for the translation of The MagPi magazine - I spoke with the editor - they are not against translating into Russian. This is a great magazine for beginners to program, already 18 issues.

    In order to find out the situation - I created a web form for a surveywhere you could mark your intention to participate in the campaign. Based on its result, we will decide on the start of the campaign. Thanks.

    Also popular now: