Document not found! Please try again

CSC309: Programming on the Web, Fall 2015

67 downloads 1575 Views 149KB Size Report
Web Programming Step by Step, by Marty Steep, Jessica Miller and Victoria Kirst .... Class. October 15. AJAX, JSON, Web Architectures, REST API. 6. Tutorial.
CSC309: Programming on the Web, Fall 2015   

General Information  Instructor: Mashiyat, Ahmed Shah  Email: [email protected]  Office Hours: Thursdays, 3pm­4pm, Office: BA 3289 (or by appointment)  Course Website: ​ http://www.cs.toronto.edu/~mashiyat/csc309/index.htm  Discussion forum: ​ https://piazza.com/class/iea8t9q0fbj1d0    Section L0101  Class: Thursdays, 1pm­3pm, Room: SS2117  Tutorial: Tuesdays, 2pm­3pm, Rooms: BA3012, WB144, FG139  Section L0201  Class: Monday and Wednesday, 3pm­4pm, Room: BA1170  Tutorial: Friday, 3pm­4pm, Rooms: BA2139, BA1240    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­tier,  MVC  architectures,  and  mobile  supported  web  development.  We  also   cover  general  web  design  principles, security, and web performance.    Recommended Readings   Web Programming Step by Step, by Marty Steep, Jessica Miller and Victoria Kirst   Standard documents from: http://www.w3.org, and http://nodejs.org/api/    Prerequisites  Prerequisite  of  CSC343  is  waived.  Students  who  don’t  have  CSC209  need to show experience   in developing programs of significant size.    Marking  Course grade will be determined by five assignments and a final exam as follows:      

 

Weight % 

Out 

Due 

A1 (HTML5 & CSS3) 

Individual 



September 18 

September 25 

A2 (JavaScript &  Canvas) 

Individual 

15 

September 25 

October 9 

A3 (Web Service) 

Individual 

10 

October 9 

October 23 

A4 (CURD App) 

Individual 

15 

October 23 

November 6 

A5 (Large App) 

4 person Team 

20 

November 6 

December 4 

Final Exam 

 

35 (Pass mark:  above 40%)  

 

TBA 

    Assignment/Project Policies     ● Assignments will be posted on the course web page.     ● All deliverables should be submitted electronically (through markus).    ● Assignments  are  due   at  ​ 11.59  pm  on  their  due  date.  ​ Submit  early  to  avoid  last  minute  submission related problems​ . Email submission will not be be accepted unless markus is  down. Email submission at the eleventh hour will be considered as late submission.     1.  ​ Late  coursework​ .  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  12/15).   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  well before the deadline.      2.  ​ Re­marking.  ​ You  have  up  to  5  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. Details will  be  posted  on  the  course’s  newsgroup.  If  you  are  still  dissatisfied  after talking to the TA, then email  the instructor to set an appointment.      3.  ​ 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   the  instructor.  ​ Please  make  sure  to  include  “CSC309”  in  the  subject  line  of  your  email.  Finally,   before  you  email  the  instructor,  please  check  the  newsgroup;  your question may  have already been answered.      4.  ​ 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.          

Class Schedule (​ Section L0101)  Week 

 

Section L0101 

Topic  



Tutorial 

September 15 

No Tutorial 

 

Class 

September 17 

Introduction, HTTP, HTML, ​ Page Layout, ​ and CSS 



Tutorial 

September 22 

Assignment 1 Problem Solving 

 

Class 

September 24 

HTML5, CSS3​ , Media Queries, ​ DOM 

 

 

September 25 

Assignment 1 Due, 11.59 PM 



Tutorial 

September 29 

Page Inspection 

 

Class 

October 1 

Javascript, JQuery, HTML Canvas 



Tutorial 

October 6 

Assignment 2 Problem Solving 

 

Class 

October 8 

Twitter Bootstrap, Responsive design, User Experience 

 

 

October 9 

Assignment 2 Due, 11.59 PM 



Tutorial 

October 13 

Nodejs­MongoDB Setup 

 

Class 

October 15 

AJAX, JSON,  Web Architectures, REST API 



Tutorial 

October 20 

Assignment 3 Problem Solving 

 

Class 

October 22 

HTML Forms, ​ Server-Side Programming, ​ NodeJS 

 

 

October 23 

Assignment 3 Due, 11.59 PM 



Tutorial 

October 27 

Testing with Mocha 

 

Class 

October 29 

ExpressJS, AngularJS 



Tutorial 

November 3 

Assignment 4 Problem Solving 

 

Class 

November 5 

Sessions and Cookies, Performance 

 

 

November 6 

Assignment 4 Due, 11.59 PM 



Tutorial 

November 10 

November break, No Tutorial 

 

Class 

November 12 

MongoDB Schema Design, Databases  

10 

Tutorial 

November 17 

Git, Social Coding 

 

Class 

November 19 

Web Security 

11 

Tutorial 

November 24 

Performance 

 

Class 

November 26 

Cloud Computing, From Project to Product, Web Search  Engine 

12 

Tutorial 

December 1 

Assignment 5 Problem Solving 

 

Class 

December 3 

Review, informal Discussion, what’s Next? 

 

 

December 4 

Assignment 5 Due, 11.59 PM 

     

 

TBA 

Final Exam 

Class Schedule (​ Section L0201)  Week 

 

Section L0201 

Topic  



Class 

September 14,16 

Introduction, HTTP, HTML, ​ Page Layout, ​ and CSS 

 

Tutorial 

September 18 

No tutorial 



Class 

September 21, 23 

HTML5, CSS3​ , Media Queries, ​ DOM 

 

Tutorial 

September 25 

Assignment 1 Problem Solving 

 

 

September 25 

Assignment 1 Due, 11.59 PM 



Class 

September 28, 30 

Javascript, JQuery, HTML Canvas 

 

Tutorial 

October 2 

Page Inspection 



Class 

October 5, 7 

Twitter Bootstrap, Responsive design, UX  

 

Tutorial 

October 9 

Assignment 2 Problem Solving 

 

 

October 9 

Assignment 2 Due, 11.59 PM 



Class 

October 12, 14 

AJAX, JSON,  Web Architectures, REST API 

 

Tutorial 

October 16 

Nodejs­MongoDB Setup 



Class 

October 19, 21 

HTML Forms, ​ Server-Side Programming, ​ NodeJS 

 

Tutorial 

October 23 

Assignment 3 Problem Solving 

 

 

October 23 

Assignment 3 Due, 11.59 PM 



Class 

October 26, 28 

ExpressJS, AngularJS 

 

Tutorial 

October 30 

Testing with Mocha 



Class 

November 2, 4 

Sessions and Cookies, Performance 

 

Tutorial 

November 6 

Assignment 4 Problem Solving 

 

 

November 6 

Assignment 4 Due, 11.59 PM 



Class  

November 9 

November break, No Class 

 

Class 

November 11 

MongoDB Schema Design, Databases  

 

Tutorial 

November 13 

Git, Social Coding 

10 

Class 

November 16, 18 

Web Security 

 

Tutorial 

November 20 

Performance 

11 

Class 

November 23, 25 

Cloud Computing, From Project to Product,  

 

Tutorial 

November 27 

Assignment 5 Problem Solving 

12 

Class 

Nov. 30, Dec. 2 

Web Search Engine, Review 

 

Tutorial 

December 4 

No tutorial 

 

 

December 4 

Assignment 5 Due, 11.59 PM 

13 

Class 

December 7 

informal Discussion, what’s Next? 

   

 

TBA 

Final Exam