Skip to content

Commit

Permalink
Winter 21
Browse files Browse the repository at this point in the history
  • Loading branch information
ThierrySans committed Dec 22, 2020
1 parent a277745 commit 5df8996
Show file tree
Hide file tree
Showing 868 changed files with 296 additions and 198,817 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Generated static site
_site
.jekyll-cache

# OS Files
Thumbs.db
Expand Down
2 changes: 1 addition & 1 deletion _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ exclude:
- README.md
- "*.key"
- "*.nogit"

- "node_modules"
74 changes: 37 additions & 37 deletions _data/lectures.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- week: HTML & CSS
notes:
- Introduction: 01/slides/C09-Introduction.pdf
- HTML & CSS: 01/slides/C09-HTMLandCSS.pdf
# notes:
# - Introduction: 01/slides/C09-Introduction.pdf
# - HTML & CSS: 01/slides/C09-HTMLandCSS.pdf
readings:
- HTML on MDN: https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto
- CSS on MDN: https://developer.mozilla.org/en-US/docs/Learn/CSS/Howto
Expand All @@ -11,82 +11,82 @@
- W3C CSS Validation Service: https://jigsaw.w3.org/css-validator/

- week: Javascript
notes:
- Javascript: 02/slides/C09-Javascript.pdf
- Javascript in the browser: 02/slides/C09-Javascript-browser.pdf
- Building frontends: 02/slides/C09-BuildingFrontends.pdf
- Exploring HTML5: 02/slides/C09-HTML5.pdf
# notes:
# - Javascript: 02/slides/C09-Javascript.pdf
# - Javascript in the browser: 02/slides/C09-Javascript-browser.pdf
# - Building frontends: 02/slides/C09-BuildingFrontends.pdf
# - Exploring HTML5: 02/slides/C09-HTML5.pdf
readings:
- Javascript on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript
- Modern JavaScript Cheatsheet: https://github.com/mbeaudru/modern-js-cheatsheet

- week: Web API
notes:
- The HTTP protocol: 03/slides/C09-HTTP.pdf
- Javascript on the server: 03/slides/C09-JavascriptServer.pdf
- JSON: 03/slides/C09-JSON.pdf
- Ajax: 03/slides/C09-Ajax.pdf
- Web REST API: 03/slides/C09-REST.pdf
# notes:
# - The HTTP protocol: 03/slides/C09-HTTP.pdf
# - Javascript on the server: 03/slides/C09-JavascriptServer.pdf
# - JSON: 03/slides/C09-JSON.pdf
# - Ajax: 03/slides/C09-Ajax.pdf
# - Web REST API: 03/slides/C09-REST.pdf
readings:
- A Beginner’s Guide to HTTP and REST: https://code.tutsplus.com/tutorials/a-beginners-guide-to-http-and-rest--net-16340
- 10 Design Tips For APIs: https://phraseapp.com/blog/posts/best-practice-10-design-tips-for-apis/
- RESTful API design: http://blog.octo.com/wp-content/uploads/2014/12/OCTO-Refcard_API_Design_EN_3.0.pdf

- week: Storing Data
notes:
- Storing data: 04/slides/C09-Data.pdf
- File upload: 04/slides/C09-Files.pdf
# notes:
# - Storing data: 04/slides/C09-Data.pdf
# - File upload: 04/slides/C09-Files.pdf

- week: Managing users
notes:
- Cookies and Sessions: 05/slides/C09-CookiesAndSessions.pdf
- WebAuthentication: 05/slides/C09-WebAuthentication.pdf
# notes:
# - Cookies and Sessions: 05/slides/C09-CookiesAndSessions.pdf
# - WebAuthentication: 05/slides/C09-WebAuthentication.pdf
readings:
- RESTful Authentication: https://stackoverflow.com/questions/319530/restful-authentication
- Can JWT be used for sessions: https://medium.com/@yuliaoletskaya/can-jwt-be-used-for-sessions-4164d124fe23

- break: <span class="em">Spring Break</span>

- week: Security
notes:
- Web Security: 06/slides/C09-WebSecurity.pdf
# notes:
# - Web Security: 06/slides/C09-WebSecurity.pdf
readings:
- Security Best Practices with Node.js: https://expressjs.com/en/advanced/best-practice-security.html

