Difference between revisions of "OPS445 Python Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
Line 9: Line 9:
 
! Tasks/Labs
 
! Tasks/Labs
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 1:'''<br>May 9 - May 13
+
|'''Week 1:'''<br>Sept 5 - Sept 9
 +
(Monday - Labour Day)
 
| <b>Course Overview</b>
 
| <b>Course Overview</b>
 
<ul>
 
<ul>
Line 56: Line 57:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 2:'''<br>May 16 - May 20
+
|'''Week 2:'''<br>Sept 12 - Sept 16
 
| <b>Python Basics:</b>
 
| <b>Python Basics:</b>
 
<ul>
 
<ul>
Line 86: Line 87:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 3:'''<br>May 23 - May 27 <br>(Monday is a holiday - Victoria Day)
+
|'''Week 3:'''<br>Sept 19 - Sept 23
 
| <b>Reusing Python Code:</b>
 
| <b>Reusing Python Code:</b>
 
<ul>Functions
 
<ul>Functions
Line 118: Line 119:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 4:'''<br>May 30 - Jun 3
+
|'''Week 4:'''<br>Sept 26 - Sept 30
 
| <b>Basic Data Structures and String Manipulation:</b>
 
| <b>Basic Data Structures and String Manipulation:</b>
 
<ul>
 
<ul>
Line 154: Line 155:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 5:'''<br>Jun 6 - Jun 10
+
|'''Week 5:'''<br>Oct 3 - Oct 7
 
| <b>Files, Exceptions:</b>
 
| <b>Files, Exceptions:</b>
 
<ul>
 
<ul>
Line 186: Line 187:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 6:'''<br>Jun 13 - Jun 17
+
|'''Week 6:'''<br>Oct 10 - Oct 14
 +
(Monday - Thanksgiving)
 
| <b>Review and Catch-up</b>
 
| <b>Review and Catch-up</b>
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 7:'''<br>Jun 20 - Jun 24 <br>
+
|'''Week 7:'''<br>Oct 17 - Oct 21 <br>
 
| <b>Mid-Term Test</b>
 
| <b>Mid-Term Test</b>
 
<ul>
 
<ul>
Line 201: Line 203:
 
   <li>[[OPS445 Online Assignment 1| Assignment 1]]</li>
 
   <li>[[OPS445 Online Assignment 1| Assignment 1]]</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
| '''Break Week:'''<br>Jun 27 - Jul 1
+
| '''Break Week:'''<br>Oct 24 - Oct 28
 
|  
 
|  
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 8:'''<br>Jul 4 - Jul 8
+
|'''Week 8:'''<br>Oct 31 - Nov 4
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 236: Line 238:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 9:'''<br>Jul 11 - Jul 15
+
|'''Week 9:'''<br>Nov 7 - Nov 11
 
| <b>Classes:</b>
 
| <b>Classes:</b>
 
<ul>
 
<ul>
Line 258: Line 260:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 10:'''<br>Jul 18 - Jul 22
+
|'''Week 10:'''<br>Nov 14 - Nov 18
 
| <b>Configuration management:</b>
 
| <b>Configuration management:</b>
 
<ul>
 
<ul>
Line 269: Line 271:
 
</li>
 
</li>
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 11:'''<br>Jul 25 - Jul 29
+
|'''Week 11:'''<br>Nov 21 - Nov 25
 
| <b>Python Networking</b>
 
| <b>Python Networking</b>
 
<ul>
 
<ul>
Line 282: Line 284:
 
   </ul>
 
   </ul>
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 12:'''<br>Aug 1 - Aug 5<br>(Monday is a holiday - Civic Day)
+
|'''Week 12:'''<br>Nov 28 - Dec 2
 
| Complete Assignment 2
 
| Complete Assignment 2
 
|  
 
|  
 
| [[OPS445 Online Assignment 2 | Assignment 2]]
 
| [[OPS445 Online Assignment 2 | Assignment 2]]
 
|- style="vertical-align: top; background: #ffffe0"
 
|- style="vertical-align: top; background: #ffffe0"
|'''Week 13:'''<br>Aug 8 - Aug 12
+
|'''Week 13:'''<br>Dec 5 - Dec 9
 
| <b>Final Assessment Review</b>
 
| <b>Final Assessment Review</b>
 
|  
 
|  
 
|  
 
|  
 
|- style="vertical-align: top; background: #e0ffff"
 
