Learn to program in Python with our online courses
If you’re new to teaching programming or looking to build or refresh your programming knowledge, we have a free resource that is perfect for you. Our ‘Learn to program in Python’ online course pathway is for educators who want to develop their understanding of the text-based language Python. Each course is packed with information and activities to help you apply what you learn in your classroom teaching.
Why learn to program in Python?
Compared to many other programming languages, writing a program in Python is closer to writing in English, which makes starting to program much easier (if you have some proficieny in English). Python is also a general-purpose programming language, so once you’ve learned the basics, you can use Python for lots of different programming activities.
That’s why Python is a perfect choice for learning to program, and why many of our educational resources involve Python. Our seven online Python courses cover aspects from taking your first steps into programming, to writing a program to control an electronic circuit, to learning about object-oriented programming.
With time and practice, you will be able to use Python programming to create unique solutions to problems, build helpful tools, and make things that are important to you.
How does the Python course pathway work?
The courses in the pathway have been written by our educators and include advice and activities to help you teach programming in your classroom. You can reuse the course activities to explain programming concepts to your learners and get them to write programs themselves. Because you will have first-hand experience of the activities, you’ll be able to anticipate your learners’ difficulties and adapt your lessons to suit them.
All the courses are designed to take three or four weeks to complete, based on you spending two hours a week on participating. You can have free time-limited access to each course for the length of time it’s designed to take to complete. For example, if it’s a four-week course, like ‘Programming 101’, you can sign up for free to get four weeks of access.
The seven courses in the Python path can be completed in any order you like, and you can choose the courses that match your interests and needs.
Each course involves activities that help you create a programming project using the concepts that you’re learning about. These activities are designed to be a fun and interactive way to reinforce what you’ve learned and can also be used with your learners in the classroom.
Course spotlight: Programming 101
If programming is completely new to you, our ‘Programming 101’ course is the best place to start. In ‘Programming 101’, we use this definition of programming to start with the idea that programming is about you telling a computer what to do:
“Programming is how you get computers to solve problems.”
We see programming as a chance to think creatively about a problem and about all the different ways it could be solved. While you might be unfamiliar with terms like programming, algorithms, or selection, the ‘Programming 101’ course demonstrates how they touch on things that many of us know from other areas of our lives.
On the course, you will:
- Learn about basic programming concepts such as sequencing and repetition
- Start to write your own programs
- Discover how to interpret error messages to find and fix mistakes in your programs
What will you make in the courses?
Through building an understanding of programming, you will see how you can write your own programs to make games, quizzes, physical computing projects, and more. Here’s look at some of the things you could make in three of the seven courses:
- Programming 101: Write your first program in Python to make a personal assistant bot. You’ll discover how to make the output of your program respond to the user’s input.
- Programming with GUIs: Build a game where players compare two sets of emoji to find the emoji that matches. To make this game, you’ll use what you learn in the course to design the layout of a graphic user interface (GUI) and make sure only one emoji appears twice.
- Object-oriented Programming: Create a text-based adventure game with a character on a quest through different rooms! You’ll discover how to write a program that reacts to user input, and how to write your own code to create more challenges within the game based on your ideas.
So check out our courses and start gaining Python programming skills today!
Python programming resources for young people
If you want to help your learners develop their understanding of programming in Python, you’ll be interested in these free resources we’ve created for young people:
Introduction to Python: Our guided project path for learners who are new to text-based programming. We have created these projects with young people around the age of 9 to 13 in mind. Each project takes one hour to complete, and learners can make their own fun programs while learning about Python.
More Python: Our guided project path for learners who want to move beyond the ‘Intro to Python’ path to write programs that contain charts, artwork, and more. We’ve written these projects for young people around the age of 10 to 13.
Isaac Computer Science: This learning platform we’ve created for GCSE and A level students (age 14 to 18) uses Python and other text-based languages to teach the programming concepts within England’s computer science curriculum.
8 comments
James Carroll
This is what I love about the Pi. The community and the Foundation are what take it above and beyond all of the Raspberry Pi “killers.”
Sreejith C
Yeah dude… I love this community too..
Martin Bonner
Writing a program in python is no more like writing English, than writing a program in C or Fortran – which is to say “not very”. People shouldn’t be scared of learning to program, but pretending it is easier than it is, will just put people off.
Raspberry Pi Staff James Robinson
I think the point here, and one reason why Python proves popular with educators, is that Python is designed to be more human readable than some other languages (at least at the level that school aged students are programming).
Python provides (in my experience) a smoother entry to text based programming, enabling them to apply familiar programming concepts through text. As their confidence and capability grows they can (again in my experience) identify and apply that understanding to new programming languages and paradigms.
We have adjusted the language in the blog above to hopefully make this clearer
John Williams
I am retired and looking to get some experience in a programming language like Python as I also like to work with the raspberry pi and I would like to get more involved in projects that involve the use of the GPIO.
Thanks
John Williams
My initial statement seems to have been lost from my comment and that was… Would this course work for me?
apologies
Raspberry Pi Staff Jan Ander
Hi John! Yes, it will. I especially recommend you check out the Programming 101, 102 and 103 courses, and definitely participate in ‘Teaching Physical Computing with Raspberry Pi and Python’
John WIlliams
Thanks for the advice
JohnW