Table of Contents
Week 1 / Day 1: Getting Started & Setup
Chapter Goal: The first week of any course is always slow. It will encompass setting up your environment, information about the book itself and python, terminal commands, how to use the tools you’ve downloaded and eventually end in creating a small 7-10-line project. Now the project will be basic but will incorporate concepts that students won’t understand yet. The reason for this is to get them to see the power of Python in action, which will create a desire to read further.
No of pages 15
Sub -Topics
1. Monday: Introduction (Why python? Who is this for? Etc.)
2. Tuesday: Setting up Anaconda and Python
3. Wednesday: How to Use the Terminal
4. Thursday: Using Jupyter Notebook
5. Friday: Creating Your First Program
Week 2 / Day 2: Python Basics
Chapter Goal: This week begins the readers journey into becoming a Python programmer. They will begin to understand basic syntax, what kinds of data types there are, how to save information into variables, and how to manipulate strings. The Friday project session will take all these lessons and walk the reader through making a receipt printing program that neatly prints out the information saved in variables. The most important lesson this week will be variables, which will encompass most pages to deeply explain why they are important and how they are used.
No of pages: 20
Sub - Topics
1. Monday: Comments & Basic Data Types (numbers, strings, booleans, lists)
2. Tuesday: Variables
3. Wednesday: Working with Strings (concatenation, format)
4. Thursday: String Manipulation
5. Friday: Creating a Receipt Printing Program
Week 3 / Day 3: User Input & Branching Statements
Chapter Goal: Having already understood how to save information into variables, this week will begin to make use of the conditional statements. The reader will have the ability to create a working calculator at the end of the week, while taking in two numbers and choosing to add, delete, multiply, or divide them.
No of pages: 20
Sub - Topics:
1. Monday: User Input & Type Converting
2. Tuesday: If Statements
3. Wednesday: Elif Statements
4. Thursday: Else Statements
5. Friday: Creating a Calculator
Week 4 / Day 4: Lists & Loops
Chapter Goal: Lists are one of the most important concepts of Python, which is why they are covered over the course of two days. The ability to add, read, and remove information from lists is pivotal going forward. The other major concept covered is loops. Again, one of the more important programming concepts it will be covered over two days with two separate types of loops. A small working game of Hangman will be created by the end using both concepts.
No of pages: 20
Sub - Topics:
1. Monday: Lists
2. Tuesday: For Loops
3. Wednesday: While Loops
4. Thursday: Working with Lists
5. Friday: Creating Hangman
Week 5 / Day 5: Functions
Chapter Goal: This concept has always been one of the tougher for new programmers to learn, which is why it has a full week by itself. Readers will be able to understand why functions are useful, how they are used, and when you should use them. We will then create a full working shopping cart in Python using functions to add, remove, and show items within the cart.
No of pages: 20
Sub - Topics:
1. Monday: Creating & Calling Functions
2. Tuesday: Parameters
3. Wednesday: Return Statement
4. Thursday: Scope
5. Friday: Creating a Shopping Cart
Week 6 / Day 6: Data Collections & Working with Files
Chapter Goal: Most of the major concepts have already been covered in previous weeks, so this week will focus on expanding the reader’s knowledge of data types and collections in Python, as well as how to use files. We will program a fake database back-end using Python and CSV files together.
No of pages: 15
Sub - Topics:
1. Monday: Dictionaries
2. Tuesday: Working with Dictionaries
3. Wednesday: Tuples, Sets, Frozensets
4. Thursday: Reading and Writing Files
5. Friday: Creating a User Database with CSV Files
Week 7 / Day 7: Object-Oriented Programming with Python Classes
Chapter Goal: As hard as functions are to understand, OOP with classes is even tougher. This full week will cover what OOP is, how and why it is used, and eventually go over how to create a full-fledged blackjack game together.
No of pages: 20
Sub - Topics:
1. Monday: Creating and Instantiating a Class
2. Tuesday: Attributes
3. Wednesday: Methods
4. Thursday: Inheritance
5. Friday: Creating Blackjack
Week 8 / Day 8: Advanced Python Topics I
Chapter Goal: This week begins the advanced section of Python, which will cover items that your everyday developer uses to make their lives easier. The understanding of this chapter will help for solidifying the reader’s computer science skills.
No of pages: 15
Sub - Topics:
1. Monday: List Comprehension
2. Tuesday: Lambda Functions
3. Wednesday: Map, Reduce, and Filter
4. Thursday: Recursive Functions & Memoization
5. Friday: Writing a Binary Search
Week 9 / Day 9: Advanced Python Topics II
Chapter Goal: This week is the continuation of advanced python concepts and will cover more topics that a developer has to understand on the job. At the end of the week several interview questions will be showcased, as well as how to answer them, even a rare question from some Google interviews.
No of pages: 15
Sub - Topics:
1. Monday: Generators and Iterators
2. Tuesday: Decorators
3. Wednesday: Modules
4. Thursday: Understanding Algorithmic Complexity
5. Friday: Answering a Google Interview Question
Week 10 / Day 10: Introduction to Data Analysis
Chapter Goal: The final chapter covering the Python concepts will give readers an introduction into what it takes to be a data analysis. It will cover libraries used in the industry, as well as APIs. By the end users will be able to understand how to analyze data using Pandas.
No of pages: 30
Sub - Topics:
1. Monday: Virtual Environments and the Requests Module
2. Tuesday: Using Pandas
3. Wednesday: Graphing Data
4. Thursday: Web Scraping
5. Friday: Generating and Analyzing Fake Data
Project 1: Monster Dungeon Game with Python
Chapter Goal: The first of three projects, readers will program a larger-scale project called “Dungeon Monsters”. The game will showcase the ability to create games from start to finish using the Python language. Reader’s will use all the concepts learned from weeks 1-8 to make a fun project.
No of pages: 25
Sub - Topics:
1. Variables
2. Functions
3. Classes
4. Data Structures
5. File I/O
6. Loops
7. Branching Statements
Project 2: Creating a Weather Application with Flask
Chapter Goal: The second of three projects, students will learn the basics of the Flask microframework and web development. This will be quite a large application, showing the ability to call APIs and display weather information neatly using Bootstrap 4. It is assumed that readers have a base knowledge of HTML and CSS in order to complete this project. Once completed, they will be able to host it on Heroku and view it on their phone from anywhere.
No of pages: 40
Sub - Topics:
1. Flask
2. APIs
3. Modules
4. Web Development
5. Bootstrap 4
6. Git and Github
7. Deploying to Heroku
8. Routing
9. Jinja2 Templating
10. Virtual Environments
11. Using the Requests Module
12. Mobile Optimization
Project 3: Analyzing Baseball Statistics Using Pandas and Web Scraping
Chapter Goal: The third of the three projects, will use the skills learned in week 10 to analyze baseball data over the past 20 years. Readers will be able to web scrape data from a reputable source and graph the averages of several statistics to generate a hypothesis from the data shown.
No of pages: 20
Sub - Topics:
1. Pandas
2. Matplotlib
3. Requests
4. BeautifulSoup4
5. Data Analysis
6. Virtual Environments
7. File I/O
Show More