Term and Credits
Winter 2017-2018
3 Credits
Room and Time
Lectures:
Labs: (Primary TA in Bold)
Who Grades What:
Instructor
Mark Boady
Electronic Mail Address:
mwb33@drexel.edu
Office: University Crossings 138
Extention: 215-895-2347
Office Hours: Wednesday 3-5pm, Thursday 2-4PM, others days/times by appointment.
Teaching Assistant(s)
Office Hours and Contact Info Through the CLC: https://www.cs.drexel.edu/clc
Course Description
Introduces fundamental concepts of computing including memory, instructions, function calls, and activation records. Covers fundamentals of structured computer programming in the language of instruction: variables, input and output, expressions, assignment statements, conditionals and branching, subprograms, parameter passing, repetition, arrays, top-down design, testing, and debugging.
Course Objective and Goals
Audience and Purpose within Plan of Study
This course is open to all student's interesting in Programming and Computer Science.
This course is the first in a two-term sequence of computer programming courses in Python 3 (CS 171-2) and is a required course for students majoring in computer science, mathematics, physics, information systems, and digital media. It is also a required course for students pursuing a minor in computer science. The goal is for students completing this sequence to be competent programmers, able to write working Python 3 program on their own using appropriate constructs when presented with a problem description.
Prerequisites
None.
While there are no formal prerequisites for the course, students are expected to be computer literate. Prior programming experience is not required, but is definitely helpful.
Textbook
Programming in Python 3
Edition: CS 171: Computer Programming I Winter 2018
From ZyBooks
Sign up at learn.zybooks.com
Enter Code DREXELCS171BoadyWinter2018 for our textbook
Subscribe for $67.
Grading and Policies
Final grades will be determined by your total points weighted according to this distribution. Grades may be curved but are generally computed via the formula below. It may be modified at the instructor's sole discretion, but letter grades will generally not be lower than those shown here.
Readings
Labs
Attendence
Assignments
Special Circumstances
If you have a documented reason why you cannot submit any work by the cut-off deadline, a special exception may be made. The Professor may also wave the late submission policy for documented special exceptions. Special Exceptions must be approved by the Professor.
Additional Policies
Plagiarism Detection System
To ensure that assignments are done independently, in addition to human observation, we will be running all assignments through a plagiarism detection system. This program uses compiler techniques which are invariant of syntax and style. It has a very high accuracy rate.
Academic Honesty Policy
The CCI Academic Honesty policy is in effect for this course. Please see the policy at http://drexel.edu/cci/resources/current-students/undergraduate/policies/cs-academic-integrity/.
In the event of an Academic Honesty Violation, punishments include but are not limited to
Computer/Software Help
iCommons:
http://drexel.edu/cci/about/our-facilities/rush-building/iCommons/
Disability Statement
Students requesting accommodations due to a disability at Drexel University need to request a current Accommodations Verification Letter (AVL) in the ClockWork database before accommodations can be made. These requests are received by Disability Resources (DR), who then issues the AVL to the appropriate contacts. For additional information, visit the DR website at drexel.edu/oed/disabilityResources/overview/, or contact DR for more information by phone at 215.895.1401, or by email at disability@drexel.edu.
University Policies
In addition to the course policies listed on this syllabus, course assignments or course website, the following University policies are in effect:
Software and Hardware Requirements
All Drexel students are required to have individual access to a dedicated computer which meets minimum specifications, including: processor speed, memory and secondary storage requirements, connectivity via high-speed or direct connection to campus network, and a CD/DVD drive.
The Official Language is Python 3.6. You must have Python 3.6 installed on your computer. It is available for free from https://www.python.org
No specific IDE is required. We suggest PyCharm Free Community Edition
The website https://repl.it can be used for many of the assignments. This is a helpful resource, but must have access to at least one computer with a complete Python 3 install.
Tentative Course Schedule
Please see the appropriate assignment webpages for a detailed description of course deliverables.
Week | Topic | Reading | Lab | Notes |
1 (1/8/2018) |
What is a Program? Introduction to Python
Topics: Python 3, Variables, Expression, Input and Output |
Chapter 1 Intro to Python Chapter 2 Variables and Expressions (Due Monday 8AM Jan. 15) |
Lab 1 | |
2 (1/15/2018) | No Lecture - Martin Luther King, Jr. Day |
Chapter 3 Types (Due Monday 8AM Jan. 22) |
Lab 2 | |
3 (1/22/2018) |
Branching and Exceptions
Topics: If, Else, Elif, Boolean Logic, Try/Except |
Chapter 4 Branching Chapter 7 Strings (Due Monday 8AM Jan. 29) |
Lab 3 | HW 1 Due Friday Jan 26 at 11:59PM |
4 (1/29/2018) |
Loops and Files Topics: While, For, Reading/Writing Files |
Chapter 5 Loops (Due Monday 8AM Feb 5) |
Lab 4 | |
5 (2/5/2018) |
Functions Topics: Creating Simple Functions |
Chapter 6 Functions (Due Monday 8AM Feb 12) |
Lab 5 | HW 2 Due Friday Feb 9 at 11:59PM |
6 (2/12/2018) | Midterm - In Lecture | Lab 6 | ||
7 (2/19/2018) |
Types
Topics: Binary Values, Type Conversion, Lists, Dictionaries |
Chapter 12 Files (Due Monday 8AM Feb 26) |
Lab 7 | HW 3 Due Friday Feb 23 at 11:59PM |
8 (2/26/2018) |
Recursion Topics: Creating and Understanding Recursive Functions |
Chapter 14 Recursion (Due Monday 8AM March 5) |
Lab 8 | HW 4 Due Friday March 2 at 11:59PM |
9 (3/5/2018) |
Advanced Functions Topics: Creating Libraries for Reuse, Working with Lists/Dictionaries as parameters |
Chapter 8 Lists and Dictionaries Chapter 11 Modules (Due Monday 8AM March 12) |
Lab 9 | |
10 (3/12/2018) |
Imperative Languages Topics: Applications of Imperative Programming Skills |
Chapter 10 Exceptions Chapter 15 Plotting (Due Monday 8AM March 19) |
Lab 10 | HW 5 Due Friday March 16 at 11:59PM |
11 (3/19/2018) | Final Exam - Location/Time to be Determined |