Sunteți pe pagina 1din 4

CS142 Course Information

1 de 4

http://web.stanford.edu/class/cs142/info.html#materials

CS142 Course Information


Lectures

Additional Materials

Browsers

Exams

Regrades

Prerequisites
Grading Policy

Sections

Projects

Late Days

Students with Documented Disabilities

Lectures
Lectures are Mondays, Wednesdays, and Fridays from 10:30-11:20 in Building 420 (Jordan Hall) Room 040.
Lecture notes (lectures.html) are available in advance and provide an outline for much of the material that will
be presented in class. I recommend that you print out the notes and bring them to class so you can mark
them up with additional notes during lecture.
I recommend against using laptop computers during class. Although some people prefer taking notes on a
laptop instead of by hand, educational studies have shown that students using laptops tend to learn less
eectively than those without laptops: there are too many distractions available on an open computer.

Additional Materials
There is no required textbook for this class, and I am not aware of a book that is a perfect match to the lecture
material. The content of the course is dened by the lectures. You will need additional reference material to
complete the programming projects, but this material is available on the Web. One good online source for
reference documentation on HTML, CSS, and the DOM is Mozilla Developer Network
(https://developer.mozilla.org/en-US/). A comprehensive book is Dynamic HTML: The Denitive Reference,
Third Edition (http://www.amazon.com/Dynamic-HTML-Denitive-Danny-Goodman/dp/0596527403
/ref=sr_1_1?ie=UTF8&s=books&qid=1251152927&sr=1-1), by Danny Goodman (O'Reilly Media), but this
describes the Web as of a few years ago, so it doesn't include newer features such as HTML5. It is freely
available to Stanford students via Safari Books Online (http://proquest.safaribooksonline.com/).
The web application we build in the course's projects will use what is known as the MEAN stack
(https://en.wikipedia.org/wiki/MEAN_(software_bundle)). The MEAN stack uses the JavaScript language in both
the browser and the server-side. The lectures will provide an introduction to JavaScript, but more complete
information can be found on the web and in some books freely available to Stanford students through Safari
Books Online (http://proquest.safaribooksonline.com/).
JavaScript: The Good Parts (http://shop.oreilly.com/product/9780596517748.do) by Douglas Crockford
(O'Reilly Media). As the book's title suggests, JavaScript is not a simple language and it is easy to hurt
yourself with some of its features. This book recommends a somewhat more safe subset of the
language to use.
JavaScript Patterns (http://shop.oreilly.com/product/9780596806767.do) by Stoyan Stefanov (O'Reilly
Media). JavaScript programmers have discovered ways around issues in the language by doing things in
certain ways (i.e. patterns). These patterns are commonly used in JavaScript programs but some of
them use strange features of the language so it is not clear what is going on if you don't recognize them
as a common pattern.
JavaScript: The Denitive Guide, 6th Edition (http://shop.oreilly.com/product/9780596805531.do) by
David Flanagan (O'Reilly Media). As the title suggests this is a comprehensive description of JavaScript.
The class project assignments, lectures and sections will cover what you need to know about the MEAN stack.
For additional material recommend starting at the web sites of the dierent components:
Mongoose.js (http://mongoosejs.com/) and MongoDB (https://www.mongodb.org/)
AngularJS (https://angularjs.org/)
Express.js (https://expressjs.com/)

18/06/2016 06:05 p.m.

CS142 Course Information

2 de 4

http://web.stanford.edu/class/cs142/info.html#materials

Node.js (https://nodejs.org/)

Prerequisites
The ocial prerequisites for this class on ExploreCourses are CS107 and CS108. These are listed as the
prerequisites because we expect a certain level of engineering maturity and experience. You should be
comfortable working with the command line, picking up a new language and framework, reading technical
documentation, and debugging your code. Students who have taken this class directly after 106B/X have had
to work harder and spend more time than their peers, but it's not impossible. If you have any questions about
whether you should take this class, please feel free to contact the sta.

Discussion Sections
The class will have three weekly discussion sections led by the course assistants. The sections will supplement
lecture content with additional examples as well as cover material needed for the projects. Attendance is not
mandatory but we highly encourage you to attend any or all of them.
The sections will meet on the Friday at 11:30am, Monday at 12:30pm, and Tuesday at 5:30pm in History
Corner (Building 200, see course home page for room) immediately preceding each project deadline (e.g. the
Monday and Tuesday sections will not meet during the rst week). All of the sections for each project will cover
the same material.

Projects
The class will include 8 projects (projects.html), one due each week except the rst week and the week of the
midterm exam. Projects will be due at the same time each week, on Thursdays at 11:59 PM.
We encourage you to discuss the projects with other students; both giving and receiving advice will help you to
learn. It's ne to discuss overall strategy, share tips about Web technologies (useful CSS styles, library
methods, etc.), and give and receive debugging assistance. However, you must write your own code. It's not
OK to share code or write code collaboratively. The projects are intended to be simple enough for each person
to implement all of every project.
The last three projects build upon the previous project ending with a working photo sharing website. Because
of these dependencies between the projects, completing the later projects requires doing the ones that
precede it. The course sta will not provide solutions to projects but we can work with students after a
project's deadline to get the student's code working well enough to do the next assignment.
Please do not post your project solutions on the Web, either during or after the class. Students occasionally do
this because they are proud of their class work (some of the work in this class is quite good!), but this makes it
easy for future students to copy your work rather than guring things out for themselves. Posting solutions on
the Web is a Stanford Honor Code violation, since it it has the eect of giving improper assistance to other
students.
Style points: most of the grade for each project is based on the functionality of your project (does it do what
the problem asks?). However, for each project there are also a few extra style points, which are awarded
based on the way you solve the problem, not how your solution behaves. These reect the importance of
things such as proper HTML validation, clean code structure, and nice-looking interfaces. The style points to be
awarded for each project are described near the end of each project description.

Late Days
Each student is allowed a total of 3 late days, which may be spent in units of one day (24 hours) on any projects
throughout the quarter. Late days are intended to cover special situations such as illness and family
emergencies, so use them wisely. Once your late days have been used up, a penalty of 25% of the project's
total score will be assessed for each day a project is late. Projects more than four days late will not receive any

18/06/2016 06:05 p.m.

CS142 Course Information

3 de 4

http://web.stanford.edu/class/cs142/info.html#materials

credit. Due to the dependencies between projects, students may need to complete projects even if they did
not receive credit for it. See the discussion on project dependencies above.

Browsers
Unfortunately, Web browsers are still not 100% identical in their behavior, so Web pages may behave
dierently on dierent browsers. For this class, the reference browser is Chrome: your project solutions
must work on Chrome, and the CAs will use Chrome to test them. Your solutions need not work on any
browser other than Chrome. You may use a dierent browser to develop your solutions if you wish (Chrome,
Firefox, and Safari all have very similar behavior), but please test on Chrome before submitting. We do not
recommend that you use Internet Explorer for development: historically, its behavior has been quite dierent
from the other browsers, so things that work on IE may not work on Chrome, and vice versa.

Exams
The class will have a midterm exam and as well as a nal examination during exams week. If you have a
legitimate conict with the scheduled time for either examination, contact the sta to arrange an alternate
time. You may bring two double-sided 8.5x11" pages of notes with you to the midterm and the nal exam;
other than that, exams are closed-book.

Regrades
We sometimes make mistakes in grading, both on projects and exams, and are happy to correct these if you
point out the error. To request a regrade for a project, send an email with the subject "REGRADE HW# Your Name" to cs142.2016.grader@gmail (e.g. "REGRADE HW1 - Jon Snow" for a regrade request on Project
#1). Regrade requests must be submitted within 5 days after we send out the grades for a project or exam.
For regrade requests related to the midterm exam, take your exam to the oce hours of the person who
graded the particular question. For regrade requests related to the nal exam, take a picture of the answer in
question, and include it in an email to the instructor with a subject of "REGRADE FINAL". Exam regrade
requests must be submitted within 5 days after we make the graded exams available.
Regrade requests should focus on errors (i.e., something we thought was wrong but actually was right, or you
believe we misunderstood your work). There may be situations where you agree you made an error but
disagree about the number of points deducted; unfortunately, we cannot change your score in these
situations, because it would require a change in the grading rubric and thus require us to regrade all of the
projects or exams.

Grading Policy
Grades for the class will be determined as follows:
Projects: 55%
Midterm: 15%
Final: 30%

Students with Documented Disabilities


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 Oce of Accessible Education
(OAE). SDRC sta 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).

18/06/2016 06:05 p.m.

CS142 Course Information

4 de 4

http://web.stanford.edu/class/cs142/info.html#materials

Designed by Raymond Luong for CS142 at Stanford University


Powered by Bootstrap (http://getbootstrap.com/) and Jekyll (https://jekyllrb.com) learn more (website.html)

18/06/2016 06:05 p.m.

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