Skip to content

(Chihiro) User Experience

RePod edited this page Nov 19, 2017 · 1 revision

Most of this still applies to Valkyrie, but for instance the PS+ toggle button was later switched to a 3-state checkbox.

Forged in the mountains, and never perfected.

This is a list of intentional design choices meant to increase the quality of the user's experience by tailoring it better. It may not be complete or accurate.

  • Simple and consistent interface.
    • Thought out color and usage schemes so nothing is too powerful but still fits in.
    • Startup options are best user intentions by default.
    • Potential for translations.
  • Only show systems on the download list to be filtered.
    • Before, all systems would be filterable without having content for them.
  • Categories, in general. Provided by the Catalog.
    • Originally implemented by text searching, replaced with Catalog data.
    • Sorted into a logical order so "Games" is always first from the left, etc.
    • Only categories available are shown, similar to systems.
  • Download window only shows activated consoles as targets.
    • Will not see "Download to PS4" if there is no PS4 on the account.
  • Powerful searching with special properties (like Name, Publisher, ID) and regex support.
    • Caters to casual and power users.
    • Default search text used to hint at regex, but was omitted.
  • Bandwidth saving. Good for everyone.
    • Icons on the list are considerably smaller than normal and are lazy-loaded (loaded when viewed).
    • Higher quality icons (and screenshots if enabled) are only fetched when viewing the download window.
  • Exporting.
  • Powerful debugging tools that are mostly hands-off to not flood bug submitters with confusing instructions.

Caveats

Problematic design choices that could not be helped.

The PS+ toggle button, a 3 state slider (hide/both/show).

Had to leverage a user's knowledge of Web x.0 inputs with how sliders can have multiple states that indicate different things. I did this in two ways: relocating the "handle" and changing its color to reflect the status.

Fortunately phones paved the way for this, so it was not a huge concern.

Sorting columns, and inverting them.

Once again leveraging a user's knowledge on interfaces. Anybody who had dealt with spreadsheets or sorting table columns would most likely be familiar with the concept of an arrow in a column's header.

However, for the in-between I added visual cues by changing the mouse cursor to the typical "click" one indicating it columns capable of being sorted could be done so here.

The download window, and presenting information.

As it stands, the download window fortunately does not provide an abundance of information to distract from its purpose. However, all that potential data is left waiting to be exported then.

The original concept was a rectangular window (4:2 aspect ratio) that would look more like a popped-out row from the table. I eventually decided on a square (with curved edges) for uniformity and to allow a great resolution of the icon to "sell" the item. Eventually, media support was added and if available screenshots became the background of the entire screen as well.

Prominently though, the download buttons were also made to fit with PSDLE's scheme but also work how one would expect from the original download list (including an "All" button).

Exporting, in general. All of it.

While originally a whim (and not a request!), I had heard of people maintaining their own lists locally. I can only imagine the time spent making it to their liking by hand.

However, exporting quickly became a game of cat and mouse for both me and users. The first iteration of exporting offered no customization and was effectively a mirror image of PSDLE's table, just in text. This was fine with many but my worst fears came true: edge cases.

After adding PS TV support, I had to ensure it was exportable. And weird values that PSDLE was also presenting already (like PS+) also had to be exportable. A lot of exceptions were needing to be made which resulted in the first rewrite. This added a new window listing exportable properties with check boxes next to each so people can tune their export as desired. The benefit of this is there was now a window to handle all this stuff and it was kind-of future proof, I'd just have to add more check boxes.

But that was not enough. Not for users, or me. A couple of similar requests started popping up asking for arbitrary data not already exportable to be provided. While I say arbitrary, they have their reasons and it makes me feel like I wasn't delivering a great experience. PSDLE excelled in all areas for users getting what they want out of it, except exporting (and batch download queuing). Then I made the realization to rewrite it one more and hopefully the final time, future proofing it the best way possible.

Enter dynamic population. Users could now have infinite columns with any name, and more importantly (almost) any property. Properties were obtained in such a way to make sure 99% of the time any new property is added it is instantly available for export. If PSDLE could do it, the user could too without additional hurdles or waiting on a fix.