- break: <span class="em">Spring Break</span>

- week: Deploying web applications
notes:
- Deploying web applications: 07/slides/C09-Deploying.pdf
# notes:
# - Deploying web applications: 07/slides/C09-Deploying.pdf

- week: Deploying large scale web applications
notes:
- Deploying large scale web applications: 08/slides/C09-DeployingLargeScale.pdf
# notes:
# - Deploying large scale web applications: 08/slides/C09-DeployingLargeScale.pdf

- week: Advanced Javascript
notes:
- Asynchronism, Javascript event loop, Web Workers and Web Sockets: 09/slides/C09-AdvancedJavascript.pdf
# notes:
# - Asynchronism, Javascript event loop, Web Workers and Web Sockets: 09/slides/C09-AdvancedJavascript.pdf
readings:
- Using promises: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises
- Concurrency model and Event Loop: https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop
- Understanding Event Loop, Call Stack, Event and Job Queue in Javascript: https://medium.com/@Rahulx1/understanding-event-loop-call-stack-event-job-queue-in-javascript-63dcd2c71ecd
- Using Web Workers: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers

- week: Developing fast web applications
notes:
- Developing fast web applications: 10/slides/C09-FastWebapps.pdf
# notes:
# - Developing fast web applications: 10/slides/C09-FastWebapps.pdf
readings:
- HTTP/2 the difference between HTTP/1.1, benefits and how to use it: https://medium.com/@factoryhr/http-2-the-difference-between-http-1-1-benefits-and-how-to-use-it-38094fa0e95b
- HTTP/3 the past, the present, and the future: https://blog.cloudflare.com/http3-the-past-present-and-future/
- Long Polling vs WebSockets vs Server-Sent Events: https://medium.com/system-design-blog/long-polling-vs-websockets-vs-server-sent-events-c43ba96df7c1
- Node.js & WebSocket: https://medium.com/@martin.sikora/node-js-websocket-simple-chat-tutorial-2def3a841b61

- week: Special topics in Web Development
notes:
- i18n & l10n: 11/slides/C09-i18n.pdf
- Web Services: 11/slides/C09-WebServices.pdf
# notes:
# - i18n & l10n: 11/slides/C09-i18n.pdf
# - Web Services: 11/slides/C09-WebServices.pdf

- week: Beyond web applications
notes:
- Advertising, Analytics and Tracking: 12/slides/C09-WebAdvertising.pdf
# notes:
# - Advertising, Analytics and Tracking: 12/slides/C09-WebAdvertising.pdf
readings:
- The Fractured Future of Browser Privacy: https://www.wired.com/story/chrome-firefox-edge-browser-privacy/

Expand Down
4 changes: 2 additions & 2 deletions _data/nav.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@
absolute: False

- title: Piazza
url: https://piazza.com/mail.utoronto.ca/spring2020/cscc09
url: https://piazza.com/utoronto.ca/winter2021/cscc09
absolute: True

- title: Github
url: https://github.com/ThierrySans/CSCC09
absolute: True

- title: Feedback
url: https://goo.gl/forms/nIB52HdQeYiWjsBZ2
url: https://forms.gle/EZGNMKZPP5TK95mk9
absolute: True
56 changes: 18 additions & 38 deletions _data/settings.yml
Original file line number Diff line number Diff line change
@@ -1,74 +1,54 @@
# Site settings
ref: CSCC09
title: Programming on the Web
edition: Winter 2020
edition: Winter 2021
description: An introduction to software development on the web. Concepts underlying the development of programs that operate on the web. Operational concepts of the internet and the web, static and dynamic client content, dynamically served content, n-tiered architectures, web development processes and security on the web.
website: https://thierrysans.me/CSCC09/
github: https://github.com/ThierrySans/CSCC09
piazza: https://piazza.com/mail.utoronto.ca/spring2020/cscc09
feedback: https://forms.gle/7SNBHPcvotqVGTbL6
piazza: https://piazza.com/utoronto.ca/winter2021/cscc09
feedback: https://forms.gle/EZGNMKZPP5TK95mk9

instructor:
name: Thierry Sans
email: [email protected]
website: https://thierrysans.github.io/
github: ThierrySans
twitter: ThierrySans
hours: Wed 10am-12pm (or by appointment)
location: IC-346
hours: TBD
location: online
contact: Piazza only (no mail)
role: LEC

