Youth Coding Course: Programming in Python for Ages 10-16 with CTF Challenge
Python is one of the most popular programming language used in the real world for web applications, data analytics, artificial intelligence and many other applications. Many world famous websites are built on python, including Instagram, Dropbox, Netflix, etc.
This is a fun introduction to text-based programming using the Python language over 4 sessions of 3 hours each. Sessions 1 and 2 focus on the basics of computer coding and introduction to the Python programming environment. Sessions 3 and 4 will cover simple algorithms, functions and some graphic effects. We will end with building simple but fun games on the last day!
To make the whole learning experience fun, we will have games, quizzes and will end with a cyber-style, Capture-the-Flag (CTF) challenge on the last day! The CTF is a live challenge with 8-15 python coding challenges from easy to difficult and encourages the students to reinforce and recap what they have learnt. There will be a live scoreboard as they crack the challenges and the top 3 winners will get a mini prize!
This class is ideal for secondary school students who want to have an exposure to the real world of coding and creating your own games! Upper Primary School kids with good foundations to programming knowledge (eg. Intermediate Scratch) are also welcome. Certificates of Participation will be awarded to everyone with >75% attendance.
Sessions 1 and 2
- Learning to be a Coder
- How Computer Programs Work
- Thinking like a Computer
- Many Types of Programming Languages
- Introduction to Python
- Setting up Python Environment
- Hello World in Python
- Syntax and Errors
- Code and Shell Windows
- Fun Facts and Knowledge about Computers
- Hardware: Processor, Memory, Input and Output and Storage
- Files and File Structures
- Processors and Memory
- Bits and Bytes
- Binary, decimal and hexadecimal counting
- Python Basics
- Program Flow
- Simple Math Calculations
- Variables
- Data Types: Numbers
- Data Types: Strings
- Data Types: Booleans
- User Inputs and Outputs
- More Fun With Python
- Logical Operators
- Number Comparisons
- String Comparisons
- Branching and If-Else conditions
- Doing things again and again: For Loops
- While Loops and Escaping Loops
- Basic Data Structures and Functions
- Lists
- Functions
- Types of Bugs and Troubleshooting
- Building simple games: The Joker Game and Funny sentences
Sessions 3 and 4
- Python Functions and Algorithms
- Recap of Python Functions
- Global and local variables
- Algorithms and basic sort functions
- Libraries and imports
- Graphics Fun in Python
- Creating a User Interface Windows using Tkinter
- Colours
- Co-ordinates
- Shapes and Moving shapes
- Capture-the-flag challenge
- Live challenge of 8-15 python coding questions to crack
- Ranges from easy, intermediate to difficult
- Online scoreboard to show live progress
- Conclusion
- Results and Recap of CTF Challenge
- Recap of Python Learning Journey
- Tips for future learning