Hacktoberfest - PR #3

    For the third Pull Request, I decided to work on the Repository made by OSD students present and past. The Telescope is an app that displays and updates all the students at OSD's blog posts in chronological order, I thought since I was working on CSS and HTML for my second pull request at Hacktoberfest, I may understand the front-end parts of the app better.

    I picked up an Issue on creating User Experience for when errors occur in terms of displaying the blog posts. There were three specific situations that David Humphrey, our professor, mentioned: 
    - When the post fails to load
    - When the post is still loading
    - When the loading for the entire timeline fails
    
    In order to get started on the issue, I had to go through various different kinds of installation to allow the code to run locally. Setting up Elasticsearch and Redis Server pre-requisites took longer than expected, but thanks to classmate Tony Vu's reply, I was able to run everything without problems. I learnt how the front-end code works after going through the structure of the files, as well as reading the targeted files that are related to the issue.

    Since there were components for the layout of a regular blog post Box element, I decided that I was going to keep visual consistency by making the error displays similar to the header section of a regular blog component. To decide how all the error displays will look, I spent some time going around the internet visiting blogging and forum websites to take how their error messages look as references to my own. I concluded with the usage of icons and spinners for the best possible error message visual cues.

    First, when a post fails to load, I made a regular post header without a display body. It will consist of an Icon component and descriptive text for the type of error it is.

    Second, when a post is still in the process of loading, it will have an identical layout as a regular post. But instead of what a regular blog post block is formatted, it will inform about the loading state and include a spinner component on the text body to visually indicate loading time.

    Finally, when an entire timeline fails to load, none of the posts will be displayed. Instead, a replacement will be a faded font plus an icon of the same style to be displayed over where the timeline would be to inform the users that the loading failed.

    After creating the base designs for how the error handling would look like, Professor Humphrey suggested that I consult with indivisuals who works on and/or maintains the front-end sections for Telescope. I asked around Slack and recived approval for this pull request as an initial look.

    This pull request allowed me to learn more about react components like Box and Grid, as well as CSS using react. I believe that I had improved just by a little in terms of trying to have a perspective as an user when an error occurs, and concluded that what would be ideal is a simple, easy, and informative design.

Comments

Popular posts from this blog

Lab 2 Blog

Lab 4 Blog

Release 0.4