# https://www.fingerlakesbmw.org/main/flobfuscate.php
assistants:
- name: Cho Yin Yong
role: PRA01
contact: "&#99;&#104;&#111;&#121;&#105;&#110;&#46;&#121;&#111;&#110;&#103;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
hours: Wed 5-6pm
location: IC-402
- name: Jordan Liu
role: PRA04
contact: "&#106;&#111;&#114;&#100;&#97;&#110;&#46;&#108;&#105;&#117;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
hours: Fri 1-2pm
location: IC-402
- name: Kasra Rahmani
role: PRA05
contact: "&#107;&#97;&#115;&#114;&#97;&#46;&#114;&#97;&#104;&#109;&#97;&#110;&#105;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
hours: Tue 12am-1pm
location: IC-402
- name: Michael Liu
role: PRA03
contact: "&#109;&#105;&#107;&#101;&#108;&#46;&#108;&#105;&#117;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
hours: Wed 2-3pm
location: IC-402
- name: Spencer McCoubrey
role: PRA02
contact: "&#115;&#112;&#101;&#110;&#99;&#101;&#114;&#46;&#109;&#99;&#99;&#111;&#117;&#98;&#114;&#101;&#121;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
hours: Mon 5-6pm
location: IC-402
# - name: Cho Yin Yong
# role: PRA01
# contact: "&#99;&#104;&#111;&#121;&#105;&#110;&#46;&#121;&#111;&#110;&#103;&#64;&#109;&#97;&#105;&#108;&#46;&#117;&#116;&#111;&#114;&#111;&#110;&#116;&#111;&#46;&#99;&#97;"
# hours: Wed 5-6pm
# location: IC-402


timings:
- section: LEC01
time: Tuesday 12:00-14:00
location: SW-319
location: online
- section: LEC02
time: Friday 13:00-15:00
location: SW-309
location: online
- section: PRA01
time: Monday 9:00-11:00
location: BV-473
location: online
- section: PRA02
time: Monday 15:00-17:00
location: BV-473
location: online
- section: PRA03
time: Friday 9:00-11:00
location: BV-473
location: online
- section: PRA04
time: Friday 11:00-13:00
location: BV-473
location: online
- section: PRA05
time: Tuesday 10:00-12:00
location: BV-473
location: online

first: 20200106
first: 20210112
49 changes: 24 additions & 25 deletions _data/work.yml
Original file line number Diff line number Diff line change
@@ -1,58 +1,57 @@
- week:

- week:
lab:
title: HTML & CSS
handout: https://classroom.github.com/a/Aj7oHACv
rubric: https://grademy.work/ThierrySans/C09W20-lab2/
# handout: https://classroom.github.com/a/Aj7oHACv
# rubric: https://grademy.work/ThierrySans/C09W20-lab2/

- week:
lab:
title: Javascript
handout: https://classroom.github.com/a/a25gQCWI
rubric: https://grademy.work/ThierrySans/C09W20-lab3/
# handout: https://classroom.github.com/a/a25gQCWI
# rubric: https://grademy.work/ThierrySans/C09W20-lab3/
hw:
title: Frontend
handout: https://classroom.github.com/a/bXGufFbM
rubric: https://grademy.work/ThierrySans/C09W20-hw1/
# handout: https://classroom.github.com/a/bXGufFbM
# rubric: https://grademy.work/ThierrySans/C09W20-hw1/

- week:
lab:
title: Web API
handout: https://classroom.github.com/a/8mVDb7cM
rubric: https://grademy.work/ThierrySans/C09W20-lab4/
# handout: https://classroom.github.com/a/8mVDb7cM
# rubric: https://grademy.work/ThierrySans/C09W20-lab4/

- week:
lab:
title: Storing Data
handout: https://classroom.github.com/a/P5BAqpAg
rubric: https://grademy.work/ThierrySans/C09W20-lab5/
# handout: https://classroom.github.com/a/P5BAqpAg
# rubric: https://grademy.work/ThierrySans/C09W20-lab5/
hw:
title: Backend
handout: https://classroom.github.com/a/-pGxEiLc
rubric: https://grademy.work/ThierrySans/C09W20-hw2/
# handout: https://classroom.github.com/a/-pGxEiLc
# rubric: https://grademy.work/ThierrySans/C09W20-hw2/

