Launchpad has very bad UX during some workflows

Bug #1432163 reported by Merlijn Sebrechts
24
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Launchpad itself
Triaged
Low
Unassigned

Bug Description

For some workflows using launchpad is a really bad experience. Technically, it is really good, it has all the features. However, getting to those features and using them is really hard and not a pleasant experience. Launchpad hosts a lot of FS project. Written by people who do this for fun in their free time. The UX of launchpad makes this a little less fun.

One example where I compare launchpad to github: I'm writing code and want to see how something is implemented in another project.

**LAUNCHPAD**

1. Go to the project: https://launchpad.net/charms/+source/hadoop
2. Click on "code": https://code.launchpad.net/charms/+source/hadoop
3. Click on "branch": https://code.launchpad.net/~charmers/charms/precise/hadoop/trunk

Now what? Scanning the page, I don't see code or a link to code. When I first started looking at launchpad projects, I had to stop here, because I had no idea how to progress. You actually have to click the small blue link, with an "information" logo "browse the code". The logo implies that behind the link is extra information. The location and markup implies that the link is not really important. To me it seems that a link to code on a page called "code" is pretty important... So we continue:

4. Click on "Browse the code": https://bazaar.launchpad.net/~charmers/charms/precise/hadoop/trunk/files
5. Select the file you want to see: https://bazaar.launchpad.net/~charmers/charms/precise/hadoop/trunk/view/head:/config.yaml

Now the next hurdle: I want to see a different file in the same branch. The first things I tried:

* Click "back to branch summary" on top left, it even has a "back" arrow, but this points to page 3.
* Click on the folder we're in: "~charmers/charms/precise/hadoop/trunk" This doesn't bring you to the folder, but to the same branch summary page 3.

At this point I've given up and start using the back arrow. What I should do is click on "Browse files". Another link marked as "information" that is in a menu list next to 4 links that have to do with the file itself. Your brain is smart. You see patterns like this. If you see 4 similar links in the same place that have to do with the file you are looking in, you think the fifth link will also be about the file. "Browse files" would then be "Browse previous iterations of this file". But no, the fifth link actually doesn't have to do with the file but brings you back to the folder you were in. **It goes to the folder that the link above it displays but the link above goes to the summary page**

Then the names of the other 4 links.
* "Download file": Awesome! It's even on the right, I'm expecting that
* "View Changes to this file": This must be the changes made in the last revision. No, this goes to a list of all previous commits that changed this file.
* "View revision information" and "View revision" both show some part of the revision information.

**GITHUB**

1. go to project page: https://github.com/hatched/ghost-charm
2. click on file you want to see: https://github.com/hatched/ghost-charm/blob/master/config.yaml

Do you want to go back to the folder you were in? Above the code you see the folder clearly a blue link.

**CONCLUSION**

This is just one of the use-cases launchpad breaks. Technically, it can do everything you want. But it's impossible without losing a lot of time clicking through tons of pages you don't want to see. Many people are put off by this. Remember: most of the people are doing this for fun in their free time. Navigating through the maze that launchpad is isn't fun so people find another project to contribute to. A project that's on github...

source: https://www.reddit.com/r/Ubuntu/comments/2z09af/whats_the_future_of_launchpad/

Revision history for this message
Colin Watson (cjwatson) wrote :

The core reason for a lot of this confusion is the split between the pages on the main webapp and the pages served by loggerhead on bazaar.launchpad.net. This made some engineering sense but causes more or less inevitable disconnections in the UX. While there might be minor tweaks we could make to polish up loggerhead's UX (modulated by the fact that the people who knew loggerhead have long since moved on to other things ...), it's difficult to make systemic improvements without pulling code browsing into the core webapp. At this point I doubt that that will be feasible with bzr, for performance and other reasons.

For git, we'll probably initially be using cgit or something similar for code browsing, which has its own problems but is at least relatively familiar to a lot of people nowadays. But git is fast enough that we may well later be able to work on inlining code browsing into the Launchpad webapp itself, at which point it will be much easier to make sure that it's all less of a maze.

Revision history for this message
Merlijn Sebrechts (merlijn-sebrechts) wrote :

