Skip to content

This module equips you with everything you need to start writing your own Python programs, opening up a world of possibilities. However, to tailor your learning experience, please note that not all activities are mandatory for this specific class.


Installing Python – Overview


Video: Demonstration: Using the Python Playground

  • The page introduces the Python Code Playground, which is an ungraded assignment where you can write and run Python code.
  • The Python Code Playground is launched externally and allows you to write any code you want.
  • You can reset the code to the default or write your own code and run it to see the output.
  • The Python Code Playground is not graded, and there’s no grade sent back to Coursera.
  • If you’re using Python on your laptop or computer, it’s recommended to learn how to do Python there and then paste the code in the autograders later.
  • If you have no access to Python on your device, the Python Playground is provided as an alternative.
  • You can switch between Python 3 and Python 2 in the first ten weeks of the course.
  • The “View Student Code” button allows teaching staff to view and help with your code in the forums.
  • When you’re done, you can press “Done” to go back to the course.

So welcome to this week. Last week, we talked about the theory of
programming, and computer science, and the Macarena, and
all that kind of stuff, and that’s cool. But now we’re going to
start writing programming, writing programs using Python. And one of the things we’re trying to
encourage you to do is install Python and run it, because sooner or later you
are going to have to do that, right? You’re going to have to install it and
run it. We’ve got a bunch of videos. But in Courses One and Courses Two,
you don’t actually have to do that. Now, we know that some
people are using iPads, or Chromebooks, or something else,
and you can’t install Python. And maybe you’re at a school that can’t
install Python, so it’s great that you can write Python programs using
software we’ve provided in the browser. And we have this Python Playground,
and so as you go through the course, you’ll find assignments
that you’ll have to do. But what this is is this is an ungraded
assignment, Python Code Playground. And so it’s launched externally,
using a technology called Learning Tools Interoperability, so
it’s going to pop this open in a new tab. So you see that it’s in a new tab, right? And it’s the Python Code Playground. Now, this is kind of like the autograder
except it has no expectations, and you can write any code that you want,
okay? And so let me hit the Reset Code button,
and you can always go back to the default code, and
this is the code that’s there for you. And if I want to run it, I can just say,
go ahead and run this code, right? And so the code runs, and
the output’s over here. So it actually ran the Python,
and the code came out over here. Now, this is a file, this is like Chapter
Seven, it’s even from Course Two, so the default code here is probably
not what you want to play with. You can play with something like
print(‘play!’), and run that. And so it runs the code, and
then your output comes here. Now, there are three files,
which is later, Chapter Seven and later, that you can use. These are the sample files that
we use throughout a lot of the assignments in the book,
and away you go. And so you can do whatever you want here. It’s not being graded, there’s no
grade being sent back to Coursera, and so away you go. And if you’re writing Python on
your laptop or your computer, you’re way better to just learn
how to do Python there and then paste the code in
the autograders later. But if you have no access whatsoever, that’s why we give you
the Python Playground. If you want to do this in Python 2,
because the course is taught in Python 3, there’s a little button down here
that says switch to Python 2. And so you can run Python 2 code in
here as well if you know Python 2. In the first ten weeks of the class,
you can actually switch back and forth between submitting your assignments in
Python 3 and Python 2, but in this case. Now, the other thing that’s cool about
this is that you aren’t going to see this button, you’re not going to
see any of those buttons. This View Student Code allows our teaching
staff to take a look at your code. And so we don’t allow you to
paste code into the forums, so what you can do is you can ask for
help in the forums. And the teaching staff can go in and view
the student code, type in your name or email, and
then find the code that you last put in. So you can put something in here and
get some help on it. The teaching assistant can see your
entire code, they can run your code, they can do all kinds of things. And so it’s a great way to communicate
with the teaching assistant. You sort of leave your code in
the Playground, you ask the teaching assistant, and then they go take a look
at your code and give you some answers. When you’re all done, you simply
press Done, and we’re back to Week 2. But like I said, I really would personally
prefer that you build the skills on running Python on your
laptop as quick as possible. But if that’s not practical for you, then that’s why we have the Python
Playground here in Courses One and Two.

