Python Programming | Beginner | 06 Week Flex | Code Cryptography & Ciphers
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.
Other Details
External Resources
In addition to the Outschool classroom, this class uses:
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.
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
$17
weekly6 weeks
Completed by 25 learners
No live video meetings
Ages: 13-18