Thanks for the explanation. To me it seems that launchpad is riddled with confusing mazes like this. I really think this has a negative effect on the communities of the projects on launchpad. However, I know that you want raw data so I propose to start with a survey to see the effect of this on the community. Ask things like

* Have you ever wanted to contribute but lost interest while going through launchpad
* Have you ever tried to do something in launchpad but you couldn't find how
* Why do you go to launchpad

After the survey you will have an idea of how bad the problem is and what people want to do on launchpad. What I would propose is the following:

1. Create use-cases of the more popular workflows. I think 80% of launchpad visits can be summarized in 5-10 use-cases. Viewing code; reporting a bug; reporting a bug when you have a patch; adding a ppa; ...
2. Get some semi-technical people with few launchpad experience to do these workflows and note their problems.
3. Start fixing the problems one by one. Start with the ones that are easy.

This is a "million papercuts" kind of problem, that hasn't received enough attention for a very long time, and it is really starting to show.

Revision history for this message
Colin Watson (cjwatson) wrote :

Right now it's not so much about collecting data, as that we know we have a batch of infrastructure work we need to do before we can start on the things that are already obvious.

Revision history for this message
Matt Einhorn (matham-am) wrote :
Download full text (5.8 KiB)

I just want to add to this issue that I'm fairly new to launchpad, but I maintain a couple of packages so I have interacted with launchpad a bit over the last couple of years, maybe once every few months. But every time that I come back I spend a few very frustrating hours figuring out how to navigate to be able to do what I need to do to update my recipes and packages.

I'm just going to write out my narrative going about doing some simple task on launchpad and how difficult it was. I'm hoping it'll be read as a constructive comment to hopefully push a UI re-design higher in the priority list, because honestly I kinda dread doing these tasks on launchpad and I can imagine that is probably similarly a roadblock for others to use launchpad.

E.g. today I wanted to fix some issues with the kivy recipe https://code.launchpad.net/~kivy-team/+recipe/kivy-daily.

* So, starting from launchpad.net I click on my user settings as I don't know otherwise how to find kivy-daily. This shows my membership to "Kivy developers", something kivy related so I click that.
* I don't exactly remember the difference between packages, projects or recipes and how it interacts with teams, but it has a link to "kivy-daily" (https://launchpad.net/~kivy-team/+archive/ubuntu/kivy) so that should be what I need.
* Hmm, that shows me many packages, including kivy, but none of that is clickable so how do I get to kivy? So I vaguely remember from last time that I need to find the recipe. I click on code and than on the kivy project: https://code.launchpad.net/~kivy-team/kivy/master, but no, that doesn't look familiar.
* Oh, I see the recipes at "4 recipes using this branch", which takes me to https://code.launchpad.net/%7Ekivy-team/kivy/master/+recipes, but no!! wrong recipes!?
* So I go back and after clicking some links I find "View package details" which takes me to https://launchpad.net/~kivy-team/+archive/ubuntu/kivy-daily/+packages that I kinda remember. So I click on the first "kivy - 2.0.0-dev~daily0+202007270204-4813-pkg290~ubuntu19.10.1" which expands a sub-section.
* Nice, I see "Built by recipe kivy-daily for Kivy developers" and I remember from last time that one of those words points to the url I need. I hover over them and inspect the url they each point to and finally the words "kivy-daily" point to https://code.launchpad.net/~kivy-team/+recipe/kivy-daily.

Ok, I do some fixes. Turns out I have to add a new github mirror to a pypa package called "packaging", so I can install packaging as a python dependency during the recipe build because pip cannot go online to get it.

* I see I have done this before mirroring cython under my account https://code.launchpad.net/~kivy-team/cython/+git/cython so I'm gonna try to recreate it for the new package.
* But wait a second, on my cython mirror page the word cython at the top links to https://launchpad.net/cython. Is my cython mirror somehow linked to a global cython mirror? Maybe I didn't need to mirror it under my account to be able to use it in my recipe?
* But, I don't see anything on https://launchpad.net/cython that I could use like in my recipe which needs to look something like `nest kivycython lp:~kivy-team/cy...

Read more...

Ioana Lasc (ilasc)
Changed in launchpad:
importance: Undecided → Medium
status: New → Triaged
Colin Watson (cjwatson)
Changed in launchpad:
importance: Medium → Low
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.