Recommended: Install Python – Windows 10


Video: Windows 10: Installing Python and Writing A Program

This video guides viewers through setting up Python on Windows, installing a text editor (Brackets), and running a simple program.

Steps:

  1. Install Python: Download and install Python for Windows. Verify installation using the command py --version in the command prompt.
  2. Install a text editor: Download and install Brackets (alternative editors are possible, but Word and Notepad are discouraged).
  3. Write and run a Python program: Create a new Python file in Brackets with the code print("Hello, world!"). Save the file as hello.py. Navigate to the file’s directory in the command prompt and run it with py hello.py. The program will print “Hello, world!”

Key takeaways:

  • Python installation requires administrator privileges.
  • Use dedicated text editors like Brackets for Python coding.
  • Running Python programs involves navigating to the file directory and using the py command.

This video provides a basic introductory setup for beginners to start writing Python programs on Windows.

[MUSIC] Hello and welcome to Python for everybody. Today we’re going to install
Python on a Windows system and install a simple text editor and
run a simple program. We’re going to go to python.org and
we’re going to go into downloads and we’re going to download Python for
Windows. So now the download is completed. So we’re going to do the installation. Now, we need to be an administrator
account on this Windows to do this. So we just finished the install. And so I’m going to test to make
sure that we’ve got it done. So I’m going to go into the command prompt
and check to see if Python is installed. I’m going to say py– version
because Python would hook us back up to that app store. So now we have Python. You type py will go in the interpreter. Print hello world. And then quit. Open print close, print. Okay, so we get Python installed. So that’s good. So we can close that. Now, we’re going to go
on to our text editors. We have a number of different editors. You can use any editor that you like. You shouldn’t use Word,
you shouldn’t use Notepad. So we recommend the Brackets. If you have something like this code
installed and it’s working for you, great, keep on going. So there’s other ones that you can use but
we’re going to focus on Brackets. So Brackets is simple. It’s open source. It runs on MAC, Windows, and PC. So we’re just going to
download Brackets here. Let’s go ahead and install Brackets. We’ll just take the typical. So we’re done with that. So let’s go ahead and finish. So let’s just open Brackets up. Well, Let’s go ahead and hide this. So there’s Brackets. So I’ll just close all this stuff. Of course that. So I’m going to create a file,
file, new, and I’m going to make this a Python,
file, print. Hello, world, of course,
the first program. And now I’m going to save the file,
file, save. Now I’m going to go onto my desktop and
I’m going to create a new folder. I’m going to call this folder py4e. You’ll notice it also shows up
on my visual desktop as py4e. And then I’m going to go into
that folder and name my file, Hello.py and
now that I’ve called it hello.py with that suffix it actually
does syntax highlighting. So that’s kind of nice. So if I go and
I take a look at this folder, I will see that there is
a file called hello.py. And if I’m here, in the command
you’re in a working directory. So I’m on the py free user. So I’m in the working director users py4e. If you’re ever wondering
where you’re at and it’s not showing the prompt
you can type cd all by itself. If I do a dir here, you’ll see that I’ve got a number of
files including a folder called desktop. So I did CDDES tab to get to desktop,
and then I do a dir here and you see that I’ve got
one folder named py4e. Yeah, okay, and my account name
is py4e and my folder is py4e. So, sorry, if you’re confused by that. So I can do a dir inside the py4e. But you see I’m in the account py4e,
it’s desktop and then the folder py4e, and
I gotta file, hello.py. So I can type here py
hello.py to run Python and it will, and it will say hello world. And so that’s pretty much
just kind of getting started. Like I said you can use
any editor that you like. And we’re just recommending
that you start with Brackets. So there we go. I hope that you found this a quick and useful instruction on
how to install Python. How to install a simple editor
in the form of Brackets. And then how to run your
first Python program. [MUSIC]

