General Class Info
Meeting time and place: M/W/F 8:00 AM – 8:50 AM, 206 Brown Laboratory
Course Website: http://www.udel.edu/CIS/106/keffer/11F/
Textbook: Python for Software Design: How to Think like a Computer Scientist by Anthony B. Downey
Course Description
In this course, you will learn the fundamentals of software engineering. You'll be introduced to the concept of a programming language and learn about all the basic constructs from which programming languages are comprised. You'll also be introduced to best practices used in the software development process.
Professor
Jeremy Keffer
Office: 410 Smith Hall1
Office Hours: Mon 10:00 AM – 12:00 PM; Fri 9:00 AM – 12:00 PM2
Email: jkeffer at udel.edu
1 When there is a line of students waiting to see me, plase try to keep it down while waiting out in the hall. There have been some complaints about students being loud while waiting in past semesters.
2 The three hours on Friday ensures that there are at least two hours open to you regardless of what lab section you're in.
Teaching Assistants
Sections 040, 041 & 042
Marcos Portnoi
Office: 103 Smith Hall
Office Hours: Fri 12:15 PM – 2:15 PM
Email: mportnoi at udel.edu
Section 043
Matt Saponaro
Office: 103 Smith Hall
Office Hours: Mon 10:00 AM – 11:00 AM; Tues 11:00 AM – 12:00 PM
Email: mattsap at udel.edu
Schedule (Tentative)
Week | Starts | Book Chapters | Objectives |
---|---|---|---|
Week | Starts | Book Chapter | Objectives |
1 | Aug 30 | 1 | Introduction to Python and UNIX. What is Software Engineering and Computer Science |
2 | Sep 5 | 2 | Basic syntax and semantics. Expressions, variables, types. |
3 | Sep 12 | 3 | Functions and the stack. |
4 | Sep 19 | 3 | Implementing functions |
5 | Sep 26 | 4, 5 | loops and conditionals |
6 | Oct 3 | 1 - 5 | Midterm and review |
October 5 – First Midterm | |||
7 | Oct 10 | 5, 6 | more loops, recursion |
8 | Oct 17 | 6 | more on recursion |
9 | Oct 24 | ?? | talk more about code and data flow? |
10 | Oct 31 | 8 | Strings and string manipulation |
11 | Nov 7 | N/A | 5 - 8 |
November 9 – Second Midterm | |||
12 | Nov 14 | 10 | Lists and algorithms on them |
13 | Nov 211 | N/A | Maybe spend more time on algorithms, runtime analysis? |
14 | Nov 28 | 11, 12 | Dictionaries and tuples |
15 | Dec 5 | N/A | Introduction to the MatLab language, review for final |
December ?? – Final Exam |
1Thanksgiving break most of this week
Grading
Labs – 20%
First Midterm – 14%
Second Midterm – 14%
Project – 24%
Final – 24%
plus four percent for doing the online course evaluation at the end of the semester.
The numerical scores will be combined, not the letter grades. Since the assignments and exams are not standardized, your course grade will depend not only on the weighted score you receive, but also on how your score compares with the score distribution for the whole class.
Policies
All assignments are due by 11:55 PM on the due date. Submit all relevant files on Sakai.
Lab assignments that are late are assessed a 10% per day late penalty. Late labs will not be accepted more than seven days after the due date.
Project assignments will be accepted until the following class period after the due date but will be assessed a 10% late penalty. Projects will no longer be accepted after the start of class following the due date.
-
All work on assignments must be your own. Do not collaborate with other students or copy their work. Do not copy from a book or other source unless I say otherwise. You may consult with each other about conceptual problems, but see the TA or me for help with details or debugging.
If you get text or code from any source, including webpages on the Internet, books or other students, and present it as if it were your own, that is plagiarism. If the TA or I discover that you have plagiarized, I am obligated to report the incident to University authorities above the CIS Department. You must acknowledge and document such borrowings if you do use them. If they significantly reduce the amount of work you have to do for an assignment, you will lose points [this part of the policy may change; I will tell you if it does]; the grade you get is for your work, not somebody else's.
Attendance during exam days is required. If you miss an exam, you will not be able to make it up without a solid excuse (e.g. Doctor's note.)