EECS 110 : Course Structure and Policies

 

Course Aims and Objectives

 

To give students the tools to take a computational problem through the process of design, implementation, documentation, and testing.


Objectives:

1.    Break a broad problem down into specific sub-problems

2.    Write an algorithm to solve a specific problem, and then translate that algorithm into a program in a specific programming language (Python)

3.    Write clear, concise documentation

4.    Develop test cases that reveal programming bugs

 

Prerequisites

 

None

Course Content

 

Lecture

There are two lectures per week (Monday and Wednesday). Attendance at these lectures is critical, as all new material will be presented in lecture. During lecture, you will sometimes be asked to complete a short worksheet to get some initial practice with the material. Completion of these worksheet is not part of your course grade.

 

Lab

Each week (Tuesdays) you will attend a two-hour closed lab session. The labs are run by the course faculty and TAs and will be held in Wilkinson lab (M338). They provide a great opportunity for you to practice with new material on some fun problems in a supervised setting.  You're encouraged to bring your laptop computer, if you have one, to lab. The directions for the Wilkinson lab

 

Recitations

Each week (Fridays) there will be a recitation class held by a TA. These lectures are not required, but they are highly recommended since they will be helpful in solving the homework problems.

 

Homework

 

Each week you will be assigned a set of homework problems. These problems will be due on Sunday evening at 11:59pm, unless otherwise indicated.

 

Pair Programming
Each assignment typically contains one or more "individual" problem that you must complete on your own. You may complete the rest of the problems alone or with one other student. If you choose to work with a partner, you must work with the same partner for the entire assignment that week. You and your partner will submit only one solution for each problem. You may switch partners between assignments. If you choose to work with a partner, you must work together, at the same computer, for every problem that you do together. While you are working, the computer screen should be visible to both people. One person should type, while the other person observes, critiques and plans what to do next. You should switch roles periodically. You may think about the problems individually and make minor bug fixes, but your solution overall should be a true joint effort. Splitting up the work is in violation of the Honor Code.

 

Late Homework Policy
Homework is due on the day indicated at 11:59 PM sharp. You will be able to make three 24-hour extensions on any one homework assignment. Homework that is more than 24 hours late (according to the above extension policy) or submitted after the deadline no extensions are possible, will not be accepted for any reason. In extreme circumstances (such as serious illness), if you require an additional extension or a longer extension, you must go talk to Prof. Kuzmanovic.

 

Cheating Policy
For homeworks its OK to ask someone about the concepts or algorithms, needed to do the problems. We encourage you to do so and it will help everyone to learn. However, what you turn in must be your own work or if you will be working in pairs then your group's own work. Copying other people's code, or from any other sources online is strictly prohibited. We will check each homework for any kind of code similarities and will punish transgressors severely. If you have any questions about what behavior is acceptable, it is your responsibility to come see the instructor/TAs before you engage in this behavior

 

Submissions
All submissions will be done on Canvas. You can log in by using your netID. Because we allow submissions to be done 24 hours later than the deadline (maximum three times) according to the Late Homework Policy mentioned above, the submission window will be open till Monday 11.59 PM even though the deadline will be Sunday 11.59 PM for each homework. Whoever wishes to use the late submssion policy can still submit on Canvas till Monday midnight.

 

 

Grading

There will be a midterm and a final exam. Exams will be in-class, closed-book, and will cover materials from lectures, required readings and projects. The final exam will not be cumulative. Your grade for this class will be a combination of your homework and exam scores. Project grades will be incorporated into your homework score. Each homework assignment is worth 100 points. The project counts as two homework assignments, and is worth 200 points. Based on these point values, the approximate weight of each component is:

 

Homework+Project: 75%

Exams: Midterm: 10%, Final: 15%

 

Communication

Course web site: http://networks.cs.northwestern.edu/EECS110-s18. Check it out regularly for schedule changes, clarifications and corrections to assignments, and other course-related announcements.

 

Recitation. TA will lecture on complementary materials of the lectures, address questions for homework and projects, and help to prepare the exams. We hope it can help students more efficiently than the one-on-one Q&A in office hours.

 

All students, TAs, and faculty will be accessible via the Canvas group e-mail address. If you have specific questions that you want to ask either the faculty or the TAs, you can do that by sending an e-mail directly to them (Aleksandar Kuzmanovic: akuzma@northwestern.edu, Ibrahim Emirhan Poyraz: emirhan@u.northwestern.edu, Majed Valad Beigi: majed.beigi@northwestern.edu

 

April, 2018, Aleksandar Kuzmanovic