Open currency, time zone, and language settings
Log In

Python Programming | Beginner | 06 Week Flex | Code Cryptography & Ciphers

In this 6 week course, we will explore some basic programming concepts in Python to build ciphers, encode and decode secret messages, and learn about how cryptography works!
Sidney - KidsSpeakCode
Average rating:
4.8
Number of reviews:
(1,187)
Class

What's included

Class Experience

Welcome to Python Programming for Beginners: Cryptography and Ciphers - 6 Week Flex, an exciting 6 week course where we will learn the basics of Python, learn to use strings, cyphers, and codes to code and decode data of various types. We will read and write strings, learn about how cyphers evolved, code examples with string replace, advanced technology like hashes, Caesar cyphers, and more.  build programs that have file persistence, or memory, to store data in our programs. This course is great for those with a little experience in Python or for beginners, as we will be exploring both how to write simple programs and various methods to encrypt data.

Each module will have an in-depth video explaining the concepts and working through building programs to solve the weekly challenge and examples of concepts. From getting started with python and working on new projects, we will build up the skills to make our own programs and learn new ways to encrypt and decrypt data. The course will focus on fun and interesting examples to help students understand concepts that can be applied elsewhere.

Because this is a flex class, students will get detailed videos each week that cover the topic of the week. Each modules includes slides, code, and video for students to work through. Students will have a weekly homework assignment at the end of each module, and share their code or discuss their successes and failures in the  classroom. Learning from each other and discussing what works and what doesn't in an important part of programming, no one is perfect right away, and we have a lot to learn from each other as we try to collectively solve challenges. Students comment on each others code or approach to finding a solution. Students will be able to look at how the homework was solved, and will be provided with video feedback on their code. Feedback will be provided  so learners can work on improving their coding as we work through the course and build the skills need to learn programming.

Module 1: Using strings - we will look at printing strings in Python, exploring ASCII and plain text for encryption, and replacing strings to encode and decode data with the translate function

Module 2: Hide your data in plain site - In this module we will look at how we can write and encrypt plain code, as well as hide and search for letters inside of a secret message

Module 3: The Atbash cypher. Using a wheel cypher to encode and decode text.

Module 4: The Ceasar cypher and ROT13. In this module we will explore new ways to encrypt and decrypt data using the ideas we covered in module 3.

Module 5: Frequency and decryption. If we have no idea how to guess the cypher, we can look at some ideas of cracking codes based on substitution and frequency

Module 6: Modern encryption methods using hash for passwords. In this module we will explore more advanced password encryption methods and practice some examples.We will also look at image based steganography using Python or how to encode a secret message inside of a digital picture

Learning Goals

Students will learn how to write basic python programs, encode and decode data, understand concepts around encryption, and work on solving puzzles and cracking codes.
learning goal

Other Details

External Resources
In addition to the Outschool classroom, this class uses:
  • Repl.it
Sources
We will be using the free interactive coding platform repl.it to code in Python, share files, construct websites, and use Flask. No software is required to be installed on your computer for this course.
Joined October, 2020
4.8
1187reviews
Profile
Teacher expertise and credentials
I love teaching programming using fun and interesting examples because it helps students go farther than learning hard to contextualize concepts. Understanding what we are doing and why means that students will be able to apply algebraic concepts (like x+y) having understood examples like (red bike + blue bike) in a way that has context and meaning. 

I teach students at many different levels (from ages 10-80), many how to program for the first time. I think it's exciting to meet students where they are, and help them pick up a new superpower. Coding, and thinking logically in code can be fun, exciting, and a huge advantage in the digital world.

Reviews

Live Group Class
Share

$17

weekly

6 weeks
Completed by 25 learners
No live video meetings
Ages: 13-18

This class is no longer offered
About
Support
SafetyPrivacyCA PrivacyLearner PrivacyYour Privacy ChoicesTerms
Financial Assistance
Get The App
Download on the App StoreGet it on Google Play
© 2025 Outschool