└── CourseSyllabus /CourseSyllabus: -------------------------------------------------------------------------------- 1 | 2 | ```markdown 3 | # Syllabus for Introduction to Python Programming 4 | 5 | ## Course Information 6 | 7 | **Instructor:** Waqas Shah 8 | **Email:** wshah@school.edu 9 | **Office Hours:** Mondays 3-4PM (or by appointment) 10 | **Class Meetings:** Monday & Wednesday 2:30-3:30PM, Room 210 11 | **Course Dates:** August 28 - December 15, 2023 12 | 13 | ## Course Description 14 | 15 | This is an introductory course on computer programming using the Python language. The course is designed for 8th grade students with no prior programming experience. Over 15 weeks, students will learn fundamental programming concepts like variables, data types, conditionals, loops, functions, and objects. Students will apply their knowledge to create interactive programs and games. 16 | 17 | ## Learning Objectives 18 | 19 | By the end of this course, students will be able to: 20 | 21 | - Understand basic programming concepts like variables, data types, conditionals, loops, functions 22 | - Read, write, and debug basic Python code 23 | - Create interactive programs that take user input and produce output 24 | - Implement algorithms to solve problems through coding 25 | - Apply programming skills to build simple games and applications 26 | - Work individually and collaboratively on coding projects 27 | 28 | ## Required Materials 29 | 30 | - Computer with internet access 31 | - Python 3 interpreter (free download from python.org) 32 | - Python IDE like IDLE or PyCharm (free educational licenses available) 33 | - Course textbook: *Introduction to Python Programming for Kids* by Jessica Ingrassellino (available in school library) 34 | 35 | ## Grading 36 | 37 | | Assessment | Percentage | 38 | |-|-| 39 | | Attendance & Participation | 10% | 40 | | Weekly Coding Exercises | 30% | 41 | | Quizzes | 20% | 42 | | Midterm Project | 15% | 43 | | Final Project | 25% | 44 | | **Total** | **100%** | 45 | 46 | ## Weekly Modules 47 | 48 | ### Week 1: Introduction to Computers and Programming 49 | - Computing basics (Textbook Ch. 1) 50 | - Introduction to programming (Textbook Ch. 2) 51 | - Algorithms (Textbook Ch. 3) 52 | - Python interpreter and IDE setup (Textbook Ch. 4) 53 | 54 | ### Week 2: Printing and Variables 55 | - Basic output with print (Textbook Ch. 5) 56 | - Variables and assignment (Textbook Ch. 6) 57 | - Strings (Textbook Ch. 7) 58 | 59 | ### Week 3: Data Types and Operators 60 | - Integers, floats (Textbook Ch. 8) 61 | - Arithmetic operators (Textbook Ch. 9) 62 | - Comments (Textbook Ch. 10) 63 | 64 | ### Week 4: Conditionals and Booleans 65 | - Comparison operators (Textbook Ch. 11) 66 | - if/else statements (Textbook Ch. 12) 67 | - Boolean values (Textbook Ch. 13) 68 | 69 | ### Week 5: Lists and Tuples 70 | - Indexing and slicing (Textbook Ch. 14) 71 | - Lists vs tuples (Textbook Ch. 15) 72 | - List methods (Textbook Ch. 16) 73 | 74 | ### Week 6: Loops and Iteration 75 | - for loops (Textbook Ch. 17) 76 | - while loops (Textbook Ch. 18) 77 | - Looping over sequences (Textbook Ch. 19) 78 | 79 | ### Week 7: Functions 80 | - Function definitions (Textbook Ch. 20) 81 | - Parameters and arguments (Textbook Ch. 21) 82 | - Return values (Textbook Ch. 22) 83 | 84 | ### Week 8: Strings and Text Processing 85 | - String methods (Textbook Ch. 23) 86 | - Formatting strings (Textbook Ch. 24) 87 | - Regular expressions (Textbook Ch. 25) 88 | 89 | ### Week 9: Dictionaries and Sets 90 | - Dictionaries (Textbook Ch. 26) 91 | - Sets (Textbook Ch. 27) 92 | - Mutable vs immutable types (Textbook Ch. 28) 93 | 94 | ### Week 10: File Input/Output 95 | - Reading files (Textbook Ch. 29) 96 | - Writing files (Textbook Ch. 30) 97 | - File modes (Textbook Ch. 31) 98 | 99 | ### Week 11: Classes and Objects 100 | - Defining classes (Textbook Ch. 32) 101 | - Creating object instances (Textbook Ch. 33) 102 | - Object methods (Textbook Ch. 34) 103 | 104 | ### Week 12: Modules and Scope 105 | - Importing modules (Textbook Ch. 35) 106 | - Namespaces (Textbook Ch. 36) 107 | - Python standard library (Textbook Ch. 37) 108 | 109 | ### Week 13: Exceptions and Debugging 110 | - Catching exceptions (Textbook Ch. 38) 111 | - Raising exceptions (Textbook Ch. 39) 112 | - Debugging techniques (Textbook Ch. 40) 113 | 114 | ### Week 14: Final Project Work 115 | - Design and plan final program (Textbook Ch. 41) 116 | 117 | ### Week 15: Final Project Presentations 118 | - Present completed programs 119 | 120 | ## Course Policies 121 | 122 | - Assignments are due by 11:59pm on the date listed. Late assignments will receive a 10% deduction per day. 123 | - Attendance is mandatory. More than 2 unexcused absences will impact your grade. 124 | - Academic integrity is essential. Cheating/plagiarism will result in a zero grade. 125 | - Be respectful of classmates. Discrimination/harassment will not be tolerated. 126 | - Laptops should only be open when needed for classwork. Phones must be silenced. 127 | - Please communicate any questions or issues promptly with the instructor. 128 | 129 | Let me know if you have any other questions! I look forward to a great semester of learning Python together. 130 | ``` 131 | --------------------------------------------------------------------------------