- break: <span class="em">Reading Week</span>
project:
title: Proposal
handout: ../project/

- week:
lab:
title: Managing Users
handout: https://classroom.github.com/a/WyjTQGQW
rubric: https://grademy.work/ThierrySans/C09W20-lab6/


- break: <span class="em">Reading Week</span>
# handout: https://classroom.github.com/a/WyjTQGQW
# rubric: https://grademy.work/ThierrySans/C09W20-lab6/
hw:
title: Managing Users
handout: https://classroom.github.com/a/m9w_CA9N
rubric: https://grademy.work/ThierrySans/C09W20-hw3/
project:
title: Proposal
handout: ../project/
# handout: https://classroom.github.com/a/m9w_CA9N
# rubric: https://grademy.work/ThierrySans/C09W20-hw3/

- week: <span class="em">Reading Week</span>
lab:
title: Security
handout: https://classroom.github.com/a/o-LpmQeo
rubric: https://grademy.work/ThierrySans/C09W20-lab7/
# handout: https://classroom.github.com/a/o-LpmQeo
# rubric: https://grademy.work/ThierrySans/C09W20-lab7/

- week:

Expand Down
2 changes: 1 addition & 1 deletion _includes/footer.html
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
<footer class="footer">
<p class="footer__info">&copy; 2020 {{ site.data.settings.instructor.name }} | Powered by <a href="https://jekyllrb.com/">Jekyll</a> on <a href="https://pages.github.com/">GitHub Pages</a></p>
<p class="footer__info">&copy; 2021 {{ site.data.settings.instructor.name }} | Powered by <a href="https://jekyllrb.com/">Jekyll</a> on <a href="https://pages.github.com/">GitHub Pages</a></p>
</footer>
7 changes: 3 additions & 4 deletions _includes/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@
<link rel='shortcut icon' type='image/x-icon' href={{"/static/media/favicon.ico" | absolute_url}} />
<link rel="stylesheet" type="text/css" href={{"/static/css/style.css" | absolute_url }} />
<link rel="stylesheet" type="text/css" href={{"/static/css/print.css" | absolute_url }} media="print"/>
<script src={{"/static/bower_components/jquery/dist/jquery.js" | absolute_url}}></script>
<script src={{"/static/bower_components/bootstrap/dist/js/bootstrap.min.js" | absolute_url }}></script>
<script src={{"/static/bower_components/moment/min/moment.min.js" | absolute_url }} type="text/javascript"></script>
<script src={{"/static/bower_components/FeedEk/js/FeedEk.js" | absolute_url }}></script>
<script src={{"/static/lib/jquery/jquery.min.js" | absolute_url}}></script>
<script src={{"/static/lib/bootstrap/js/bootstrap.min.js" | absolute_url }}></script>
<script src={{"/static/lib/moment/moment.min.js" | absolute_url }} type="text/javascript"></script>
<script src={{"/static/js/script.js" | absolute_url }}></script>
</head>
4 changes: 0 additions & 4 deletions _includes/news.html

This file was deleted.

3 changes: 0 additions & 3 deletions _layouts/home.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@
<div id="syllabus">
{{ content }}
</div>
<div id="news">
{% include news.html %}
</div>
</div>
</div>
{% include footer.html %}
Expand Down
4 changes: 2 additions & 2 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,11 +116,11 @@ The weighting of course work is set as:
</div>
<div class="row">
<div class="hcolumn column4">Project</div>
<div class="column4">30%</div>
<div class="column4">50%</div>
</div>
<div class="row">
<div class="hcolumn column4">Final Exam</div>
<div class="column4">35%</div>
<div class="column4">15%</div>
</div>
</div>

Expand Down
12 changes: 0 additions & 12 deletions lectures/01/review/index.md

This file was deleted.

Binary file removed lectures/01/slides/C09-HTMLandCSS.key
Binary file not shown.
Binary file removed lectures/01/slides/C09-HTMLandCSS.pdf
Binary file not shown.
Binary file removed lectures/01/slides/C09-Introduction.key
Binary file not shown.
Binary file removed lectures/01/slides/C09-Introduction.pdf
Binary file not shown.
Loading

0 comments on commit 5df8996

Please sign in to comment.