Teaching Assistant: Vlad Slavici
Tutors: Marc Held
Everyone on the course staff is available for consultations to every student.
Course lecture times and location:
Lectures are really just interactive group learning sessions. You must bring paper and a pencil or a pen, so you can work out the questions posed during the lecture. If you use a laptop to take notes during the lectures, you must be able to answer questions and participate in the class discussion at any time.
Labs: The lab CS 2511 is an integral part of the course. The labs start on Thursday, September 10th and meet in 212 WVH. You must attend all labs. The purpose of labs is to give you some hands-on experience with the actual tools, and to illustrate some of the principles from the lectures with hands-on examples. You must finish all the lab work - at home, if you do not have enough time during the lab hours. This work should be included in your electronic portfolio.
Computing Environment: You will do your assignments initially using ProfessorJ languages within the DrScheme (v. 4.2.1) programming environment. Some assignments will require the use of additional Java libraries that will be available to you. You may install the DrScheme on your computer at home and work there.
During the second half of the semester we will use Eclipse IDE with the standard Java language. Optionally, you may choose to use another IDE (e.g. NetBeans) or work directly from the command line.
Assignments: There will be a problem set each week, comprised of three parts: etudes (or practice problems, or portfolio problems), assignments, and projects.
The etudes will be a series of practice problems that every students must be able to solve. You will work on these problems on your own, and keep the solutions in an electronic portfolio. You may ask the instructor to have an informal portfolio review at any time during the semester - to make sure you are doing well. However, there will be a formal review of the portfolio twice during the semester.
In the assignments and projects you will apply the concepts and techniques to a new situation. They will be done with a partner and will be graded on a weekly basis.
The assignments will consist of a well-structured specific programming projects that may be based on the work done in the previous week(s).
The projects will be open-ended creative projects where you can practice your design skills. The work on a project continues for four weeks, with parts submitted with the regular programming assignment. There will be three projects during the semester, each done with a different partner. Each project ends with a project review/presentation.
Due Dates: Thursdays at 10:00 pm, unless otherwise specified.
Getting Credit for Assignments: There will be a short quizzes during some lectures or labs. They will not be announced beforehand. The goal of the quiz is to determine that you understand the basic concepts covered so far, and to assure that you are keeping up with the textbook reading.
If you fail a quiz, you must see the TA or the instructors as soon as possible to go over the quiz and review the concepts you may not understand. You will not get credit for the current homework or any subsequent homeworks until you see the TA or the instructor.
Pair Programming: You must work on your homework problems in pairs. You will be assigned a homework partner during the first lab. Homework pairs will change after the fourth and after the eighth week of the semester.
Keep a log documenting the times you and your partner met and worked together and when do you plan to meet next. If the planned meeting does not happen, write down an explanation.
Pair programming means that you and your partner study the problem sets individually and possibly even sketch out solutions. Then you meet and jointly develop solutions to each problem. One of you--the driver--types, and the other one--the co-pilot--looks over the driver's shoulder. When something isn't clear, it is the co-driver's responsibility to question the approach. You must switch roles during such a problem solving session.
Warning: You must be able to solve every homework problem on your own.
Are you sure you have read the warning?
You are free to collaborate at will with others on the problem sets. If you do so, you must acknowledge all collaborators on your cover page. Failure to do so may result in reductions of your homework grade.
If you are having difficulties working with your partner, please inform your TA or the instructor. Bring in your log of meetings with your partner to help explain the problems you may have.
Portfolio: You should keep a neat record of all your work in the form of an electronic portfolio. It should be organized as follows:
You are required to finish every lab, even if you did not have the time to finish it during the lab time.
We will review your portfolios twice during the semester. The first review will be during the last two weeks in October, the second one during the last two weeks of classes.
Exams: We will have two exams to assess your progress. The first exam will be given during the lecture on October 7th. The second exam will be scheduled for three hours on Wednesday, December 2nd, 6-9pm. The room for the second exam is 325 Shillman.
The exams will test material similar to that assigned in weekly homeworks. You will take the exams by yourself. Collaboration is not tolerated. If you make sure that you can do every the homework problem on your own, the exams will be easy. If not, you will probably have a difficult time with the exams.
Grades: You will get a grade for your homework and a grade for your exams. Both must be passing grades; otherwise you cannot pass the course. For the final grade, we will assign a weight of 30% to the homework grade, a weight of 55% to the two exams, and 10% for the portfolio review, project reviews, and class participation. The remaining 5% are up to the instructors' whim.
|last updated on Mon Nov 30 11:05:16 EDT 2009||generated with PLT Scheme|