Description

This is a third year elective course on building modern web applications. We will cover a variety of techniques. The primary language we will use for the class is JavaScript, though this is NOT a course on JavaScript or any other language. We will cover the following topics in class (rough outline):
• Client-server model of web applications
• Building simple web pages with HTML and CSS
• JavaScript essentials, DOM and event handling
• Asynchronous JavaScript and XML (AJAX)
• Node.js and server-side technologies

General Information

Class Times
See syllabus
Instructor office hours
See syllabus
Lab hours
See UBC Course schedule
Communications
All communication regarding the course should be done on Piazza. Do NOT send email to any of the course staff - such emails will not be answered.

Announcements

Final Exam grades posted on Canvas
12/22/21 9:53 PM

Hi All,

The grades for the final exam have been entered into Canvas.

We will not be returning the final exam like we did for the midterm exam. If you would like to view your exam, you can schedule a Zoom meeting by sending us a private message on Piazza.

Below are some stats for the final exam.


Final Exam

Mean14.94 / 25= 59.76%
Standard Deviation4.14 / 25= 16.57%
Median14.5 / 25= 58.00%
Max23 / 25= 92.00%
Min6 / 25= 24.00%


Programming Question

QuestionMeanStd. Dev.Median
Q10 - Inheritance1.490.872
Q11 - Closures1.800.612
Q12 - DOM Manipulation0.901.000
Q13 - NodeJS Streams1.390.922
Q14 - AJAX1.051.002
Q15 - Promise0.250.670
Q16 - Generators1.730.692
Q17 - Web Security0.390.800


Assignment 5 grades released
12/07/21 4:09 PM

Hi All,

The grades for Assignment 5 have been uploaded to Canvas.

Please send us a private note ASAP if you think your marks have been entered incorrectly.

Thank you

Assignment 4 grades released
11/27/21 11:18 AM

Hi All,

The grades for Assignment 4 have been uploaded to Canvas.

Please send us a private note if you think your marks have been entered incorrectly.

Thank you

Assignment 5 Released
11/22/21 4:43 PM

Hi all,

Assignment 5 has now been released at https://github.com/ubc-cpen322-2021/classroom

It will be due on Sunday, December 5, 11:59 PM PST.

Kumseok and Pritam will be the primary TAs of contact for this assignment.

Please refer to @129 on information regarding lab hours.

Lecture 13 - Web Security module released
11/16/21 11:56 AM

Hi All,

The lecture (#13) videos for Web Security is out. This module is heavily demo-oriented, so I encourage you guys to try out the demo and hack with me. I promise you it’s super fun.

All the demo applications are hosted on the same server and you can find their URLs in the lecture slides or in these slides.

Please let me know if you run into any issues while checking out the demo apps.

Thank you,

-----

PS: Disclaimer: For your information, we log your sign-in activity into these demo apps (only sign-in, but no other activities are stored or monitored).

Assignment 3 grades released on Canvas
11/11/21 10:29 PM

Hi All,

The grades for Assignment 3 have been uploaded to Canvas.

Please send us a private note if you think your marks have been entered incorrectly.

Thank you

Midterm exam solutions posted
11/09/21 4:10 PM

Midterm exam solutions have been posted to the classroom repository.

Here is the link:
https://github.com/ubc-cpen322-2021/classroom/tree/master/midterm-exam

You can also find it on the course resources page:

https://piazza.com/ubc.ca/winterterm12021/cpen322/resources

Assignment 2 grades released on Canvas
11/08/21 8:00 PM

Hi All,

The grades for Assignment 2 have been uploaded to Canvas.

Please send us a private note if you think your marks have been entered incorrectly.

Thank you

Staff Office Hours
NameOffice Hours
Karthik Pattabiraman
When?
Where?
Kumseok Jung
When?
Where?
Ali Asgari
When?
Where?
Abraham Chan
When?
Where?
Pritam Dash
When?
Where?

Assignments

Assignments
Due Date
Dec 5, 2021
Nov 21, 2021
Nov 7, 2021
Oct 24, 2021
Oct 10, 2021

Lecture Notes

Lecture Notes
Lecture Date
Nov 23, 2021
Nov 16, 2021
Nov 7, 2021
Nov 7, 2021
Oct 26, 2021
Oct 26, 2021
Oct 19, 2021
Oct 12, 2021
Oct 12, 2021
Sep 30, 2021
Sep 28, 2021
Sep 21, 2021
Sep 14, 2021
Sep 9, 2021
Sep 9, 2021