Start Programming in Python with Instructor and National Cyber League Managing Player Ambassador Tristan “wolfshirtz” Messner!
Tristan “wolfshirtz” Messner’s “Beginner Python” bootcamp is composed of two webcast series hosted on Crowdcast, which you can access by clicking the links below:
- Beginner Python: Up & Running
– Session 1: Dec. 5, 2020
– Session 2: Dec. 12, 2020
– Session 3: Dec. 19, 2020
- Beginner Python: Start Scripting
– Session 4: Jan. 9, 2021
– Session 5: Jan. 16, 2021
– Session 6: Jan. 23, 2021
Part One focuses on teaching basic developmental concepts and simple programming, while Part Two teaches students how to build small applications and real world projects.
Don’t worry if you miss the live broadcasts—all sessions are recorded and made available to replay at your leisure!
All slides and course materials will also be graciously open-sourced by wolfshirtz at this repo:
Below is the course outline:
Session 1 – Dec. 5, 2020 1. An introduction to the course 2. Common software development practices and terminology a. Dependencies b. Code style guide c. Commenting d. Documentation 3. Installing courseware a. Your preferred text editor b. Python 3.5+ c. Pip with pipenv After session work: Getting your python environment set up. Session 2 – Dec. 12, 2020 4. Getting started with python a. Creating a workspace for a project or script i. Creating a directory structure for your code ii. Using pipenv to ensure project dependencies are correctly installed b. Hello world i. Add a main.py file to our previously created workspace ii. Adding hello world code to the file iii. Explain variables, types and functions c. Operations and comparisons i. Basic math in python ii. If and else d. Looping i. While ii. For After session work: Write a script to calculate how much the tax on an item is. Session 3 – Dec. 19, 2020 e. Lists, Dictionaries, and iterables i. Lists ii. Dictionaries iii. Iterables f. Objects and types continued i. A simple overview of objects 1. Methods ii. All types are objects iii. Parent child inheritance After session work: Create a system for recording keeping by using a dictionary. Bonus points if each entry is a self defined object. This system will keep track of names, phone numbers and home addresses. Session 4 – Jan. 9, 2021 g. Modules i. Importing modules 1. Usage structure ii. The standard library 1. File and other I/O 2. Functional programming iii. Installing third party modules with pip and pipenv 1. Researching third party documentation 2. Best practices for using third party modules iv. Writing modular code After session work: Create a script that interacts with a file. Pick a library from the python standard library and use it in a script (Os, sys, JSON, or CSV are recommended). Read the documentation for a popular third party module. Session 5 – Jan. 16, 2021 h. Project 1 - A mini flask REST api and client i. Rest APIs, web apps, and http ii. What is flask iii. The basic structure of a flask app 1. A quick aside to decorators iv. What is requests v. Making a request After session work: Create a REST api that returns values from a JSON file on disk and then also implement a client using requests. Session 6 – Jan. 23, 2021 i. Project 2 - Making a clone of grep i. What is grep? ii. Re: regular expressions in python iii. Argparse: Parsing command line arguments in python iv. Using sys to readlines like a pipe After session work: Implement case insensitivity, inverse matching, and any other grep features desired. Notes: – Session 6 is subject to change. – A Session 7 may be added to include Jupyter Notebooks.
Please share your feedback in the comments!
If you have your own area of expertise and would like to mentor through the CryptoKait.com website, please apply for Feature Friday and let us know!