Free interactive Python tutorials for beginners

Try it, debug it, extend it
Try it, debug it, extend it: Python tutorials

Over the next few weeks I’ll hopefully be publishing a series of 20 free interactive python tutorials for beginners.

Here’s the link to the list of resources

Each activity has four sections:

Theory: what you need to know if you’re in a hurry

Try it: working code snippets that you can adapt and use

Debug it: code sabotaged with common mistakes that you can practise fixing

Extend it: open ended project ideas for your to apply what you’ve learnt.

You can track your progress through each activity and generate a free PDF certificate showing your score at the end.

The first activity is all about getting your python program to output to the screen:

Making computing accessible for all

Making computing accessible for all

This series of posts aims is aimed at UK secondary school teachers to give some free ideas and resources in order to help make computing lessons engaging and inclusive in order to help attract more and more students to continue with the subject at GCSE and beyond.

When students are choosing their GCSE options they seem to love asking teachers why we chose to teach our subjects.

Often, I can almost see the cogs turning inside some of my students’ heads, weighing up whether they should choose Computing over Art; ticking off the benefits of each subject as they make the first real choice that might affect the rest of their lives.

Whatever they use to make up their mind – who teaches the subject / what their friends are choosing / what they’re good at / what they enjoy – there’s clearly a lot more that we can do to promote Computer Science as a viable, challenging, enjoyable and worthwhile option. The national figures show a pretty poor GCSE uptake of GCSE Computer Science compared to other eBacc subjects and an abysmal uptake by girls. Boys, whilst outnumbering girls at KS4 and beyond, are being outperformed by girls from KS2 onwards. So there’s definitely something not right there that needs addressing.

CAS include
CAS #include. Making computing accessible for all

I’ve been slowly working through the brilliant advice on the CAS #include site about how to ensure that my Computing lessons aren’t just catering for people like me and it strikes me that the way to be inclusive for all also looks and sounds like the way to be engaging and stretching for all. This post aims to share some of the mistakes I’ve made as well as some of the things I’m trying to put right to make sure that all students get the most out of their computing lessons, hopefully also boosting recruitment at KS4 too.

I’ve come up with 6 Cs to use as a checklist for planning engaging and inclusive computing projects:

09: Selection in Python

There are three main building blocks that all computer programs consist of: sequence, selection and iteration. This activity is designed to help you understand and use selection in python programs.

Tell your code how to make decisions
Selection: Tell your code how to make decisions

Selection means making a choice. You will select different choices hundreds of times every day:

What shall I select to eat for breakfast?

Which selection of clothes shall I wear?

Which people with I select to speak to today (and who will I try to ignore!)

examples of selection in everyday life.

Most programs need to be able to make choices too. You can write code that makes choices by using selection.

Contents:

Page 1: Intro

Page 2: The theory: learn what you need to know as fast as possible.

Page 3: Try it: try out and adapt some working python code snippets.

Page 4: Debug it: Learn how to find and fix common mistakes.

Page 5: Extend it: Choose a project idea to use your newfound python skills.

08: Sequence in Python

There are three main building blocks that all computer programs consist of: sequence, selection and iteration. This activity is designed to help you design and code your own sequences with python.

Plan the order of instructions carefully
Sequence in Python: Plan the order of instructions carefully

The colour of traffic lights follow a sequence that’s carefully planned. If the wrong lights show at the wrong time then you’ll probably agree that bad things will happen.

It’s just the same with lines of code: sometimes the order in which your lines of code run is really important. Sequence means running instructions in a set order to do what the program needs to do.

This activity gets you thinking about the order your instructions so that you can avoid common mistakes when writing python programs.

Contents:

Page 1: Intro

Page 2: The theory: learn what you need to know as fast as possible.

Page 3: Try it: try out and adapt some working python code snippets.

Page 4: Debug it: Learn how to find and fix common mistakes.

Page 5: Extend it: Choose a project idea to use your newfound python skills.

07: Python: Runtime errors

This activity is designed to help you learn how to recognise and fix errors that cause your program to crash when you’re writing python code.

Find and fix common errors in your code
Python runtime errors: Find and fix common errors in your code

The last few activities looked at how we can use variables and constants to store data and how to convert data between different data types.

There’s a good chance that you’ve come across some error messages whilst trying, debugging and extending your python code.

As mentioned before, there are three types of errors you’ll need to be able to find and fix: syntax errors, logical errors and runtime errors.

This activity focuses on runtime errors: what they are, how you can avoid them and how you can fix them.

Contents:

Page 1: Intro

Page 2: The theory: learn what you need to know as fast as possible.

Page 3: Try it: try out and adapt some working python code snippets.

Page 4: Debug it: Learn how to find and fix common mistakes.

Page 5: Extend it: Choose a project idea to use your newfound python skills.