Fundamentals of Web Applications (Fall 2024): Difference between revisions

From Soma-notes
No edit summary
Line 1: Line 1:
==Course Outline==
==Course Outline==


[[Fundamentals of Web Applications: Fall 2024 Course Outline|Here]] is the course outline.
[[Fundamentals of Web Applications: Winter 2024 Course Outline|Here]] is the course outline.


==Lectures and Exams==


==Schedule==
<table style="width: 100%;" border="1" cellpadding="4" cellspacing="0">
  <tr valign="top">
    <th>
    <p align="left">Date</p>
    </th>
    <th>
    <p align="left">Topic</p>
    </th>
  </tr>
    <tr>
      <td>
      <p>Sept. 5
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 1|Lecture 1]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 10
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 2|Lecture 2]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 12
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 3|Lecture 3]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 17
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 4|Lecture 4]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 19
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 5|Lecture 5]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 24
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 6|Lecture 6]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 26
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 7|Lecture 7]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 1
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 8|Lecture 8]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 3
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 9|Lecture 9]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 8
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 10|Lecture 10]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 10
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 11|Lecture 11]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 15
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 12|Lecture 12]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 17
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 13|Midterm Review]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 29
      </p>
      </td>
      <td>
      <p>Midterm Exam (in class, online)
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 31
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 14|Lecture 14]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 5
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 15|Lecture 15]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 7
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 16|Lecture 16]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 12
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 17|Lecture 17]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 14
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 18|Lecture 18]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 19
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 19|Lecture 19]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 21
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 20|Lecture 20]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 26
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 21|Lecture 21]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 28
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 22|Lecture 22 (US Thanksgiving)]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Dec. 3
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 23|Lecture 23]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Dec. 5
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F Lecture 24|Lecture 24]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>TBD (Final exam period)
      </p>
      </td>
      <td>
      <p>Final Exam
      </p>
      </td>
    </tr>
</table>


Full schedule will be posted soon.
==Tutorials==


Key dates:
For each tutorial 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. You may discuss with your TA in person or online, but the conversation should at least involve a voice call.


First class: Sept. 5, 11:35 AM via Zoom.
<table style="width: 100%;" border="1" cellpadding="4" cellspacing="0">
Tutorials start: Sept. 12.
  <tr valign="top">
    <th>
    <p align="left">Release Date</p>
    </th>
    <th>
    <p align="left">Tutorials</p>
    </th>
  </tr>
    <tr>
      <td>
      <p>Sept. 12
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 1|Asynchronous Code in JavaScript]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 19
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 2|Tiny web server]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Sept. 26
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 3|TBA]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 3
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 4|TBA]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 10
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 5|TBA]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 31
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 6|TBA]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 7
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 7|TBA]]
      </p>
      </td>
    </tr>
    <tr>
    <tr>
      <td>
      <p>Nov. 14
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 8|TBA]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 21
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Tutorial 9|TBA]]
      </p>
      </td>
    </tr>
</table>
 
==Assignments==
<table style="width: 100%;" border="1" cellpadding="4" cellspacing="0">
  <tr valign="top">
    <th>
    <p align="left">Due Date</p>
    </th>
    <th>
    <p align="left">Assignments</p>
    </th>
  </tr>
    <tr>
      <td>
      <p>Oct. 2
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Assignment 1|Assignment 1]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Oct. 16
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Assignment 2|Assignment 2]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Nov. 20
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Assignment 3|Assignment 3]]
      </p>
      </td>
    </tr>
    <tr>
      <td>
      <p>Dec. 4
      </p>
      </td>
      <td>
      <p>[[WebFund 2024F: Assignment 4|Assignment 4]]
      </p>
      </td>
    </tr>
</table>
 
 
==Resources==
 
===JavaScript===
 
* A good book is [http://eloquentjavascript.net/ Eloquent JavaScript: A Modern Introduction to Programming] by Marijn Haverbeke.  A version of this book is available online for free, but you can also purchase a copy.
* A more in-depth book series is [https://github.com/getify/You-Dont-Know-JS?tab=readme-ov-file You Don't Know JS Yet].
* A standard reference for JavaScript is [http://shop.oreilly.com/product/9780596805531.do JavaScript: The Definitive Guide] by David Flanagan.  It is a big book, but it is comprehensive. (You'll probably have to buy this one.)


Please join the class Teams (via the link in Brightspace), you'll have to request access and it will be granted soon after.


==Lecture Recordings==
==Lecture Recordings==

Revision as of 13:57, 10 September 2024

Course Outline

Here is the course outline.

Lectures and Exams

Date

Topic

Sept. 5

Lecture 1

Sept. 10

Lecture 2

Sept. 12

Lecture 3

Sept. 17

Lecture 4

Sept. 19

Lecture 5

Sept. 24

Lecture 6

Sept. 26

Lecture 7

Oct. 1

Lecture 8

Oct. 3

Lecture 9

Oct. 8

Lecture 10

Oct. 10

Lecture 11

Oct. 15

Lecture 12

Oct. 17

Midterm Review

Oct. 29

Midterm Exam (in class, online)

Oct. 31

Lecture 14

Nov. 5

Lecture 15

Nov. 7

Lecture 16

Nov. 12

Lecture 17

Nov. 14

Lecture 18

Nov. 19

Lecture 19

Nov. 21

Lecture 20

Nov. 26

Lecture 21

Nov. 28

Lecture 22 (US Thanksgiving)

Dec. 3

Lecture 23

Dec. 5

Lecture 24

TBD (Final exam period)

Final Exam

Tutorials

For each tutorial 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. You may discuss with your TA in person or online, but the conversation should at least involve a voice call.

Release Date

Tutorials

Sept. 12

Asynchronous Code in JavaScript

Sept. 19

Tiny web server

Sept. 26

TBA

Oct. 3

TBA

Oct. 10

TBA

Oct. 31

TBA

Nov. 7

TBA

Nov. 14

TBA

Nov. 21

TBA

Assignments

Due Date

Assignments

Oct. 2

Assignment 1

Oct. 16

Assignment 2

Nov. 20

Assignment 3

Dec. 4

Assignment 4


Resources

JavaScript


Lecture Recordings

This page will be reformatted soon!

Note the subtitle files can be used with VLC or similar players, just download the files and watch locally.