Video: Windows: Taking Screen Shots

This video tutorial demonstrates how to use the Snipping Tool on Windows 8 (applicable to earlier versions with slight UI differences) to capture screenshots.

Key steps:

  1. Launch Snipping Tool: Press Windows key + S and select “Snipping Tool.”
  2. Choose capture mode: Select “New Window Snip” to capture a specific window.
  3. Capture the window: Drag the crosshair and click to capture the desired window.
  4. Edit (optional): Use the pen tool to hide sensitive information on the screenshot.
  5. Save: Choose “File” > “Save As” and specify a filename and location (with preferred extension like .png for portability).

Additional features:

  • Other capture modes, like fullscreen and rectangular snips, are available.
  • Snippets can be edited after capture (scribbling, highlighting, etc.).

Benefits:

  • Simple and built-in screen capture tool on Windows.
  • Allows editing captured screenshots.
  • Saves captured images in common formats for easy sharing.

Overall, the video provides a clear and concise guide to using the Snipping Tool for basic screen capture needs on Windows.

Hello, and
I would like to talk to you about how to use the snipping tool
to do a screen capture. There are other ways to do this, but the
easiest way is the built in screen tool, and I’m doing this on Windows 8. The snipping tool exists on earlier
versions Windows as well, and so the gestures and the UI might look a
little different but it is about the same. You find the snipping tool. So, I’m going to hit the Windows icon, and I’m going to type S-N, and
it brings up the Snipping Tool. And so, here I go. And, it’s giving me this
option to say Snipping Tool. And, I like to say,
I’m going to do a new Window Snip. An now,
it’s kind of graying out the screen and following me around with
this little red line. And I clicked on this and
it has made a copy of that window. Now this Snipping Tool is just
Snipping Tool, that window still exists. This is now, didn’t want to do that. This is now just a drawing tool that’s. So, and so here you are. We could save this, but
the other thing you can do and this is in the more recent snipping
tools is you can make changes. So let’s say for example that you
didn’t want to show your name, and your name was in this path. And so I will just go and scribble my name out,
like with this little scribbling tool. Pretty sweet? So, I scribbled my name out. I just happened to have my name in it,
so I just didn’t want to put it in. So now, I’m going to do File > Save as. And, of course, find somewhere,
I’m going to put this on my Desktop, and I’m going to call it notepad.png. Now, you don’t have to put
a suffix of .png or .jpg. But it’s good if you’re
moving files between systems. So, put the suffixes on. Windows would know this was a PNG file,
but .png is a way to nicely tell other systems, when you’re moving it around,
that it’s a PNG file. Or, if you send it as an email,
or whatever. So, I save it, I’m saving it on
my desktop, and there we go. So it’s hiding the .png, but I can look
to make sure the png is really there. And so there it is, it’s a .png. And so there’s a file and
away we go, okay? So there’s the snipping tool. If I close this window and
I click on Notepad, [SOUND] you will see that it’s
got the little scribbling thing. Thank you for that, okay? So, there you go. That’s how to do a real
simple snipping tool.

Recommended: Using Python – Macintosh


Video: Macintosh: Using Python and Writing A Program

This video guides Mac users through setting up Python and a basic text editor for programming.

Key steps:

  1. Check existing Python: Use python --version to see if you already have Python installed. If it’s Python 2, skip installing as it’s out of support.
  2. Install Python 3: Download and install the latest Python 3 from python.org.
  3. Verify installation: Open a new terminal window and use python3 --version to confirm Python 3 is installed.
  4. Choose a text editor: Avoid TextEdit and consider options like Brackets or VS Code (Brackets recommended for beginners).
  5. Install Brackets: Download and copy the Brackets application file to your Applications folder.
  6. Run Brackets: Search for “brackets” and launch the application.
  7. Create and save a Python file: Create a new file, write print("hello world"), and save it as hello.py in a dedicated folder (e.g., mkdir py4e and cd py4e).
  8. Run the Python program: Use python3 hello.py in the terminal to run the saved Python code.

