We also cover general Web design principles, with a special focus on security
and scalability. Required Readings. Web Programming Step by Step. Marty
Steep ...
CSC 309 Programming on the Web Fall 2014 General Information Instructor Lectures Office Hours WWW
Prof. Eyal de Lara BA 5234
[email protected] Section L101 Tuesday 2-3pm and Thursday 1-3pm Section L201 Monday, Wednesday and Friday 3-4am Tuesday 3-4pm and Friday 2-3pm www.cs.toronto.edu/~delara/courses/csc309/index.html
Overview This course provides an introduction to the technologies used for developing Web applications. We discuss technologies for static and dynamic content generation, including n-tiered architectures, mobile development and cloud computing. We also cover general Web design principles, with a special focus on security and scalability.
Required Readings Web Programming Step by Step Marty Steep, Jessica Miller and Victoria Kirst Second Edition Lulu.com
Prerequisites CSC209
Marking Course grade will be determined by four assignments, a midterm and a final exam as follows: A1 (HTML, CSS) A2 (Javascript, Canvas) A3 (PHP, CodeIgniter, Databases) A4 (AJAX & Security)
Weight 10% 15% 20% 15%
Midterm Final Exam
15% 25%
Out Sep 18 Oct 2 Oct 16 Nov 20
Due Sep 29 Oct 13 Nov 17 Dec 2
Assignment/Project Policies 1. You have to work on the assignments in groups of 2 students. 2. Assignments will be posted on the course web page. 3. Assignments are due at 5pm on their due date. 4. All deliverables should be submitted electronically. 5. Late course work. You can turn in your assignment up to 2 days late, but this will cost you 10% of the maximum grade for every day you are late (i.e., an assignment turned 2 days late can get a maximum of 8/10). No assignment will be accepted after 2 days, and will be given a grade of 0. If you are struggling with an assignment, talk to the instructor or the TA’s for help before the deadline. 6. Re-marking. The TAs will hold a special re-marking session shortly after assignments are handed back to students. Details will be posted on the course’s newsgroup. If you are still dissatisfied after talking to the TA, then email me to set an appointment. You have up to 7 days from the time the marked assignment is available for hand-back to ask for a re-mark. No assignment will be re-marked after this period. 7. Communications. Your best bet for getting questions answered quickly is to post to the course discussion group. If you think your question is not appropriate for the newsgroup, feel free to email me. Please make sure to include “CSC309” in the subject line of your email. Finally, before you email me, please check the newsgroup; your question may have already been answered. 8. Cheating/Plagiarism. The policy of your faculty or school will be in effect. You are encouraged to discuss problems with your classmates; however, all work that you submit must be your own. When you submit an assignment with your name on it, you are certifying that you have done the work on that assignment yourself. Remember that the penalty for cheating is always worse than handing in the assignment late.
Schedule L101
L201
Required Reading
Topic
Sep 11
Sep 12
Introduction
Ch. 1
Sep 16
Sep 15
Cloud Computing
Sep 18
Sep 17
HTML5 & CSS
Ch. 2 & 3
Sep 18
Sep 19
Page Layout
Ch. 4
Sep 23
Sep 22
Javascript
Ch. 8
Sep 25
Sep 24, 26
DOM
Ch. 9, Ch. 11 pages 410415, 426, 427
Sep 30
Sep 29
Javacript Objects
Oct 2
Oct 1, 3
HTML Canvas
Oct 7
Oct 6
JQuery
Oct 9
Oct 8
HTTP
Oct 9
Oct 10
CGI and Forms
Oct 14
Oct 15
Midterm
Oct 16
Oct 17
PHP
Ch. 5 pages 148-189, Ch. 6 pages 233-239
Oct 21, 23
Oct 20, 22
Session Maintenance
Ch. 14
Oct 23
Oct 24
Object Oriented PHP
Ch. 5 pages 190-192
Oct 28
Oct 27
CodeIgniter
Oct 30
Oct 29, 31
Input Validation
Ch. 15 pages 578-604
Nov 4, 6
Nov 3, 5, 7
Databases
Ch. 13
Nov 11, 13
Nov 10, 12
AJAX
Ch. 12
Nov 13
Nov 14
Concurrency Control
Nov 20
Nov 19, 21
Accounts and Access Control
Nov 25, 27
Nov 24, 26
SQL Injection
Nov 27
Nov 28
JQuery UI, CSS Animation
Dec 2
Dec 1
Mobile Development
Ch. 10 pages 380-391 Ch.6 pages 206-231
Ch. 15 pages 605-614