WDX-180
Web Development X
Week 28 | Advanced JavaScript

Week 28 - Day 1 | Promises
Schedule
- Watch the lectures
- Study the suggested material
- Practice on the topics and share your questions
Study Plan
Your instructor will share the video lectures with you. Here are the topics covered:
- More about Promises & the Promise Constructor
- Chaining Promises
You can find the lecture code here and here
Exercises
- Study: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
- It’s important that you go through the whole document and probably more than once to fully understand the Promise concept.
- Equally important to run all the examples mentioned there and tweak them to experiment with variations to get an even better and deeper understanding.
- Explore number
#11from the promises.js reference
- It’s important that you go through the whole document and probably more than once to fully understand the Promise concept.
IMPORTANT: Make sure to complete all the tasks found in the daily Progress Sheet and update the sheet accordingly. Once you’ve updated the sheet, don’t forget to commit and push. The progress draft sheet for this day is: /user/week28/progress/progress.draft.w28.d01.csv
You should NEVER update the draft sheets directly, but rather work on a copy of them according to the instructions found here.
Week 28 - Day 2 | WebSockets for Multi-Player Games
Schedule
- Study the suggested material
- Practice on the topics and share your questions
Study Plan
One of the most prominent technologies that allow the Frontend to establish a two-way communication with the Backend is WebSockets.

What is a WebSocket
“WebSocket is a standardized communication protocol that enables simultaneous two-way communication over a single TCP connection. It has full-duplex or bi-directional capabilities that distinguishes it from HTTP. WebSocket achieves HTTP compatibility by using the HTTP Upgrade header to transition protocols.
It allows servers to push content to clients without initial requests and maintains open connections for continuous message exchange, making it ideal for real-time data transfer with lower overhead than alternatives like HTTP polling.
WebSocket communications typically occur over TCP ports 443 (secured) or 80 (unsecured), helping bypass firewall restrictions on non-web connections. The protocol defines its own URI schemes (ws:// and wss://) for unencrypted and encrypted connections respectively and supported by all major browsers.”
(From the Node.js documentation)
Here are a few resources for studying WebSockets today and experimenting with some code:
Week 28 - Day 3 | Coding Challenge: Data Wrangling
Schedule
- Practice on the topics and share your questions
Study Plan

Jump straight to the Exercises section below and solve the data wrangling exercises!
Exercises
Download the exercise file and start solving each exercise found inside the labelled statements (make_all_the_keys_lowercase, convert_the_array_into_a_dict, and so forth) and ensure that the tests pass.
You can execute and run the exercise file, either in the browser or using Node.js: node --watch jqpilot.exerices.js
IMPORTANT: Make sure to complete all the tasks found in the daily Progress Sheet and update the sheet accordingly. Once you’ve updated the sheet, don’t forget to commit and push. The progress draft sheet for this day is: /user/week28/progress/progress.draft.w28.d03.csv
You should NEVER update the draft sheets directly, but rather work on a copy of them according to the instructions found here.
Week 28 - Day 4 | Practice Day
Schedule
- Study the suggested material
- Practice on the topics and share your questions
Study Plan
Practice on the concepts that we’ve covered so far this week and build upon them.
Week 28 - Day 5 | JS Functions & Practice Day
Schedule
- Study the suggested material
- Practice on the topics and share your questions
Study Plan
Take a few minutes to check out this video about the different types of JS functions and practice by creating at least 2 or 3 examples of your own for each mode.
Weekly feedback: Hey, it’s really important for us to know how your experience with the course has been so far, so don’t forget to fill in and submit your mandatory feedback form before the day ends. Thanks you!