Key takeaways:

  • Python 2 is outdated and unsupported, focus on installing Python 3.
  • Use a dedicated text editor with Python syntax highlighting like Brackets.
  • Save your Python files in a designated folder for organization.
  • Use the python3 command followed by the filename to run Python programs.

This video provides a basic workflow for Mac users to get started with Python programming, including installation, setting up a text editor, and writing and running a simple program.

Box and I type terminal, and this terminal came up. Pwd is a print
working directory. This is effectively the same
user interface as Linux, and most servers are
done with Linux. Our goal is to install a Python. The first thing to do is to check to see if
you’ve already gotten stalled because you can type
the command python dash, dash version and see
that we have Python 2.7. Now if you actually
just say Python, you’ll go into the
shell and you’ll get some really bad warnings
because Python 2, as of the recording
of this moment is actually out of support. If you ever get into this
triple Chevron prompt, you just say quit, close paren, and that
will get you out of it. Because macOS used Python, let me do a clear here. Because Python is used inside macOS and
they use Python 2, we tend to have to
install our own copy of Python and it will
show up as Python 3. Now if you just type
Python 3 minus, minus version and you
already have a python, then don’t bother installing it. I don’t want to install the developer tools so I’m just going to say
Cancel right here. It might be part of that, but I just rather install the official Python
distribution. We’re going to go to python.org and click on ”Downloads”. It knows, it’s already figured
out that on my Mac so I’m going to download Python 3.11. You just download the
latest one, you’ll be fine. That download is now completed. Going to open it up and click on it and we’re going to go
continue, continue, continue. I agree. Now it’s installing. It’s showing me a folder
with Python in it. I’m going to click ”Close”
my downloads and so it seems to be installed. We’ll go ahead and move the
installer to the trash. Then I’m going to come over
here and I’m going to start python 3 minus, minus version. Let’s close this and
open terminal again. Python 3 minus, minus version. There we go. You
notice I had to close my terminal and open
it again because this shell needed to see the new software so
you can do that. You won’t have to do that again. There’s a command you
can type that might fix that by just say rehash. That says, look, those doesn’t even have it so I’m wrong there. But eventually you wanted to see Python 3 minus, minus version. Away we go so you have
Python installed. The next problem you need is you need a programmer editor. You don’t want to use TextEdit. Mac comes with this
thing called TextEdit, don’t use this because it
saves in a weird format called RTF so don’t use
TextEdit, just don’t use it. You’ve got to find a
programmer editor. If we take a look at
Python for everybody, we have this page
called editors. Now the best editor depends, you may already have an editor. If you have an editor, keep it. We have a couple of
recommendations, brackets, which is a super
simple one VS Code, which is really nice, but the installation
can be a little tricky. For Beginners, I’m just
going to recommend brackets. But if you have one, you like one you like Sublime, over the years that we’ve
been teaching this course, there’s just been so many editors that
have come and gone. I probably should put a
little thing on here that says all the editors that
we don’t use anymore, or all the recommended
editors that we don’t use. Brackets io is for now, I like it, it’s open
source, it’s free, it looks to me like
it’s going to stay free and open source and
it works on Windows, Mac, and Linux and
so I like that, so I’m going to download that. We’re going to open it. Just click on here, open it. Here is the bracket
GitHub, which is nice. I’m just copying it from the brackets code into my
application folder and the applications is
where on the Mac you put things that
are going to be run. Now I’m going to
just close this. I’ve got a couple of
things on my desktop here. That’s the brackets mount point. Now to run brackets, I’m going to go up to
my search and type brackets and click brackets. I’ll go ahead and
hide this page. Yes, it’s wanting to make sure I’m not installing
some bad stuff. Here we have brackets. It’s a nice simple
editor and it starts up. I’m going to close this window and I am going
to create a new file. I’m going to say print “hello world” then I’m going
to save this file. One thing that you’re
going to have to keep track of is where you’re at. Users admin, this desktop
is in user’s admin desktop, so I’m going to change
directory into desktop, pwd print working directory so you see in user’s admin desktop. I’m going to make a
directory mkdir py4e. Then I’m going to change
into that directory. Like I said, it’s
a good thing for you to learn all these things. Now I’m in the folder py4e. If I look on my desktop, I’ve got this folder py4e that currently has
nothing in it. This terminal and this
folder are the same thing. Now I’m going to File, Save As and I’m going to
go into my desktop and go into py4e and I’m going to call this file hello.py and
I’m going to save it. Now at this point it knows
it as Python file and brackets knows what Python
syntax highlighting is, so that’s quite nice. If I look in py4e, I see there is a file. If I look in it in terminal, and I say ls minus l, I see that final as well. To run that file, I
say python3, hello.py. With that, I have created
my first Python program, I’ve installed a text editor, I’ve installed Python and
created my first program. I hope that you
found this useful. See you in the rest
of the course.

