Sunteți pe pagina 1din 5

CS106A Spring 2011

Handout 01 March 28th, 2010

CS106A Course Information


Instructor: E-Mail: Cell phone: Office: Office hours: Lectures: Jerry Cain
jerry@cs.stanford.edu

(415) 205-2242 Gates 192 Mondays, Wednesdays, and Fridays, 9:00 a.m. 9:45 a.m., and by appointment MWF 10:00 10:50 a.m. Hewlett 201 http://cs106a.stanford.edu http://www.facebook.com/cs106a In addition to our weekly lectures, youll also attend a weekly discussion section. The person leading your discussion section will be the one grading all of your assignments. Take a moment to visit http://cs198.stanford.edu/section anytime between Thursday, March 31st at 5:00 p.m. and Sunday, April 3rd at 8:00 p.m. and state your preferred section times. Come Sunday and Monday following, our computers will work their magic and come up with a master section assignment that will hopefully suit everybody. Youll receive an email with your section assignment by 5:00 p.m. on Tuesday, April 5th at the very latest.

Website: Facebook: Sections:

Readings:

Initially, well be working through Karel the Robot Learns Java, a short course reader of some 35 pages teaching the most basic of programming concepts. Well quickly advance to the second textEric Roberts The Art and Science of Javafor a detailed and eloquent treatment of the Java programming language and, more importantly, the general techniques virtually all software developers employ when tackling a large programming problem. In addition to the reader, well distribute a good number of handouts, chockfull of additional material and examples. The handouts will be posted as PDFs to the course web site, but in order to save paper, well only distribute hardcopies in lecture for those handouts we expect youll need to refer to over and over again (large lecture examples, section handouts and solutions, and assignment handouts).

Software:

Programming assignments can be written on either Macintosh or Windows PC computers using the Eclipse development environment. As a

2 development environment, Eclipse is a popular with many programmers, because its feature-rich, simple to use, and free of charge. While youre technically free to code in another environment if you want, our strong preference is that you use Eclipse. Well distribute information about how to obtain a copy of Eclipse on Wednesday. Mailing List: All students enrolled in CS106A are automatically subscribed to the cs106a-spr1011-students@lists mailing list. The list server is in touch with Axess, so if youre signed up for the course, youre probably on the mailing list. Please make it a point to sign up for the course as soon as possible, since I tend to send a good number of announcements out during the first week or two, and I dont want you to miss out. There are six or seven programming assignments, and its possible Ill throw in a written problem set for color. The assignments are serious projects, and they get more and more difficult as we cover more advanced material. The only way to learn programming is to work at it, so expect to spend lots of time in front of a computer. Your assignments are graded interactively in a one-on-one session with your section leader. In general, section leaders will return your assignments within ten calendar days of the day you submit it. Because we have so many section leaders working for the CS106 program, were able to harness all that section leader power and have at least one on duty at the Tresidder LaIR Computer Cluster, where we expect many of you to work on your assignments. In general, we man the LaIR with course staff Sunday through Thursday evenings, and the section leaders are open to helping you with your assignments. There will be two examinations First Exam: Second Exam: Thursday, April 28th Thursday, May 26th 7:00 p.m. 10:00 p.m. 7:00 p.m. 10:00 p.m.

Programs:

LaIR Hours:

Exams:

The first exam will cover the first four weeks of the course, and the second exam will cover the first eight weeks of the course, with a clear focus on the material not covered on the first. Each exam could be administered as a two-hour exam, but Ill scheduled three hours so as to do my reasonable share to remove whatever time pressure might otherwise be present and impede your ability to do well. There will be no final exam, which would have normally been held on the morning of Wednesday, June 8th from 8:30 11:30 a.m. Instead, your final programming assignment will be due at 11:30 a.m., at the time when your final exam would have ended.

3 The exams will be open-notes, open-reader, open-handout, closedelectronic-device. Youll be responsible for printing out whatever handouts you feel are important for exam purposes. Grading: Your final grade will be computed as follows: Programs Section Participation First Exam Second Exam 50 % 10 % 20 % 20 %

Assignments are graded on a bucket system, as we want to de-emphasize the letter or number grade and would like you to focus more on our general impression and feedback. In the interest of transparency, here is a rough description of the various buckets and the numbers they correspond to. + Given to an exceptionally strong submission that not only meets the requirements, but exceeds them in some significant, algorithmically interesting way. In general, I see less than 2% of assignments getting +s. The + is ultimately recorded as a 100 in the spreadsheet, since its clearly A+ work. Given to a solid submission that gets the job done and contains at most a very small number of trivial errors. In general, about a 35-40% of assignment submissions get the +, which maps to a 96. Given to a good submission that gets most of the job done and contains a one or more major errors, or a significant number of minor ones. In general, about 45-50% of assignment submissions get a , which maps to an 88 come spreadsheet time. This is the most controversial grade, because CS106A students dont like getting B+s. However, when we give them, its because the program wasnt as good as it could have been and there were more impressive submissions. Given to a submission that does most of the work, but contains enough problems that a isnt warranted. In practice, -s are rare in CS106A. The - maps to an 80 come spreadsheet time.

