~/code-camp/welcome.py
$ python3 welcome.py

Welcome to
Code Camp.

2 tracks 8 lectures 📓 4 lab notebooks 1 group project built for teams of 2 📅 Jun 22–25 · 1–4 PM
Your rank Booting up…
0%0 / 18 done

Tap Mark done on anything you finish — your rank levels up as you go. Progress saves on this device.

# the_plan — 4 days, two sessions a day

Camp Schedule

Monday June 22 – Thursday June 25, 1:00–4:00 PM each day. Every afternoon packs in a Python session, a Secure Python session, and project time to build your game with what you just learned.

Python Secure Python Project lab Demo & finish Break / lunch

Times are a guide — your camp leader may shift things around. Bring your laptop, your curiosity, and a partner.

# daily_notebooks — code along in Colab

Lab Notebooks

Each day has a hands-on notebook: clear explanations, runnable examples, labs with TODOs, challenges, and full solutions at the bottom. Download one, then open colab.research.google.com → File → Upload notebook (or run it in Jupyter). Press Shift+Enter to run a cell.

DAY 1

Python Foundations & the Security Mindset

Variables, types, input(), and if/else — plus the golden rule: never blindly trust input.

⬇ Notebook
DAY 2

Loops, Functions & Defensive Programming

Loops, lists, dictionaries, and functions, then try/except and validation that refuses to crash.

⬇ Notebook
DAY 3

Data, Passwords & Security

Files, the CIA triad, password hashing and salting with hashlib, and spotting hardcoded secrets.

⬇ Notebook
DAY 4

Capstone: Secure App & Ethics

SQL injection and its fix, a full secure-account capstone, and the ethics of using these skills.

⬇ Notebook
# track_01 — learn to code

Python Track

Start from zero and build up to writing real programs. Four lectures, in order — each one unlocks a piece of the project.

01

Hello, Python

Your first programs: print, comments, and how to read an error without panicking.

⬇ Slides
02

Variables & Data

Store information, the four data types, getting input, and clean text with f-strings.

⬇ Slides
03

Logic & Loops

Make decisions with if / elif / else and repeat work with for and while loops.

⬇ Slides
04

Lists & Functions

Hold many values in a list, then package your code into reusable functions.

⬇ Slides
# track_02 — break it, then defend it

Cyber Security Track

Once you can code, learn to code safely. Think like an attacker so you can build like a defender.

01

Think Like a Hacker

The security mindset, trust boundaries, and the golden rule: never trust user input.

⬇ Slides
02

The Usual Suspects

Injection, eval, pickle, path traversal — the bugs attackers reach for first, and the one-line fixes.

⬇ Slides
03

Keeping Secrets

Hashing vs encryption, never storing plaintext passwords, and handling API keys the right way.

⬇ Slides
04

Defense in Depth

Dependencies, safe logging, deserialization, and the habits that ship secure software.

⬇ Slides
Play the Quiz Battle
# project_steps — build the game, day by day

Project Milestones

As you work through the notebooks, you and your partner build the Trivia Challenge game one step at a time. Each step has one thing that must work before you move on.

# final_project — build the whole thing

The Group Project

The Trivia Challenge · teams of 2

Build your own quiz game 🎮

You and a partner build one Python game from start to finish — a little more each day, using exactly what you just learned. Pick any topic: music, sports, your school, games, anything. The skills are the same; the fun is in the theme.

Welcome greet the player by name
Ask 5+ questions from a list
Score check answers, give feedback
Organize functions & comments