Video: Macintosh: Taking Screen Shots

  • The Macintosh has a built-in tool called Preview for taking screenshots.
  • Preview is primarily used for viewing PDFs but also has screen capture capabilities.
  • To access Preview, go to Macintosh hard drives, then Applications, and search for Preview.
  • It is recommended to keep Preview in the dock for easy access.
  • To take a screenshot, open the desired window or program, then go to Preview and select File.
  • Choose the most logical option for capturing the screenshot, such as grabbing a rectangular selection or a specific window.
  • After capturing the screenshot, it will be displayed as an image in Preview.
  • To save the screenshot, go to File and select Save As. It is recommended to save it in a non-Apple format like JPEG.
  • By default, screenshots are saved to the desktop with a long name. It is advisable to clean them off regularly.
  • Preview also offers additional features like cropping the image to improve its appearance.

Hello, and welcome to the podcast on
taking screenshots on the Macintosh. Nicely, the Macintosh has
a very simple tool built in. We go into Macintosh hard drives,
we go to Applications, and then we search down for Preview. Preview, right here. So Preview.
And I’ll close this now. So we’ve got Preview. Preview’s the application that was
originally built to view PDFs on the Macintosh. But it also has a whole series
of screen capture capabilities. And I like to keep Preview
in my dock all the time. So I come down here on the Preview icon. And it’s already in my dock. If I said remove from dock, and
then I would say keep in dock. It was already there, as soon as I start
Preview, I always keep it in the dock. But all the things I need to
use all the time in the dock. And so, let’s take a screenshot. I’ll just sort of start a jEdit program. And I’ll say take me as a screenshot. Whatever. Doesn’t matter. Just this is the window that
I want to take a picture of. This window right here. So I go to Preview, and I say File. This is in the most logical place. Begin to grab a rectangular
selection in which you’ll be allowed to draw with your cursor or a window or
the whole screen when timed. 90% of the time, what you really
want to do is take a window. You can say grab window, it tells you
you can grab, go over different windows, I can click here, I can click there,
I can click there. And I just want to capture this windows. So click, I go like that. Now, here is a little weird. This is now on image, okay? And so,
you can’t click on this stuff, okay? That’s that. So what you need to do. I’m going to close
the original real window now. This is my J Edit,
I’m going to Cmd+Q get rid of J Edit. And I do not want to save that file. So now, I’m in Preview. See, I’m in Preview here. And so, I’ve got this as an image. Now, the one thing it does is it
always saves it to your desktop. So which gets to be sort of
painful after a while. It gives them these long names called
Snapshot that has the date, and stores it in this format capped Tip. So I prefer to switch it
to a non-Apple format. So I want to do a Save As. And I’m going to save this as a JPEG. And I give it a better
name called first image. And it’ll be a JPEG, and
I’m going to store it right on my desktop. So now, here we have first image, okay? And I can click on that and
take a look at it. I’ll close this. Click on it. Interestingly, it just
comes back up in preview. So that’s pretty much it. This would be the file you would
upload if your job was to do this. I’ll show you a couple other tricks I like
to make my images a little bit better. Preview has a simple tool for cropping. And the way you crop something is you say, you draw a rectangle here on the image,
and then you say Tools > Crop. And now, I’ve gotten rid of all the rest
of that image except that which I want. And I’ll say save this as,
I want to save it as a JPEG tiny. And so, I now have two images, I got
that first image and this tiny image. And there it is. I’ll use Apple+W to quickly close it. And so, the one thing is is you just,
after a while, these snapshots fill up on your desk,
and so just keep cleaning them off. And if you were uploading
to hand in a screenshot or whatever, this would be
the filet that you upload. So that’s pretty much all there is. Use the preview command to take
screenshots with the grab. And typically, it’s grab window, okay? Thanks.

