Teaching Python to Secondary Students

Sanjin Dedic
Teacher, Robotics Engineer, Learning Designer
Discover the wonderful simplicity of coding in Python and come back to your class ready to teach everything from automated maths solvers to text based games.
Target Audience
Secondaray Digital Technologies Teachers
8 reviews

Learning Areas

Teaching Standards

General Description

Python is an interpreted text based general purpose programming language, which is a key requisite of the 7-10 Digital Technologies Curriculum. Python is also the only professional programming language that was designed with beginners in mind, it is intuitive and easy to use.

This course will take teachers through an 11 lesson learning sequence in Python and then go on to provide student handouts, activities and lesson plans to teach the whole learning sequence.

Content covered:
• Definitions and example code containing variables, loops and if statements
• Coding of a chat bot to simulate an intelligent conversation
• Coding of an authentication program
• Creating an algorithm as well as code for a game where user guesses a number and the program informs the user of his accuracy over time
• Encryption, its history, its most popular algorithms and their implementation in code

Australian Digital Technologies Content Descriptions Covered:


Secondaray Digital Technologies Teachers

Available Delivery Formats

This course contributes to 5.0 professional development hours.


There are no occurrences of Face to Face in Australia (NSW) at this time.


Introduction to Python Variables, Data Types, Loops and If Statements

1 hour

In this session we will learn about Python and why it is probably the easiest text based language to learn and teach. We will write short programs that use variables, loops and if statements to generate times tables and text based images.

Creating a Guessing Game and an Authentication Program

1 hour and 30 minutes

In this session we will combine a loop and a set of if – else statements to create a guessing game where the user guesses a number from 1-100 and then receives hints after wrong guesses. We will then look at how to scaffold this activity into 3 distinct steps for the weaker students and consider extension tasks (authentication program) for the advanced students.

Defining an Ideal Mindset for Your Students

30 minutes

Success in coding only becomes possible when the students begin to enjoy grappling with complex problems. In this session we will look at how to set the tone for each coding lesson and mentally prepare our students to deal with bugs and error messages.

Functions and Strategies to Manage Complexity in Code

1 hour

In just a few weeks some of your students will write programs in excess of 100’s of lines of code. In this session we will look at the most effective way for coding beginners to manage complexity. This is creating well defined and commented functions. We will apply functions to encrypt and decrypt a message and finally we will look into how functions can be used collaboratively allowing multiple students to work on the same program.

Assessments and Resources to Cater for Differences in Student Ability

1 hour

In the last session we will review several differentiated assessments and discuss both the marking and the student feedback.

Finally we will look into some highly scaffolded and trackable resources like Code.org and Grok Learning as well as online competitions ideal for advanced students like Project Euler and The Advent of Code.

What To Bring

Participants should bring the following:
a Windows, Linux or MAC laptop (iPads will not suffice)
A highlighter will be useful in case you wish to annotate handouts

User Rating


Latest Reviews

Please note the feedback listed here is unfiltered, and includes all comments and ratings collected.

Teaching Python to Secondary Students
by Tony Shen on 28/03/2018

Well organized. Very methological, very clear.

Teaching Python to Secondary Students
by Mark Taylor on 28/03/2018

Good content and well taught.

Teaching Python to Secondary Students

Fantastic resources, clear instructions from presenter. Very knowledgeable. Pertinent to the classroom.

Teaching Python to Secondary Students

Enthusiastic, helpful and skilled trainer.

Teaching Python to Secondary Students

More time on definitions and fundamentals would be great. Analogies and examples are great.

Teaching Python to Secondary Students

Good fun. Informative. Great starting point.

Teaching Python to Secondary Students

Knowledgeable presenter with a lot of excellent resources.

Teaching Python to Secondary Students

Thank you. Good resources.

About the team

Sanjin Dedic


Sanjin Dedić has a B.Eng in Mechatronic Systems majoring in Robotics and Computer Vision and spent several years working industry as an Engineer. He then retrained as a teacher and taught Systems Engineering and Digital Technologies at a secondary level. Recently he has been developing a series of technology programs for G.A.T.E.WAYS (gifted and talented education) covering everything from coding, robotics, applied mathematics and microcontrollers. These programs have been delivered to students in Melbourne, Sydney, Canberra and Queensland. As a head of eLearning at Techxellent he has combined his technological expertise with his educational experience to create innovative teacher training programs and resources.