Integrate feedback from UX/UI audit #38
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
It's important to be mindful of the core aspect of the project, namely focusing on XR for pedagogy. There will be countless improvements to conduct on 2D/3D UX/UI but this is not the priority.
See also https://copyparty.benetou.fr/Prototypes/ada_biggu_setup_steps/readme.md?v as a form of in-headset on-boarding relying on free software cultural characters (Ada & Zangemann).
Consider IWER scripting https://video.benetou.fr/w/f92jFp74Gy87VDy6zW8G7i
For onboarding one needs to :
Both situations can probably be detected. Namely if after the page has loaded for e.g. 1min and neither actions happened (i.e. not "entered VR" or hands detected) then provide hints for both. If controllers are detected clarify how to proceed for reliable hand tracking.
Detecting OS menu in WebXR on Quest
New Simple Onboarding Flow in VR
Heuristic evaluation in hand presence for first time users (FTUs) tested on Meta Quest 2 informed by
Video recording (1:07)
https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-553286be,sort-href
✅ What's working
Issues to address
⚠️1. Accidental OS menu trigger (medium severity)
A supinated (palm-up) pinch can activate the Meta OS menu. If the user doesn't flip their hand before the spinner completes, the OS overlay interrupts the experience. Consider adding a brief warning in the instruction text, or detecting and soft-blocking the gesture during the onboarding sequence.
⚠️2. Instruction granularity insufficient for child users (medium severity)
Current instructions rely on recall rather than recognition, which raises the cognitive bar for younger audiences.
-- Right hand pinch to move objects
-- Left hand pinch to execute code
This reduces ambiguity and aligns with progressive disclosure for novice users.
🔴3. Z-axis depth interaction lacks visual guidance (low severity)
Moving the string along the depth plane (z-axis) is non-obvious; there are no affordances indicating the hand rotation required to reorient the string to a straight position. Also the string flips constantly up and down; left to right potentially urging users to use supinated pinch. Consider adding a short animated hint or a silhouette cue showing the target hand orientation or some kind of delayed spinning.
ℹ️ For your information
Consider explaining which objects users can interact with either in this or another flow. The penguin is definitely an attention grabber but impossible to catch.
🚨No visible equivalent of the working sky-color string for pink (High Severity)
Heuristic evaluation of the first experience in the larger onboarding task https://biggu.benetou.fr/remixed_room.html?room=onboarding
[Video recording (1:11)]
https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-dbcd8bf0,sort-href
Switching sky color between light blue and black via: Jxt document.querySelector('a-sky').setAttribute('color','black')
is discoverable and executable with left hand pinch once the user identifies the relevant keywords (sky, attribute, color).
However, the string that works for black/light blue has no visible counterpart with 'pink' substituted. Users who successfully learn the pattern have no surface to apply it to. This violates consistency and standards. The system taught a grammar but then hides a word. Recommend surfacing a parallel string, or enabling in-place editing
⚠️Stroop-like interference from arbitrarily colored command strings (Medium severity)
Heuristic evaluation of the first experience in the larger onboarding task https://biggu.benetou.fr/remixed_room.html?room=onboarding
Video recording (1:11)
https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-dbcd8bf0,sort-href
Using color as a stylistic property of code strings (e.g. green for jxr setCmdAttribute("scale")) creates a Stroop-effect risk: users must suppress the impulse to read color as meaning. When the task is literally about colour ('pink'), this interference is maximized: a pink string that does something unrelated to the sky is actively misleading. Color coding should either carry a consistent, documented semantic (e.g. pink = sky, green = geometry) or be removed entirely in favor of uniform white. Mixed signals increase cognitive load precisely where the task demands the least.
⚠️Proximity interaction produces no result (Medium Severity)
Heuristic evaluation of the first experience in the larger onboarding task https://biggu.benetou.fr/remixed_room.html?room=onboarding
Video recording (1:11)
https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-dbcd8bf0,sort-href
Moving the pink string physically close to the working sky-color string has no effect. If spatial proximity is not a valid mechanic, the system needs to fail more visibly: a sound cue or brief shake would confirm "this isn't how it works." Silent non-response leaves users in a dead end with no path to recovery, violating the help users recognize, diagnose, and recover from errors heuristic and visibility of system status.
🔴No in-place string editing (Low Severity)
Heuristic evaluation of the first experience in the larger onboarding task https://biggu.benetou.fr/remixed_room.html?room=onboarding
Video recording (1:11)
https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-dbcd8bf0,sort-href
Users who locate a working string (...setAttribute('color','black')) will naturally attempt to substitute 'black' with 'pink'. The same mental model used in any text editor or terminal. This is a strong real-world match. If the environment supports any form of string editing, surfacing it here would dramatically reduce the need for discoverability of parallel strings. If not currently supported, it is the most intuitive resolution path and worth scoping.
🚨 Blue Sphere Affordance Unclear (high severity)
Success rate: Activating line of code — 40% (below 70% redesign usability threshold)
P1: 0, P2: 0.5, P3: 0.5, P4: 0.5, P5: 0.5 | legend: 0-faied, 0.5-completed with help, 1-compelted independently
Most participants did not recognize the blue sphere as an interactive trigger. Several assumed it was a large object elsewhere in the space rather than a small dot attached to the line of code. The label "move me to start" combined with "(pinch the sphere)" in brackets created proximity interference: participants found it hard to visually separate the instruction text from the interactive element (text laying over the blue dot). The majority needed prompting from the researcher to activate the code line.
Recommendation: Visually decouple the blue dot from the instruction text. Consider a pulsating animation or glow on the sphere to signal interactivity. The label should direct attention unambiguously to the dot, not compete with it. Otherwise, make the entire line of code interactive.
Test context: Guerrilla usability test, 5 participants (designers and developers, aged 20–40, 3 with some having prior VR experience), ~10 min per session. Conducted seated in a chair at a coworking space in Lisbon. Environment: https://biggu.benetou.fr/games.html?play=onboarding on Meta Quest 2.
P1: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-a835aefa,sort-href (0:36)
P2: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-ef95d42a,sort-href (2:54)
P3: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-853e50dc,sort-href (0:23)
P4: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-355d0fa8,sort-href (3:19)
P5: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-083d2618,sort-href (7:47)
🚨Left/Right Pinch Gesture Conflict (high severity)
Participants carried over the left-pinch-to-execute mental model from the code activation task into the object arrangement task, causing them to knock objects (with right pinch) over instead of moving them. The right-hand-hold mechanic for moving objects was not congruent with real-world object manipulation expectations where a brief grip would allow moving objects. One participant pinched frantically with both hands before giving up. One out of 4 who reach to the object arrangement task could not grab objects and complete the task.
Recommendation: Introduce a clear gestural transition cue between the two modes. Consider a brief interstitial instruction card when the right-hand mechanic is introduced. The hold-duration requirement for moving objects needs either a visible timer affordance or an alternative mapping closer to natural grab behavior.
Test context: Guerrilla usability test, 5 participants (designers and developers, aged 20–40, 3 with some having prior VR experience), ~10 min per session. Conducted seated in a chair at a coworking space in Lisbon. Environment: https://biggu.benetou.fr/games.html?play=onboarding on Meta Quest 2.
P1: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-a835aefa,sort-href (0:36)
P2: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-ef95d42a,sort-href (2:54)
P3: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-853e50dc,sort-href (0:23)
P4: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-355d0fa8,sort-href (3:19)
P5: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-083d2618,sort-href (7:47)
🚨Progressive Disclosure Pacing Too Fast (high severity)
Once participants began executing lines, the sequence advanced faster than they could read; particularly when lines reached eye level or slightly below. Participants expressed a need for a spatial focus zone, similar to onboarding mechanics in games. One participant expected the red fixation dot to freeze or highlight the active area. Another suggested a pulsating circle or directional arrows to anchor attention.
Recommendation: Introduce a dwell or confirmation step before advancing to the next line. A highlighted active zone (bounding box, glow, or pulse) around the current line of code would reduce the attentional load and align with onboarding conventions familiar to this audience.
Test context: Guerrilla usability test, 5 participants (designers and developers, aged 20–40, 3 with some having prior VR experience), ~10 min per session. Conducted seated in a chair at a coworking space in Lisbon. Environment: https://biggu.benetou.fr/games.html?play=onboarding on Meta Quest 2.
P1: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-a835aefa,sort-href (0:36)
P2: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-ef95d42a,sort-href (2:54)
P3: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-853e50dc,sort-href (0:23)
P4: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-355d0fa8,sort-href (3:19)
P5: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-083d2618,sort-href (7:47)
⚠️Font Size and Readability (medium severity)
Several participants found text too small and too distant to read comfortably. Opacity may have compounded this.
Recommendation: Increase base font size and run a legibility pass at 0.5m, 1m, and 1.5m viewing distances. Check text opacity against the environment background, particularly against dark or low-contrast surfaces. Having a border around the letters might enhance the contrast.
Test context: Guerrilla usability test, 5 participants (designers and developers, aged 20–40, 3 with some having prior VR experience), ~10 min per session. Conducted seated in a chair at a coworking space in Lisbon. Environment: https://biggu.benetou.fr/games.html?play=onboarding on Meta Quest 2.
P1: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-a835aefa,sort-href (0:36)
P2: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-ef95d42a,sort-href (2:54)
P3: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-853e50dc,sort-href (0:23)
P4: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-355d0fa8,sort-href (3:19)
P5: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-083d2618,sort-href (7:47)
Multiple participants in the guerrilla test were observed turning palms upward, triggering the Meta Quest 2 OS overlay. None completed the activation (which requires a hold).
Test context: Guerrilla usability test, 5 participants (designers and developers, aged 20–40, 3 with some having prior VR experience), ~10 min per session. Conducted seated in a chair at a coworking space in Lisbon. Environment: https://biggu.benetou.fr/games.html?play=onboarding on Meta Quest 2.
P1: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-a835aefa,sort-href (0:36)
P2: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-ef95d42a,sort-href (2:54)
P3: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-853e50dc,sort-href (0:23)
P4: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-355d0fa8,sort-href (3:19)
P5: https://copyparty.benetou.fr/Prototypes/BiggusGate/UX/TestingReviews/#gf-083d2618,sort-href (7:47)
ℹ️Tester Proximity Interference
Meta Quest 2 hand tracking may detect a nearby researcher's arms if within 1.5–2 metres, interfering with gesture recognition. Observed during guerrilla test setup.
Recommendation: Maintain a minimum 1.5m distance between researcher and participant during active tasks. Brief all session facilitators on this constraint before testing.
Consider https://biggu.benetou.fr/games.html?play=onboarding in particular dedicated novel part of the component dedicated to detecting when leaving immersive mode yet page still running.