Skip to content

Latest commit

 

History

History
26 lines (22 loc) · 1.38 KB

for-teachers.md

File metadata and controls

26 lines (22 loc) · 1.38 KB

For teachers

Intended educational outcomes (this page will later be updated with references to the UK computer science GCSE curriculum, and maybe others):

  • Get comfortable reading code. The project will involve reading a Python web browser containing about 100 lines of code. It will be covered in comments and won't assume more than basic Python knowledge - but still, reading large amounts of code is a skill in itself. There will be games based on finding the right place to add small new features, which will be mostly about figuring out where to add them.
  • Understand encryption. We'll demonstrate, using a Python web browser and a Python web server, how unencrypted HTTP traffic can be intercepted, and how HTTPS can't.
  • Understand networking. We'll see the requests and responses flowing back and forth between the web browser and web server.
  • Understand security bugs. There are games to find some hidden security bugs in the web server.

Because this involves a web server and a web browser, these exercises can't be run on an online Python REPL. The kids will need a real computer capable of running Python locally, and they'll need to be able to install a few Python libraries using pip. You should carefully run through the setup requirements before deciding if this project is right for you.

You may find solutions at this page.