UX Analysis of Basic Editing Workflow
UX Analysis of Basic Editing Workflow
Authored by Andrew Bacon (@abacon), Sr. Product Designer, GitLab AI-powered Stage on 2025-05-02
Summary
This analysis examines a core GitLab workflow—contributing to an onboarding issue template—which spans navigation, editing, and collaboration features. Four primary UX challenges emerged across this journey:
- Fragmented Context & System Integration. The most critical issues stem from disconnected experiences across GitLab's components. Duo AI exists as separate instances between the IDE and web interface with no conversation continuity. Neither instance demonstrates awareness of the user's current context, their current view, or even the operating system. This lack of context extends to reviewer recommendations, where Duo suggests users without appropriate permissions. These integration gaps undermine the promise of AI assistance and diminish user trust.
- Visual Hierarchy & Information Density. Throughout the interface, competing visual elements create cognitive friction. Bold colors are used without consideration of their place in the overall composition, many elements receive too much or too little visual prominence, and metadata overwhelms list views. The Web IDE's chaotic loading sequence with 17 distinct states in 5 seconds creates the impression of system instability rather than a professional tool. In Duo's interface specifically, constrained typography with extremely short line lengths severely impacts readability for its text-heavy interactions.
- Navigation & Information Architecture. GitLab's navigation patterns frequently diverge from established web conventions. The Tanuki logo doesn't return users to the same default view when signing in, global tools like Search and Duo appear contextually embedded despite global scoping, and table interactions lack standard patterns like column sorting. The initial view lacks personalization, forcing users to manually search through all content without filtering options for their own groups and projects.
- Interaction Models & Feedback. Across the system, interaction patterns appear incomplete. The Web IDE's competing first-run experience versus direct editing creates a disjointed experience, while Duo's scrolling behavior forces users to wait for complete responses rather than reading as they generate. Reviewer selection provides only subtle feedback, raising uncertainty about successful actions. These issues collectively increase cognitive load during critical workflows.
These patterns reflect an opportunity to evolve GitLab's experience toward greater coherence, contextual awareness, and user-centered interaction design.
What Worked Well: Despite the identified issues, GitLab provides a fundamentally solid editing workflow with several strengths:
- Functional Core Experience. All essential editing, branching, and merge request capabilities work reliably, with intuitive primary actions.
- Task Completion Success. The workflow successfully guides users through complex Git operations without requiring command line knowledge, making version control more accessible.
- Visual Design Quality. Many individual UI components and screens are visually polished and well-designed when viewed in isolation, suggesting that improvements would primarily involve interaction patterns rather than visual redesigns.
- Duo as Recovery Tool. Even with context limitations, Duo effectively helps users recover from workflow errors, reducing the likelihood of becoming completely blocked.
Methodology
- Workflow Selection: I chose to analyze the "make a change to this onboarding template" task as presented in the Design onboarding issue template because it touches on several core GitLab functions like navigating issues, editing in the web IDE, merge requests, and represents a real user journey.
- Documentation: I captured screenshots at each stage and noted points of confusion or friction.
- GitLab Duo Integration: I purposely engaged GitLab Duo at key decision points to assess its effectiveness in assisting new users.
Workflow Analysis & UX Issues
1. Finding and Opening the Onboarding Issue, Initiating the Edit Action
Task
Sign into GitLab, navigate to the onboarding issue, and then to the issue template. Initiate the process of editing the issue template.
Summary
This workflow reveals four key UX themes that impact new user productivity: inconsistent information architecture that lacks personalization, problematic visual hierarchy that disrupts natural scanning, navigation patterns that diverge from web conventions, and excessive information density in core areas. These interconnected issues increase cognitive load unnecessarily.
That said, the clear, high-contrast design of primary actions makes core navigation of this flow functional, with issues and their tasks accessible despite challenges.
Scorecard
Metric | Rating | Notes |
---|---|---|
Challenge | 4 | While some elements were confusing, the parts needed to accomplish this goall were clear enough. |
Quality | 3 | Minor inconsistencies built up to a feeling of mixed quality |
Useful | 5 | Despite small issues, UI is fully functional for the task |
Average | 4 | B |
UX Analysis
Images
2. Launching the Web IDE
Task
Wait for the IDE to launch after clicking "Edit in IDE".
Summary
The Web IDE launch experience reveals usability issues centered on perceived stability and user control. The chaotic loading experience with multiple state transitions, competing animations, and shifting layouts creates an impression of system instability rather than a reliable tool. These visual inconsistencies, combined with competing interaction models between exploration and task completion, undermine user confidence during a crucial first impression moment. The overall effect is a disjointed experience that increases cognitive load and diminishes trust in the platform.
Important to call out is that the Web IDE offers an impressive visual design with polished components and animations, and correctly navigates to the specific file for editing once loaded—it's the transitions that need refinement, not the destination.
Scorecard
Metric | Rating | Notes |
---|---|---|
Challenge | 5 | Automatic process did not require any action. |
Satisfaction | 1 | A visually chaotic and disjointed experience. |
Useful | 5 | It did successfully launch. |
Average | 3.67 | C |
UX Analysis
Video
Screen capture of loading sequence: https://drive.google.com/file/d/1_jUYgimVINY8u-awKO1BKqUpqW2tAZie/view?usp=sharing
3. Editing, Committing & Branch Creation with help from Duo
Task
Edit the markdown file, and initiate the new merge request.
Summary
Duo's experience during editing workflows suffers from three fundamental problems: constrained interface design, lack of contextual awareness, and system-centric interactions. The cramped typography and information hierarchy severely limit readability and communication effectiveness, particularly for complex content. Despite being integrated into the IDE, Duo demonstrates no awareness of the current file, user's operating system, or editing context, functioning more like a generic help system than a personalized assistant. Meanwhile, interaction patterns like forced scroll behavior during response generation prioritize system processes over user control.
Despite limited context awareness, Duo's responses are consistently helpful for basic guidance, providing clear instructions that successfully unblock users during editing workflows.
Scorecard
Metric | Rating | Notes |
---|---|---|
Challenge | 4 | Slight challenges, but succeeded in workflow. |
Satisfaction | 2 | Duo reading experience very painful. |
Useful | 4 | Was able to recover quickly from missed steps |
Average | 3.33 | C |
UX Analysis
4. Creating Merge Request & Adding Approver, with help from Duo.
Task
Create a merge request with and assign a reviewer. Use Duo for help.
Summary
The merge request and reviewer workflow reveals significant challenges with GitLab Duo's contextual awareness and continuity, severely limiting its effectiveness as an integrated assistant. Critical disconnects exist between Duo instances across interfaces, while its inability to access basic project information or provide valid reviewer recommendations undermines user trust in the AI capabilities. Interface design issues compound these problems through competing interaction patterns, ambiguous feedback mechanisms, and inconsistent visual hierarchies. These challenges reflect broader themes of fragmented information architecture, insufficient system integration, and interaction models that prioritize technical implementation over cohesive user experience. Together, they create unnecessary cognitive friction during collaborative workflows that should be streamlined and intuitive.
However the merge request workflow does successfully abstract complex Git operations into an approachable web interface, allowing non-technical users to contribute changes without specialized knowledge.
Scorecard
Metric | Rating | Notes |
---|---|---|
Challenge | 3 | Significant challenges in achieving the goal. |
Satisfaction | 2 | A simple task made complicated. |
Useful | 4 | Ultimately, being able to do MRs in the web UI is useful. |
Average | 3 | C |
UX Analysis
Low-Hanging Fruit for Duo UX Improvements
Roughly in order from less to more complex:
-
Optimize for Narrow Views
- Remove/minimize chat bubbles to reclaim horizontal space used by padding, borders.
- Reduce indentation for list items.
- Reduce font size if needed to achieve more comfortable line lengths.
- Tweak the legal disclaimer for IDE Duo
-
Papercuts
- De-emphasize "Give Feedback" action.
- Fix spacing issues in suggested prompts, during empty state
-
Scrolling Fixes
- Maintain scroll position during response generation
- Only display scrollbar when necessary
- Add subtle indicators that content is still being generated outside of view.
- Duo Identity/Differentiation 4. Visually differentiate/label Web vs IDE version of Duo (Technically simple, but a big deal in marketing/presentation) 5. Replace "Recents" button in Duo's header with side navigation that can expose all functionality. Recent, New Chat, alongside all the slash commands (reset, etc)
-
Persistent Global Access to Duo
- Provide a reliable method of accessing Duo that is always available, and never blocked by any other UI element.
- Allow Duo to remain open while fully interacting with the rest of the GitLab UI. Duo should not cover up any of GitLab either.
Next Steps
- Share with team
- TBD