-
Notifications
You must be signed in to change notification settings - Fork 111
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into feature/tutor-times
- Loading branch information
Showing
12 changed files
with
1,586 additions
and
0 deletions.
There are no files selected for viewing
863 changes: 863 additions & 0 deletions
863
docs/ArtGallery/BackendUpgrades/Indigenous Art Gallery API.postman_test_run.json
Large diffs are not rendered by default.
Oops, something went wrong.
81 changes: 81 additions & 0 deletions
81
docs/ArtGallery/Lighthouse Project/LighthouseReviewReport.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
# Report on task: Review Research from T1 and create backlog | ||
|
||
I have reviewed two reports on the Lighthouse scores and identified the issues that needed to be | ||
rectified. One report was a review on the desktop app and the other was a review on the mobile app. | ||
Both had many errors so, I had to analyse both reports and did some research on finding | ||
recommendations and solutions for the issue identified. | ||
|
||
## Desktop App | ||
|
||
For the desktop app, here are the problems/recommendations I have identified from the report: | ||
|
||
- Properly size images (add explicit width & height for images) | ||
- Work on reducing network payloads | ||
- Serve static assets with efficient cache policy | ||
- Optimise the Largest Contentful Paint (make it faster): | ||
- Eliminate resource load delay | ||
- Eliminate element render delay | ||
- Reduce resource load time | ||
- Reduce time to first byte | ||
- Reduce the impact of third-party code (identify slow third-party JavaScript) | ||
- Reduce JavaScript execution time: | ||
- Remove unused code | ||
- Minify and compress code | ||
- Implement code splitting | ||
- Cache code with PRPL pattern | ||
- Minimise main thread work: | ||
- Evaluate the script (debounce input handlers, use web workers) | ||
- Check style layout (reduce complexity of style calculations, avoid large, complex layouts). | ||
- Rendering (manage layer count, simplify paint complexity, and reduce paint areas) | ||
- Parse HTML and CSS (extract critical CSS, minify CSS, defer non-critical CSS) | ||
- Reduce resource counts and transfer sizes (CSS & JavaScript, Images, Fonts, Documents, Media) | ||
- Minify JavaScript | ||
- Improve page loading speed: | ||
- Using Preconnect to required origins | ||
- Preload key requests | ||
- Minimise critical request depth: | ||
- Minimise number of critical resources (eliminate them, defer their download, etc) | ||
- Optimize the number of critical bytes and reduce the download time | ||
- Optimize the order for the remaining resources to be loaded (download all critical assets early | ||
to shorten critical path length) | ||
|
||
## Mobile App | ||
|
||
For the mobile app, here are the problems/recommendations I have identified from the report: | ||
|
||
- Properly size images (add explicit width & height for images) | ||
- Work on reducing network payloads | ||
- Serve static assets with efficient cache policy | ||
- Optimise the Largest Contentful Paint (make it faster): | ||
- Eliminate resource load delay | ||
- Eliminate element render delay | ||
- Reduce resource load time | ||
- Reduce time to first byte | ||
- Improve mobile friendliness (appropriately size tap targets) | ||
- Reduce the impact of third-party code (identify slow third-party JavaScript) | ||
- Reduce JavaScript execution time: | ||
- Remove unused code | ||
- Minify and compress code | ||
- Implement code splitting | ||
- Cache code with PRPL pattern | ||
- Minimise main thread work: | ||
- Evaluate the script (debounce input handlers, use web workers) | ||
- Check style layout (reduce complexity of style calculations, avoid large, complex layouts). | ||
- Rendering (manage layer count, simplify paint complexity, and reduce paint areas) | ||
- Parse HTML and CSS (extract critical CSS, minify CSS, defer non-critical CSS) | ||
- Reduce resource counts and transfer sizes (CSS & JavaScript, Images, Fonts, Documents, Media) | ||
- Minify JavaScript | ||
- Improve page loading speed: | ||
- Using Preconnect to required origins | ||
- Preload key requests | ||
- Minimise critical request depth: | ||
- Minimise number of critical resources (eliminate them, defer their download, etc) | ||
- Optimize the number of critical bytes and reduce the download time | ||
- Optimize the order for the remaining resources to be loaded (download all critical assets early | ||
to shorten critical path length) | ||
- Shorten main-thread tasks | ||
- Check and use discernible name for links | ||
- Add meta description to document | ||
|
||
I have added cards and allocated story points for each of these problems and recommendations into | ||
the Trello board under the ‘Lighthouse Project Implementation’ section. |
59 changes: 59 additions & 0 deletions
59
docs/ArtGallery/Lighthouse Project/SpikeUpskillingReport.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
# Report on Upskilling | ||
|
||
## JavaScript basics with HTML and CSS | ||
|
||
I have spent some time upskilling to contribute to this project. So far, I have learnt the basics of | ||
using JavaScript with HTML and CSS. I have completed a 7-hour course online and followed through | ||
each chapter of the basics and I understand the basic concepts of working with these languages | ||
together for web development. | ||
|
||
The online courses focused mainly on the fundamentals of JavaScript, HTML and CSS. I have learnt a | ||
few important information from this course: | ||
|
||
- JavaScript basics | ||
- Modifying text styles, text boxes and images using CSS | ||
- Chrome DevTools – tool for debugging and inspecting code | ||
- CSS Box Model – designing and positioning elements on a website. Structure of HTML | ||
|
||
### Courses for this upskilling | ||
|
||
- HTML to CSS Full Course (Beginner) | ||
- JavaScript, HTML & CSS Basics | ||
|
||
## CSS and Javascript, vue.js upskilling | ||
|
||
I have learnt how to modify existing CSS code to remove unnecessary code without changing the | ||
appearance of the website. I have also learnt how vue.js works and how to make changes to existing | ||
code. This is to help with tasks related to improving network payloads, . Here is a list of what I | ||
have learnt during this upskilling: | ||
|
||
- remove unused CSS code | ||
- remove unused JavaScript code | ||
- including webpacks to help with CSS & JS codes | ||
- purpose of vue.js, and how it functions | ||
|
||
### Topics covered | ||
|
||
- Removing unused CSS, JavaScript and HTML code | ||
- Learn webpacks to help minify CSS, JavaScript and HTML | ||
- Vue.js for beginners | ||
|
||
## Lazy loading, TreeShaking and Ant Design upskilling | ||
|
||
I have learnt how to implement lazy routing and TreeShaking into the existing code to help with some | ||
performance issues. I have also learnt about Ant Design, it's purpose and how it works. This | ||
upskilling helps with tasks related to PRPL and modifying/reducing impact of thirs party code. I | ||
have learnt the following: | ||
|
||
- What is lazy routing | ||
- How to properly implement lazy loading | ||
- What is TreeShaking and what does it to | ||
- How to implement TreeShaking | ||
- What is Ant Design and why is it used | ||
|
||
### Topics covered for this upskilling | ||
|
||
- Vue router tutorial | ||
- Lazy routing and code splitting | ||
- What is TreeShaking and how to implement | ||
- Ant Design courses |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
import json | ||
import csv | ||
|
||
# Load the JSON file | ||
with open('Trello.json', 'r') as file: | ||
data = json.load(file) | ||
|
||
# Define the backlogs of interest/Sprints Of interest | ||
backlogs_of_interest_names = [ | ||
"Sprint 1 -Upstream Review", "Sprint 1 Complete", | ||
"Sprint 2 Code Review", "Sprint 2 -Upstream Review", "Sprint 2 Complete", | ||
"Sprint 3 Review", "Sprint 3 Complete", | ||
"Sprint 4 Review", "Sprint 4 Complete", | ||
"Numbas - Code-Review", "Numbas - Complete" | ||
] | ||
|
||
# Map the list names to their IDs/Names | ||
list_id_to_name_mapping = {} | ||
backlogs_of_interest = [] | ||
|
||
for list_ in data["lists"]: | ||
if list_["name"] in backlogs_of_interest_names: | ||
backlogs_of_interest.append(list_["id"]) | ||
list_id_to_name_mapping[list_["id"]] = list_["name"] | ||
|
||
|
||
# Extract members | ||
members = {member["id"]: member["fullName"] for member in data["members"]} | ||
|
||
# Process cards | ||
cards_by_member = {} | ||
total_story_points = {} | ||
for card in data["cards"]: | ||
if card["idList"] in backlogs_of_interest: | ||
for member in card["idMembers"]: | ||
if member in cards_by_member: | ||
cards_by_member[member].append(card) | ||
else: | ||
cards_by_member[member] = [card] | ||
|
||
# Extract story points | ||
story_points = 0 | ||
for plugin_data in card.get("pluginData", []): | ||
if "storyPoints" in plugin_data["value"]: | ||
story_points = int(json.loads(plugin_data["value"])["storyPoints"]) | ||
|
||
# Update total story points for member | ||
if member in total_story_points: | ||
total_story_points[member] += story_points | ||
else: | ||
total_story_points[member] = story_points | ||
|
||
# Write the CSV | ||
with open('OntrackTrelloReview.csv', 'w', newline='') as file: | ||
writer = csv.writer(file) | ||
writer.writerow(["Sprint", "Full Name", "Card Name", "GitHub Link", "Story Points", "Total Story Points"]) | ||
|
||
for member_id, cards in cards_by_member.items(): | ||
for index, card in enumerate(cards): | ||
# Extract story points for the current card | ||
story_points = 0 | ||
for plugin_data in card.get("pluginData", []): | ||
if "storyPoints" in plugin_data["value"]: | ||
story_points = int(json.loads(plugin_data["value"])["storyPoints"]) | ||
|
||
# Check for GitHub related info | ||
github_link = None | ||
for attachment in card.get("attachments", []): | ||
if "github.com" in attachment["url"]: | ||
github_link = attachment["url"] | ||
break | ||
|
||
# Determine if we should show the total story points for this row | ||
show_total = total_story_points[member_id] if index == len(cards) - 1 else "" | ||
|
||
sprint_name = list_id_to_name_mapping[card["idList"]] | ||
writer.writerow([sprint_name, members[member_id], card["name"], github_link, story_points, show_total]) | ||
|
44 changes: 44 additions & 0 deletions
44
...Front End Migration/Research & Findings/Spikes/SpikeOutcome - Data Analytics.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
# \*\*Spike Outcomes | ||
|
||
================== | ||
|
||
**Spike:** Spike_No | ||
|
||
**Title:** Data Analytics Spike | ||
|
||
**Author:** Dylan Sutherland, <djsutherland@deakin.edu.au> | ||
|
||
## Goals / Deliverables | ||
|
||
Summarise from the spike plan goal*Besides this report, what else was created ie UML, code, reports* | ||
|
||
- Data Analytics backlog on Trello | ||
|
||
## Technologies, Tools, and Resources used | ||
|
||
List of information needed by someone trying to reproduce this work\ | ||
|
||
- Internet Browser; Google Chrome, FireFox, Safari | ||
|
||
## Tasks undertaken | ||
|
||
List key tasks likely to help another developer | ||
|
||
- Engaged in Discussion with Andrew Cain | ||
- Created a Trello backlog for the continued development of Data Analytics | ||
|
||
## What we found out | ||
|
||
The Data Analytics feature as it currently exists in OnTrack provides a limited set of | ||
visualisations given the data available. The current visualisations are: Target Grade Pie Chart, | ||
Task Status Pie Chart & Task Completion Box Plot. For the future development of Data Analytics, | ||
although integrated visualisations will continue to play a key role in providing a quick overview of | ||
the data, the ability to export the data to a third party tool such as Tableau or PowerBI will be a | ||
key feature. This will allow for more complex visualisations to be created and for the data to be | ||
analysed in more depth. The current visualisations will need to be migrated to the latest version of | ||
Angular and maintained as they provide a quick overview of the data. One particular area where the | ||
current visualisations are lacking is the ability to track interaction time such as tutor time to | ||
provide task feedback, this is a key visualisation which could be added to the existing | ||
visualisations. In parallel to extending the current visualisations, the requirements of the export | ||
feature will be investigated including a questionnaire to understand the needs of Unit chairs and | ||
tutors, before designing UML diagrams and implementing the feature. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.