Skip to main content


Quick Links

This section hosts the schedule and learning materials of all the lectures and labs, with topics described for each of them. Please consider the following information as a tentatitive preview of the course organization; it is provided only for helping students organize and plan, and is subject to change without notice.

All slides, examples, exercises, and any other material used in the classroom and in the lab will be also posted in a GitHub repository. Moreover, all lectures will be video-recorded and will be available on the Portale della Didattica, as well as here and in a dedicated YouTube playlist.

Week 01
28/02/202308:30-10:00LectureIntroduction to the courseLuigi De Russis
28/02/202310:00-11:30LectureJavaScript: introductionLuigi De Russis
02/03/202308:30-10:00ExerciseExercises on Javascript (on GitHub)Luigi De Russis
02/03/202310:00-11:30LectureJavaScript: objects and functionsLuigi De Russis
Week 02
07/03/202308:30-10:00LectureJavaScript: async programmingLuigi De Russis
07/03/202310:00-11:30ExerciseExercise with functional methodsLuigi De Russis
09/03/202308:30-10:00Lab Getting started with Node (group 1, IA-OU)Luca Mannella
09/03/202310:00-11:30Lab Getting started with Node (group 2, PA-ZZ)Luca Mannella
Lab SolutionPossible solution (on GitHub)
Week 03
14/03/202308:30-10:00LectureJavaScript: async programming (cont'd)Luca Mannella
14/03/202310:00-11:30ExerciseExercise on async programmingLuca Mannella
16/03/202308:30-10:00LabAsync programming in Node (group 1, IA-OU)Luca Mannella
16/03/202310:00-11:30LabAsync programming in Node (group 2, PA-ZZ)Luca Mannella
Lab SolutionPossible solution (on GitHub)
Week 04
20/03/2023ReadingIntroduction to Web Architectures, HTML, and CSS
21/03/202308:30-10:00ExerciseReview of Reading 1 through examplesLuigi De Russis
21/03/202310:00-11:30LectureModern CSS and Bootstrap (cont'd)Luigi De Russis
23/03/202308:30-10:00LabGetting started with HMTL and CSS (group 1, IA-OU)Luca Mannella
23/03/202310:00-11:30LabGetting started with HMTL and CSS (group 2, PA-ZZ)Luca Mannella
Lab SolutionPossible solution (on GitHub)
Week 05
28/03/202308:30-10:00LectureJavaScript in the browserLuca Mannella
28/03/202310:00-11:30ExerciseExercise on JavaScript in the browserLuca Mannella
30/03/202308:30-10:00LabJavaScript in the browser (group 1, IA-OU)Luca Mannella
30/03/202310:00-11:30LabJavaScript in the browser (group 2, PA-ZZ)Luca Mannella
Week 06
03/04/2023ReadingThe 'this' keyword in JavaScript
04/04/202308:30-10:00LectureIntroduction to ReactLuigi De Russis
04/04/202310:00-11:30LectureReact: elements and JSXLuigi De Russis
Easter vacation
13/04/202308:30-10:00LectureReact: props and stateLuigi De Russis
13/04/202310:00-11:30LectureForms in ReactLuigi De Russis
Week 07
18/04/202308:30-10:00ExerciseExercise on Forms and StateLuigi De Russis
18/04/202310:00-11:30ExerciseExercise on Forms and State (cont'd)Luigi De Russis
20/04/202308:30-10:00LabGetting started with React (group 1, IA-OU)Luca Mannella
20/04/202310:00-11:30LabGetting started with React (group 2, PA-ZZ)Luca Mannella
Week 08
25/04/2023-No class (holiday)
27/04/202308:30-10:00LabForms in React (group 1, IA-OU)Luca Mannella
27/04/202310:00-11:30LabForms in React (group 2, PA-ZZ)Luca Mannella
Week 09
01/05/2023ReadingModules in JavaScript
02/05/202308:30-10:00LectureReact Context. React Router.Luigi De Russis
02/05/202310:00-11:30ExerciseExercise on React RouterLuigi De Russis
04/05/202308:30-10:00LabReact Routes (group 1, IA-OU)Luca Mannella
04/05/202310:00-11:30LabReact Routes (group 2, PA-ZZ)Luca Mannella
Week 10
09/05/202308:30-10:00LectureExpress. HTTP APIs.Luigi De Russis
09/05/202310:00-11:30ExerciseExercise on ExpressLuigi De Russis
11/05/202308:30-10:00LabAPIs with Express (group 1, IA-OU)Luca Mannella
11/05/202310:00-11:30LabAPIs with Express (group 2, PA-ZZ)Luca Mannella
Week 11
15/05/2023ReadingClient-server interaction in React
16/05/202308:30-10:00LectureFetch. Review of the reading.Luigi De Russis
16/05/202310:00-11:30LectureuseEffect and LifeCycleLuigi De Russis
18/05/202308:30-10:00LabClient-server interaction (group 1, IA-OU)Luca Mannella
18/05/202310:00-11:30LabClient-server interaction (group 2, PA-ZZ)Luca Mannella
Week 12
23/05/202308:30-10:00LectureAbout the exam. LifeCycle: advanced aspects.Luigi De Russis
23/05/202310:00-11:30ExerciseExercise on useEffect and fetchLuigi De Russis
25/05/202308:30-10:00LabClient-server interaction (group 1, IA-OU)Luca Mannella
25/05/202310:00-11:30LabClient-server interaction (group 2, PA-ZZ)Luca Mannella
Week 13
30/05/202308:30-10:00LectureAuthentication with Passport.jsLuigi De Russis
30/05/202310:00-11:30ExerciseExercise on authenticationLuigi De Russis
01/06/202308:30-10:00LabAuthentication (group 1, IA-OU)Luca Mannella
01/06/202310:00-11:30LabAuthentication (group 2, PA-ZZ)Luca Mannella
Week 14
06/06/2023-No class
08/06/202308:30-10:00LabExam simulation (both groups)Luca Mannella
08/06/202310:00-11:30LabExam simulation (both groups)Luca Mannella

Video lectures