Landing : Athabascau University

Unit 5 Learning Diary - UltimateXI Advisor

  • Public
By Moamen Ahmed November 21, 2023 - 5:19pm


Unit 5 Learning Diary

Attached is a pdf version of the learning diary for easier readability

During Unit 5, I successfully executed a meticulous process of devising and executing three significant enhancements to my website utilizing JavaScript. Emphasizing the design aspect mentioned in my previous learning diary was incredibly helpful in facilitating a seamless transition from concept to realization. It is worth noting that while incorporating JavaScript functionalities for this unit, I found it necessary to establish a rudimentary backend service for my website. This backend operates by serving an API containing player information which presently exists in handwritten JSON format.


In earlier entries of my learning diary, I elaborated on how each modification directly correlates with and benefits the personas and scenarios outlined during Unit 1. Consequently, it brings me great satisfaction knowing that all these alterations were implemented precisely according to plan.

Learning Outcomes 

I achieved the goal of producing logical and maintainable code by adhering to best coding practices. Additionally, I fulfilled the objective of skillfully utilizing programming constructs by incorporating numerous loops and conditional statements, particularly when processing my JSON data. I reached the learning aim of proficiently handling variables, both local and global, as well as arrays, by incorporating them into my work. To simplify repeated tasks, I stored recurring elements in variables. My functions were designed to accept parameters, enhancing their versatility for various applications.

Moreover, I accomplished the learning outcome of employing an extensive array of programming techniques and commands to elevate code efficiency, reusability, and ease of maintenance. By creating highly modular functions and organizing code into separate files, I ensured that related segments were grouped appropriately.

What Went Well 

Like I said earlier, I dedicated considerable time to crafting and mapping out my trio of concepts, which set me up to efficiently generate functional code and iteratively improve it. The outcome really pleases me. Thankfully, my prior knowledge of JavaScript meant that I could focus more on executing my plans than on learning new skills.

What I Struggled With

Since I was unable to locate a readily available online API, I endured the tedious task of manually compiling statistics for various player cards. This activity was long and tedious, but as long as it worked out that is what the course is all about. Additionally, to avoid searching for individual images for each card, I temporarily set the graphic link to display the same picture of Kylian Mbappe's card.

What I Would Change

I wish I had commented my code from the beginning as I went along, as I forgot why I did some things as I was revisiting them. I also wish I added more comments throughout. One more thing I wish I would have done is to create the html pages for results and results css during their respective units since I had to add them for this unit to have a page to be able to save the updated data from search_history.

Attached is the zip file of the code having a folder with the backend file called server.js.