|- style="vertical-align: top; background: #e0ffff"
|'''Week 14:'''<br>Aug 15 - Aug 19
+
|'''Week 14:'''<br>Dec 12 - Dec 14 (Wednesday)
 
| <b>Final Assessment</b>
 
| <b>Final Assessment</b>
 
|  
 
|  
 
|  
 
|  
 
|}
 
|}

Revision as of 06:53, 4 September 2022

OPS445 Weekly Task Update
Week Topics Reading/Reference Tasks/Labs
Week 1:
Sept 5 - Sept 9

(Monday - Labour Day)

Course Overview
  • Introduction
  • Why Python?
  • Natural language & formal language

git and github.com

Python components:

  • keywords
  • symbols
  • modules
  • objects

Python Shell

  • builtin modules
  • builtin functions:
    • help()
    • dir()
    • type()
  • keyword: import
  • Think Python: Chapter 1
    • What is a program?
    • Input, process (sequence, looping, repetition), output
    • complier, interpreter
    • Debugging
  • Automate with Python: Chapter 1 & 2
    • Python Basics
    • Flow Control
Week 2:
Sept 12 - Sept 16
Python Basics:
  • Objects
  • Methods and properties
  • Operators
  • expressions
  • statements
  • Think Python: Chapter 2
    • Variable, expressions and statements
    • Script mode and interactive mode
    • Python math operators and order of operations
    • String operation '+' and '*'
  • Automate with Python: Chapter 3 & 4
    • Functions
    • Lists
Week 3:
Sept 19 - Sept 23
Reusing Python Code:
    Functions
  • keyword: def
  • function parameters
  • return value
  • keyword: None
  • Think Python: Chapter 3 Functions
    • Function calls
    • Adding new functions
    • Definitions and uses
    • Flow of execution
    • Parameters and arguments
    • Variables and parameters
    • Fruitful functions and void functions
  • Automate with Python: Chapter 5 & 6
    • Dictionaries and structuring data
    • Manipulating Strings
Week 4:
Sept 26 - Sept 30
Basic Data Structures and String Manipulation:
  • Integers
  • Strings
  • Tuples
  • Lists
  • Dictionaries
  • Sets
  • Think Python: Chapter 5 Conditionals and recursion
    • Boolean expression
    • Logical operators
    • Conditional execution
    • Alternative execution
    • Chained conditionals
    • Nested conditionals
    • Recursion
    • Infinite recursion
    • Keyboard Input
  • Automate with Python: Chapter 7 & 8
    • Regular Expressions
    • Reading and Writing Files
Week 5:
Oct 3 - Oct 7
Files, Exceptions:
  • File Handling
  • Error Handling
  • Builtin error types
  • Think Python: Chapter 14 - Files
    • Reading and writing
    • Format operator
    • Filenames and paths
    • Catching exception
    • Databasess
    • Picking
    • Pipes
    • Writing modules
  • Automate with Python: Chapter 9 & 10
    • Organizing Files
    • Debugging
Week 6:
Oct 10 - Oct 14

(Monday - Thanksgiving)

Review and Catch-up
Week 7:
Oct 17 - Oct 21
Mid-Term Test
  • Date: THIS WEEK
  • Topics: Lab 1 to Lab 5 and All topics covered from week 1 to week 5
Break Week:
Oct 24 - Oct 28
Week 8:
Oct 31 - Nov 4
Classes:
  • Components of a class
  • Classes and objects
  • Think Python: Chapter 15 - Classes and objects
    • Programmer-defined types
    • Attributes
    • Instances and return values
    • Objects are mutable
    • Copying
  • Think Python: Chapter 16 - Classes and functions
    • Pure functions
    • Modifiers
    • Prototyping versus planning
Week 9:
Nov 7 - Nov 11
Classes:
  • Designing classes
  • Understanding scope
  • Think Python: Chapter 17 - Classes and methods
    • The __init__ method
    • The __str__ methond
    • The __repr__ method
    • Operator overloading
    • Type-based dispatch
    • Polymorphism
Week 10:
Nov 14 - Nov 18
Configuration management:
  • Fabric
Week 11:
Nov 21 - Nov 25
Python Networking
  • Ansible
  • Network Client
  • Network Server
  • Asynchronous Python Networking
Week 12:
Nov 28 - Dec 2
Complete Assignment 2 Assignment 2
Week 13:
Dec 5 - Dec 9
Final Assessment Review
Week 14:
Dec 12 - Dec 14 (Wednesday)
Final Assessment