Optional: Python Installation


Bonus Materials


Video: Bonus: Eben Upton and the RaspBerry Pi

The Raspberry Pi is a computer that was created by the Raspberry Pi Foundation to make computers more affordable and accessible to people of all ages. The Raspberry Pi is a single-board computer, which means that all of the computer’s components are mounted on a single circuit board. The Raspberry Pi can be used for a variety of purposes, including education, gaming, and robotics.

The Raspberry Pi was created in 2011 by Eben Upton and his colleagues at the University of Cambridge. Upton and his colleagues were concerned about the declining number of students who were studying computer science, and they believed that the Raspberry Pi could help to reverse this trend.

The Raspberry Pi is a very affordable computer, costing as little as $25. This makes it an attractive option for schools and parents who are looking for an inexpensive way to introduce children to computers. The Raspberry Pi is also a very versatile computer, and it can be used for a variety of purposes.

One of the most popular uses of the Raspberry Pi is for education. The Raspberry Pi can be used to teach children about programming, electronics, and robotics. There are a variety of educational resources available for the Raspberry Pi, including books, websites, and online courses.

The Raspberry Pi can also be used for gaming. There are a number of games that are available for the Raspberry Pi, including Minecraft, Sonic the Hedgehog, and Doom. The Raspberry Pi can also be used to emulate classic video game consoles, such as the Nintendo Entertainment System and the Sega Genesis.

The Raspberry Pi can also be used for robotics. There are a number of robotics kits available for the Raspberry Pi, which allow users to build their own robots. The Raspberry Pi can be used to control the robot’s movements, sensors, and actuators.

The Raspberry Pi is a powerful and versatile computer that can be used for a variety of purposes. It is an affordable option for schools and parents who are looking for an inexpensive way to introduce children to computers. The Raspberry Pi is also a great option for adults who are looking for a fun and challenging hobby.