There are other bucket grades, but they are super duper rare enough that I dont need to describe them. You should try to not get them. For each assignment, we also issue a companion grade summarizing our evaluation of your overall design, style, and code clarity. While giving grades, were very open to different approaches, and penalties are imposed only when there are clear arguments that you overcomplicated something unnecessarily or your general coding style is sloppy. Style grades are also buckets, but we only issue s, +s, and -s.

4 The class median on the first exam tends to be hightypically above 80 percent, while the median on the second exam tends to be between 70 and 80. When an exam median is 80 or above, your raw exam score contributes verbatim to your final average. When the exam median is below an 80, I curve the highest grade to a 100, the median grade to an 80, and everything else is linearly interpolated. Those with a 90.0+ average (around a third of you, typically) at the end get some form of an A. Those with 80.0+ averages who dont make it to 90.0 (all but a handful of you) typically get some form of a B, and so forth. Fair Access
i

Students who may need an academic accommodation based on the impact of a disability must initiate the request with the Student Disability Resource Center (SDRC) located within the Office of Accessible Education (OAE). SDRC staff will evaluate the request with required documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty dated in the current quarter in which the request is being made. Students should contact the SDRC as soon as possible since timely notice is needed to coordinate accommodations. The OAE is located at 563 Salvatierra Walk (phone: 723-1066). The pace of this course makes it difficult for students to catch up once they have fallen behind, so I encourage you to submit all of your assignments on time. Of course, were all busy people, so Im happy to accept late work, provided you keep up with the material. Heres how I handle lateness: You get three free late days, and you consume one late day any time you hand in work between 1 second and one class period late. (If, for example, an assignment is due on a Friday and you need to take a late day, you can hand the assignment in on Monday instead.) Once youve used your three free late days, theyre gone and (except for the very best of reasonssevere illness, family emergency, and other equally urgent scenarios) you cant get any more. You can still hand in your work, but I levy a 10% penalty per assignment for each late day you use beyond the three free ones. One exception: Your final assignment will be due on the day youd normally take a final exam, at 11:30 a.m., and we cant accept any late assignments, regardless of the number of free late days you have remaining. My recommendation: plan to get the work done on time, and use a late day if it doesnt come together by the deadline.

Late policy:

This paragraph was written by the SDRC and lifted verbatim from an email sent to all instructors.

5 Incompletes: I will only grant incompletes in the event of a severe illness or a family emergency that makes it impossible for a student to finish his or her work during the regular academic quarter. Unless your circumstances are particularly extenuating, you must clear the incomplete within 30 days of the final exam, and you must manage to get all outstanding work done. Although you are encouraged to discuss ideas with others, your programs are to be completed independently and should be original work. Whenever you obtain significant help (from other students, the section leaders, students in other classes) you should acknowledge this in your program write-up, e.g. "The idea to use an array instead of an ArrayList to store the list of names was my section leaders idea." Any assistance that is not given proper citation will be considered a violation of the Stanford Honor Code. To be even more specific, you are not allowed to collaborate on the coding of your programs, nor are you allowed to copy programs or parts of programs from other students or any other sources. The following four activities are among the many considered to be Honor Code violations in this course: 1. Looking at another students code. 2. Showing another student your code. 3. Discussing assignments in such detail that you duplicate a portion of someone else's code in your own program. 4. Viewing any online solutions that may have been posted by previous CS106 students, or anyone who has, for whatever reason, implemented a solution to a CS106 assignment (or some adaptation of one) and posted that solution online. Unfortunately, the Computer Science Department sees more than its fair share of Honor Code violations. Because its important that all cases of academic dishonesty are identified for the sake of those playing by the rules, we reserve our right to use software tools to compare your submissions against those of all other current and past CS106 students. It isnt our intent to create some Big Brother environment. Were just being clear about how far well go to make sure the consistently honest feel their honesty is valued. If the thought of copying code has never crossed your mind, then you neednt worry, because Ive never witnessed a false accusation. But if youre ever tempted to share codewhether its because you dont understand the material or you do understand but just dont have enough time to get the work donethen you need to remember this paragraph is here.

Honor Code:

S-ar putea să vă placă și