A Turtle Tale • Learn Python in a Visual Way

A Python beginners’ course with a difference. It’s entirely visual.

What you will learn

Understand the fundamentals of writing a Python computer program

Understand the mindset needed for communicating with a computer through a program

Learn key foundational topics, including loops, defining functions, conditional statements

Gain confidence to write programs independently


This course introduces the fundamentals of programming through graphics-based projects using Python’s built-in `turtle` module. This is a fun way of learning the basics and you’ll also be able to apply your newly-acquired knowledge to other non-graphics programs.

A Turtle Tale starts from the basics and introduces all the key topics that are central to programming and Python. All the projects are graphics-based, including creating animations and some games, too. However, the key Python topics you’ll learn are universal.

I’ve been teaching Python for a decade and I believe in clear communication and in making sure students understand why things happen the way they do, and not just how to get things done. My teaching style is different. Try out the first few lessons and if it’s your style, then we’ll be together for a many hours.

No prior experience of Python or coding is required. This is a beginner’s course.


Or perhaps you’re not a beginner, but you’ve done a bit of coding in the past but didn’t carry on. It wasn’t you, it’s likely you didn’t find the resources that speak directly to you. I can’t promise my style is what you’re looking for, but you’ll know after the first few lessons!

In this course you’ll learn:

  • How to apply the key principles and mindset for communicating with a computer through programming
  • How to repeat blocks of code using `for` loops and `while` loops
  • How to store data using variables and using various data types
  • How to define your own functions to re-use code
  • How to use data structures including lists, dictionaries, and tuples
  • How to apply best practices when coding

This course will teach you all the fundamental tools, of course, but more importantly, it will teach you the right mindset for programming. This is just as important as learning all the programming techniques—if not more important.

The Story of Fred and Mary • Programming Basics

Welcome to the coding • What’s different in this course?
About a Turtle Tale
Installing Python and Other Tools
First Words and `turtle`
Finding Out What A Turtle Can Do
Different Types of Objects in a Python Program
Introducing Fred and Mary
Fred and Mary Go On and On • `while` Loop
Where’s Fred? • Using `print()`
Asking The Program To Make a Decision • `if` statements
Different Types of Objects (Again) • Data Types
Equals Equals Is Not The Same As Equals
Stopping Fred and Mary • Stopping The `while` Loop
Stopping When Mary Reaches The End Too
Your First Bug
Squashing Your First Bug
Reviewing Fred and Mary
Extra: Other ways of stopping the `while` loop
Extra: Changing The Font in `fred.write()`

Animating Python • Lists and More Loops

The Tale So Far
The Starry Night
Creating One Star
Creating Many Stars • The `for` Loop
More Objects • The Screen
Controlling When Things Are Displayed On The Screen
Finishing The Starry Night
Meet Monty (Introduction to the central analogy in A Turtle Tale)
Monty And Modules
When You Have A List Of Things To Store • Python’s Lists
Many Angry Turtles Screensaver • Getting Started
Many Angry Turtles Screensaver • Setting Up Many Turtles
Many Angry Turtles Screensaver • Looping Through A List
Many Angry Turtles Screensaver • Finishing Touches
More On Lists • Indexing and Slicing
More On Lists • List Methods

Bouncing Ball and Bouncing Balls

The Bouncing Tennis Ball
Another Way of Moving A Turtle
Dropping The Ball And Gravity
Bouncing Off The Ground
Losing A Bit Of Energy Each Time The Ball Bounces
Fixing The Disappearing Ball Bug
A Side Note: f-strings
Tossing The Ball Sideways (And Some Refactoring)
Dealing With The Walls
From One Ball To Many Balls
[Advanced Topic] Giving Each Ball Its Own Velocity

The Bubble Chase Game • Defining Functions

Introducing Functions and The Bubble Chase Game
You’ve Used Many Functions Already
Let’s Start
Planning the Game and Moving The Player Forward
Defining A Function
Binding A Function To A Key On The Keyboard
Teleporting The Player
Teleporting The Player Using A Function
Running The Program in Slow Motion
Creating A Bubble
Bursting The Bubbles
Adding A Timer
Stopping The Game
Controlling When The Game Starts
Running The Game Three Times In A Row
Local Variables In Functions
Finishing The Game, Finally!

Extra Section: Many Moving Bubbles in The Bubble Chase Game

Let’s Discuss The Updates To The Game
Many Bubbles
Many Moving Bubbles

The Marching Turtles • More Data Structures • Dictionaries

A Quick Introduction To This Chapter
Some Data Type Categories • Iterables and Sequences
Some Data Type Categories • Mutable and Immutable
Some Other Data Structures • Tuples
Some Other Data Structures • Dictionaries
The Red, Green, And Blue Turtle Groups
Performing An Action When The User Clicks On The Screen
Clicking On A Turtle
Grouping The Groups
Selecting Groups of Turtles
Disabling The Clicks
Moving The Red Group of Turtles
Concluding The Animation
This Tale Ends Here, But There Are Many More To Come
Extra lesson: One Very Last Update To The Marching Turtles Animation

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock

Check Today's 30+ Free Courses on Telegram!