[MUSIC] [MUSIC] >> Just look, looking around in
2005, 2006, at the number of people applying to study computer science, and just this
sudden horrible realization that we had driven off a cliff. And, you know, kind of like Wile E Coyote,
you know, we’d driven, we’d gone off a cliff, and now we look down,
and, yeah, we’re in real trouble. So, so, yeah, it was just trying to eke our way back towards that
1980s world, in which every child who had wanted to be a
computer programmer had a machine that they could
use to learn on. Then there was this period of three or
four years, five years, where we were just kind of grinding through iterating
different, first of all iterating different processor
architecture choices, different vendors. So we started off with something that
actually looked a lot like an Arduino. Turns out you can take one of those.
We wanted it to be a real computer, we wanted it to be a
computer with a user interface. And it turns out you can take those
microcontrollers that are in, in the Arduino, and you
can make them generate a video signal if you,
if you clock them hard enough and you write the right
software for them. You can make them generate a component video, a standard-definition
component video signal. And so we started off. I had a, I still have it, it’s a piece of aeroboard which is about that
sort of size, which has a, an Atmel chip
on it and a block of SRAM. And it gives you actually a very kind of a
1980s computer experience. And the lovely thing about it is because they’re all 0.1-inch
through hole components, you can build it yourself, you can
build it in it takes about an afternoon,
a rainy afternoon. You can go in with a piece of
aeroboard and some chips come out with a, come out
with a computer. And that seemed like a really nice idea,
but when you take it and you show it to children, what you’ll find
is they’re not really, it’s not exciting. You know, it’s not contemporary. It’s not, it’s not modern. You know, people, those computers
we got in 1980s, we didn’t necessarily get them
to learn to program on. We got them to play games on, to,
got them to do other things with. And they just, wheedled their way
into our lives. Right? They, they, they snuck into our lives and once they were in our lives, then we
learned to program. We didn’t necessarily get them. Yeah, and so, so really I think
probably most of that five-year journey was about seeing if
we could reconcile the idea of a $25 computer with a, with a feature set that would make it
attractive to a modern child. And another thing we found with all of these, with that and with some subsequent
architectures we tried, what we found, all of which were based on kind of very special-purpose pieces of
hardware, you know. What we found was we were having to
everything ourselves. So we were, we were writing our
own SD card drivers, and our own terminal software, and
our own keyboard drivers. And, you know, you end up doing an enormous amount of work because you’ve chosen to,
you have cheaped out on some aspect of the hobby. You’re using some, some wacky DSP as your,
your processor. You’re writing this giant
software stack yourself. And it was only really at the point
where we, getting, from a point where we put an arm,
we were lucky enough. So I, my day job for most of that period
has been working for, working for a company called Broadcom, they’re a big famous
semiconductor company. We make chips for communications.
Pretty much every communications application has a, has a,
has a Broadcom chip. And you know, we were, we’re looking,
we were looking at a range, we took the Raspberry Pi concept
through a series of Broadcom chips, seeing whether we could
get something compelling. And we were very lucky that towards the
end of that period, one of these chips ended up with
an arm in it. So we made that leap from a, from the
special-purpose world with us doing all the work into a very general-purpose world where really what we’re making
is an arm-like Xbox. And so we, we’re a not-for-profit. You know, our funding came from
a couple of us throwing money in a hat,
you know, quite a lot of money in a hat, but you know,
it was quite a big hat. But you know, it was, that
seemed seemed appropriate. But the thing that was really surprising
to us after we announced in 2011 after it kind of almost leaked out, it was just kind
of a slip of the tongue, you know. [LAUGH] We didn’t, so we were
surprised by the level of interest. And it became apparent to us that we really weren’t going to be able to
manufacture these. We weren’t going to be able to
manufacture them in anything like the numbers that were going to be
required to suit the demand. And that’s why, you come see us,
if you go look back at our web site, you see us in 2011
talking all about manufacturing. And then towards the end of 2011,
start of 2012, our entire business changes, so we become
a, a licensing company. So what we are now is this very
capital-light licensing company. We design this. We, we work on the brand. We work on the software. We work on the hardware. But all of the manufacturing, or the
capital provision, or the logistics, they’re all
provided for us by our partners. We have a couple of partners, RS components and Premier Farnell,
who are kind of multi-billion-dollar electronic component distributors,
and that’s really the thing that’s let us go to scale. The really wonderful thing is
that we were able, in terms of who does the
manufacturing, you know, like everyone else, they don’t
manufacture, they commission manufacturing from a
third party, from a CEM. The wonderful thing for us was that
last year we were able to move back,
move our manufacturing back. So we started building, like everyone else,
when you say I’m going to build something cheap, where am I going to build
it? I’m going to build it in China. And, over the course of the last year, we’ve steadily reshored
manufacturing of these things to a point where now 100% of these
are being built in South Wales. So they’re being built in the UK. So that level of support, having these,
these kind of big UK PLCs on our side has given us the kind of level of volume and the
level of support that we needed in order to really
make that happen. >> What is really on this little
little chip? That’s like a whole, that’s pretty much
it, right? >> That’s pretty much it and
really you can see the Raspberry Pi almost as being a breakout
board for that chip. So this chip’s called BCM 2835, it was designed here in Cambridge,
it was designed by the by the team that I’m, I’m a member of
just about two miles away from here. It’s a, it was originally intended
as a coprocessor, it was intended as a multimedia
coprocessor for a mobile phone. So if you’ve got a mobile phone platform
that’s performing well, because maybe it’s half way through
its life, and you want to give it a little bit of a shot
in the arm and bring it up to, to particularly maybe five years ago
when we were moving from a world of really fairly simple
mobile phones to a world in which every mobile phone is
expected to have video playback and good camera processing
and 3D, 3D graphics, this could be used as a shot in the
arm processor to allow you to to bring an old platform up into,
up into the modern era. And then the last one of them grew an arm. So this thing already had a, already had
most of the other stuff you needed. It could drive an HDMI display. It could drive a standard-definition
display. It could have a 3D accelerator and a video accelerator and a
camera processor and some DSP and a USB controller, which was kind
of a unusual feature to have in there. And really, what we found was that we, we were looking at this chip. Man. We are only an arm away. You know? We’re only an arm core away from this being a a pro, a computer. A single chip. A single-chip computer. So we were lucky enough to be able to get
an arm core into the, the, the last step in the 2835, the final
productional step grew an arm 11. And that’s what allows us to relax. The really interesting thing is being that
most of what, a lot of what people have done with this, has
been hardware hacking, you know. We have this, these GPIs here,
which for me were kind of a little of an afterthought
in the design, but in practice a lot of the cool stuff people have been
doing, adults and children, have been about using this
as a machine. Because you, you ask what can this, is
this just a cheap PC? What can this do that a PC can’t do? And in a lot of ways it is just a
cheap PC. But this stuff is something that,
you know, your most expensive PC can’t do without an
add-on, an add-on card. And so people have been, you know,
taking these. They’ve been putting them in boats, and they’ve been
putting them in planes, and they’ve been putting them
under balloons and sending them up to the edge of space. And they’ve been using them to
automate their homes. There’s a wonderful example someone had
the other day of an augmented microwave. He’d taken an old microwave and
completely overhauled the, the, the user experience of using this microwave
so it had, like a new, a new touch panel on, it had
voice commands, it had a web interface so you could control it
from your IPad. It had a bar code scanner, so you could
scan your, the product. And he’d built a database of mapped bar
codes to cooking instructions, so you could just scan it, put it in,
and it would cook it for you. And he built this thing with a
Raspberry Pi, you know? These, it’s given people access to a kind
of a level of technology. It’s given people access to a
platform that they can use to do all this really
amazing stuff. And so it’s wonderful because,
you know, a lot of people doing this are
adults, right? But the lovely thing is, a lot of these
things adults are doing with it feed immediately into the range of
projects that are available for teachers. We take this and we take it into schools,
and at the end of the lessons, mixed-ability classes, you know,
at the end of the lessons there’s always a hard core of
kids, boys and girls, who you have to basically pry this little
thing out of their hands. Because, you know particularly if it’s
their first experience at programming. And even if they’ve done
something very simple, like taken a, we, we often use like a snake game, and even if they’ve done
very simple stuff like change the color of the snake or make the snake go a little bit faster,
that kind of power, you can see it in their eyes. You know, they are like, hang on a second,
I can make this machine do what I want. And, and for some, for, for, for a sizable
minority of children, that’s a really, as it was for me, I think
a transformative experience. [MUSIC] [MUSIC]