General
People
Instructors: Viera K. Proulx
Instructor designs and implements this class, leads lectures, creates the labs, assignments, and exams. The instructor is here to teach from life.
TAs: Maryam Aziz, Pavel Metrikov, Matthew Clamp, Garrett Goode, Michael Ravert, Matthew Taylor.
TAs teach labs, grade the homework sets, hold office hours. In general, they are apprentice teachers and are here to learn how to run a course.
Tutors: Zachary Gawlik, Zachary Hickman, Scott Kapelewski, Jimmy Ly, Cara McCormack, James McNamara, Brendan Ronan.
TAs help in labs, grade the homework sets, hold office hours. In general, they are your peers who have taken the course and can see your problems from your perspective.
Communications
If you need help, you may talk to any one of the three instructors, any one of the TAs or tutors during their office hours.
You can also post questions and look for answers to similar questions on Piazza. Here is a link to the Piazza site for this course. Do not post answers to assignments to Piazza.
Office Hours
vkp
WVH322
..
Monday
..
2:00-3:00 pm
Wednesday
..
2:00-4:00 pm
blerner
WVH314
..
Wednesday
..
10:30-11:30 am
Wednesday
..
3:00-4:30 pm
lrazzaq
WVH301B
..
Tuesday
..
10:00am-12:00 noon
Maryam Aziz
azizm
WVH472
..
Friday
..
5:00-7:00 pm
Pavel Metrikov
metpavel
WVH472
..
Tuesday
..
7:00-9:00 pm
Matthew Clamp
mclamp
WVH102
..
Wednesday
..
3:00-5:00 pm
Garrett Goode
ggoode
WVH102
..
Monday
..
6:00-8:00 pm
Michael Ravert
ravert1
WVH102
..
Wednesday
..
7:00-9:00 pm
Matthew Taylor
wiseguy
WVH102
..
Tuesday
..
8:00-10:00 pm
Zachary Gawlik
zgawlik
WVH102
..
Monday
..
4:00-6:00 pm
Zachary Hickman
zhickman
WVH102
..
Tuesday
..
4:00-6:00 pm
Scott Kapelewski
scottk
WVH102
..
Thursday
..
7:00-9:00 pm
Jimmy Ly
jly
WVH102
..
Tuesday
..
6:00-8:00 pm
Cara McCormack
caramcc
WVH102
..
Wednesday
..
6:30-8:30 pm
James McNamara
jamcnam
WVH102
..
Sunday
..
4:00-6:00 pm
Brendan Ronan
bronan99
WVH102
..
Thursday
..
5:00-7:00 pm
Communication
Use CCIS email (@ccs.neu.edu) to reach any of the course staff; usernames are given above.
General Policies
Late assignment policy: there is no late policy on assignments; solutions to assignments as they exist at the time of the deadline will be graded.
Laptop policy: no laptops in class.
Academic honesty: we will strictly enforce Northeastern’s academic integrity policy. You may discuss problems with other students, but you should not share or show code to anyone other than your assigned partner. Violations of academic integrity will be reported to OSCCR and will have a negative impact on your grade.
Lectures
Section 1: Monday, Wednesday, Thursday at 9:15am-10:20am
220 Shillman Hall
Section 2: Monday, Wednesday, Thursday at 1:35am-2:40pm
19 International Village
Section 3: Monday, Wednesday, Thursday at 4:35pm-5:40pm
320 Behrakis Health Sciences Center
Lectures policy:
You are required to read the lecture material for the given lecture before coming to class. During the lectures we will discuss the material covered in the required reading, answer questions, provide additional examples and applications.
It is OK if you do not understand everything when you first read it, but reading about the new concept ahead of the time will give you a chance to anticipate the questions you may have and allow you to follow better the details of explanation during the lectures.
Labs
are held in 212 WVH on
Tuesdays at 9:50 am - 11:35 pm
TA: Matthew Clamp
Tutors: Zachary Hickman, Brendan RonanTuesdays at 11:45 am - 1:25 pm
TA: Garrett Goode
Tutors: Scott Kapelewski, Cara McCormackTuesdays at 1:35 pm - 3:15 pm
TA: Michael Ravert
Tutors: Zachary Gawlik, James McNamaraTuesdays at 3:25 pm - 5:05 pm
TA: Matthew Taylor
Tutors: Jimmy Ly
Labs policy
The goal of the labs is to see in practice problems that illustrate the concepts covered in the lectures, and to prepare you for the next programming assignment.
There is a lot of technical detail related to running Java programs that will be covered in the early labs. Later labs will focus more on design questions and on good Java programming practice.
Ad-hoc lab quizzes
We will be running ad-hoc quizzes during some of the labs, without prior warning. The goal of the quizzes is to see thet you are familiar with the most basic concepts covered during the recent lectures, labs, and assignments.
If you do not pass the quiz, you need to meet with the instructor within the next week. The goal is to identify the problems you may have and to help you get back on track. Failure to follow up on a failed quiz may lead to grade zero on the related programming homework.
Computing Environment
You will complete your assignments (other than the first one) using the Eclipse IDE. Though, if you feel more comfortable, you may choose to use another IDE (e.g. NetBeans) or work directly from the command line, but you and your partner must both be comfortable with the chosen programming environment, and the staff may not be able to assist you with issues encountered in other environments.
You will use Web-CAT to work on your homework sets, to keep track of revisions, and to submit your homework.
Assignments
There will be one problem set each week, comprised of two parts: practice problems and pair-programming problems.
The practice problems will be a series of practice problems that every student must be able to solve. You should work out these problems on your own, and keep your solutions as an electronic portfolio. You may ask the instructor to give an informal review your portfolio at any time, but there will be a formal review at least once during the semester.
In the pair-programming problems you and your partner will apply the concepts from lectures and labs. The problems will consist of structured programming assignments that may be based on the work done in previous weeks, and may also include more creative projects where you can practice your design skills.
Due Date: Fridays at 6:00 pm, unless otherwise specified. We will not accept late homework.
Pair Programming
You must work on your problem sets in pairs. We will assign you a partner. Every few weeks, you will get a new partner.
Important With each assignment you must turn in a log/calendar documenting the times you and your partner met and worked together and when you plan to meet next. If the planned meeting does not happen, write down an explanation. Add to each entry a note on what has been accomplished during that meeting.
Pair programming means that you and your partner work on the problem sets jointly. You read them together and you work on the solutions together. One of the lab’s purposes is to teach you how to work in pairs effectively; indeed, pairs are provably more effective than individuals in programming. The rough idea is this: One of you plays pilot, the other co-pilot. The pilot works on the keyboard and explains aloud what is going on; it is the co-pilot’s responsibility to question everything. After a problem is solved to the satisfaction of both, you must switch roles.
Every partner must be able to solve every homework problem in the end. In other words, You must be able to solve every homework problem on your own.
All programs must be completed strictly by you and your partner. You are free to discuss the problem sets with others, so long as you acknowledge discussants. However, you may not share code in any way. Submitting code that is not your own will be considered a violation of the University’s Academic Integrity Policy (pages 38—
40 of the 2011-2012 Underaduate Student Handbook). Violations of academic integrity will be reported to OSCCR and will have a negative impact on your grade. If you are having difficulties working with your partner, please inform your instructor. Bring in your log of meetings with your partner to help explain the problems you may have.
Exams
Midterm 1: 2/5, in class
Midterm 2: 3/12, in class
Midterm 3: 4/8, 6-9pm Room 201 MU
Projects
There will be a substantial class project implemented over the last several weeks of the course. You will present your project to the class during the last two weeks of the course. You will also be required to comment on the projects presented by your peers.
Grades
You will get a gpa for your homework (including the project) and for your exams. You must have both a passing homework gpa and a passing gpa to pass the course. For the final grade, we will assign a weight of 40% to the homeworks and the project grade and a weight of 55% to the three exams. The remaining 5% are up to the instructors’ whim.