Fundamentals of Web Applications (Fall 2013)
Administration
- The course outline is here
- Course discussions will be on cuLearn.
- You should get an account on this wiki so you can add to it. Email Prof. Somayaji to get one with your preferred username and email address to which a password should be sent. (Note this is not a requirement.)
Required Textbooks
There are two required texts for this course:
- JavaScript: The Good Parts by Douglas Crockford.
- Learning Node by Shelley Powers.
These books have been ordered by the University bookstore. You may also buy them online in paper or ebook form. They are also available through Safari Books Online. There is even an interactive version of Crockford's book which includes an embedded JavaScript interpreter. You can get access to Safari Books Online through the Carleton Library (four concurrent users only) or partial access by becoming a member of IEEE Computer Society.
Other Resources
JavaScript
The easiest way to get started with JavaScript and get basic understanding of web technologies is to go through the interactive lessons on Code Academy. I suggest you go through their JavaScript, Web Fundamentals, and jQuery tracks. They shouldn't take you very long to do given that you already know how to program.
Crockford also has a lot of online resources on JavaScript, including videos of talks he's given that cover much of the content in his book. Look at his JavaScript page and this page of his videos.
Another good book is Eloquent JavaScript: A Modern Introduction to Programming by Marijn Haverbeke. A version of this book is available online for free. The for-sale version is apparently updated and edited.
The standard reference for JavaScript is JavaScript: The Definitive Guide by David Flanagan. It is a big book, but it is comprehensive.
Node
Another introduction to node.js is The Node Beginner Book by Manuel Kiessling.
This page by Evan Hahn has a good overview of the express/connect/node software stack.
Lectures
Date |
Topic |
---|---|
Sept. 9 |
|
Sept. 11 |
|
Sept. 16 |
|
Sept. 18 |
|
Sept. 23 |
|
Sept. 25 |
|
Sept. 30 |
|
Oct. 2 |
|
Oct. 7 |
|
Oct. 9 |
|
Oct. 16 |
|
Oct. 21 |
Midterm (in class) |
Oct. 23 |
|
Nov. 4 |
|
Nov. 6 |
|
Nov. 11 |
|
Nov. 13 |
|
Nov. 18 |
|
Nov. 20 |
|
Nov. 25 |
|
Nov. 27 |
|
Dec. 2 |
|
Dec. 4 |
|
Dec. 9 |
Tutorials
Each week you will get a progress grade from 0-4, given to you by a TA. If you are being diligent, you should be able to get 4's every week. The easiest way to get your grade is to come to tutorial and meet with your TA; alternately, you can meet a TA in their office hours or, at their discretion, discuss things with them online.
Date |
Tutorials |
---|---|
Sept. 6 |
|
Sept. 13 |
TBA |
Sept. 20 |
TBA |
Sept. 27 |
TBA |
Oct. 4 |
TBA |
Oct. 11 |
TBA |
Oct. 18 |
TBA |
Oct. 25 |
TBA |
Nov. 8 |
TBA |
Nov. 15 |
TBA |
Nov. 22 |
TBA |
Nov. 29 |
TBA |
Dec. 6 |
TBA |
Assignments
Due Date |
Assignments |
---|---|
Sept. 26 |
Assignment 1 |
Oct. 10 |
Assignment 2 |
Nov. 14 |
Assignment 3 |
Dec. 5 |
Assignment 4 |