Author Archive

Launchpad’s UI is evolving

Thursday, February 17th, 2011

We are updating the UI over several iterations over the next few weeks for several reasons:

  • Launchpad should apply the Canonical guidelines for websites to take advantage of the research done for other sites. Being consistent with other Ubuntu and Canonical sites means there is less for users to learn about what the presentation means.
  • Launchpad has 730 style rules. Most are dedicated to defining exceptions, not standards. 730 rules is too much, too much for developers to maintain, too much for users to understand.

Many users have remarked about Launchpad’s recent the loss of colour.  We did this because:

  • It is hard to learn the meaning of so many colours.
  • It is confusing to see headings of different colour that have the same meaning.
  • Answers and Blueprints used blue, the same colour as links.
  • There were inappropriate uses of green that confused users who know that green means “perform an action without leaving the page”.
  • The were uses of orange and purple that users might mistake for Canonical’s aubergine and Ubuntu’s orange.

We appreciate your feedback, and we would like to hear more. There are also legitimate concerns being raised and we are not surprised because they are the same concerns we discussed.

1. Headers are harder to identify

Indeed they are. The old colours were hiding the font-size and whitespace issues that are still present in Launchpad. I am working on this issue right now. Launchpad uses many font sizes, and the percentage mechanism used does not render the size developers intend (font size smaller than default creates accessibility and usability difficulties). I think headers will be easier to understand when there are fewer, but distinct, font-sizes being used.

2. Buttons, callout actions, are hard to find

The links to report a bug for example look like normal links. They are hard to see. These important actions are no longer callouts. The only action that users can still find is the green download button…but that green does not mean “perform an action without leaving the page”. This is bad. We do know what to do about this yet. Maybe you can help. I think they need colour, they may need iconography. Look at http://www.ubuntu.com/ to see an example button and callout links. Launchpad does not have a colour at this moment. Launchpad does not have an obvious position along the axis described in the website guidelines (Canonical, corporate, aubergine)..(Ubuntu, community, orange). Launchpad definitely has both aspects; Canonical created Launchpad to build Ubuntu. I think there is a second axis for upstream projects (corporate and community, hosted and mirrored, Ubuntu and other OSes) that might need a colour. Most of the links that I think of are about participation in community, so I favour orange. But is this right? Does the orange also mean Ubuntu to non-Ubuntu users? Will the use of orange stop users from reporting a bug in the OpenStack project?

Team polls restored, but future is unclear

Tuesday, January 11th, 2011

We restored team polls because several Ubuntu teams require their use in their charter. They cannot easily switch to another service because it is not possible to organise the members to vote. We decided that to restore them while we decide what to do.

Option one: Contributors re-invent the UI so that setting up a poll is uncomplicated by silly restrictions and requirements. Many teams are not using Launchpad because they want condorcet polls. Launchpad may require them to keep the feature.

Option two: provide the information teams need to use another poll service. Team members can hide their email addresses, so it is not possible for the team admins to gather the member information to setup a poll. Honouring member privacy may require choosing or setting up a poll service that uses OpenId.

There is an unstated issue that options one and two do not address. It is also not possible to contact every member of team in Launchpad. How do team members ever know when a team admin creates a poll? Regardless of if the poll is in Launchpad, or in another service, members are unlikely to participate unless they happen to see the poll while visiting the team page in Launchpad. How often does that happen? Why would I visit my team’s page? I visit the teams I admin because I review membership proposals, moderate list mail and check on PPAs. I have no reason to visit the page of a team that I am just a member of.

Faster pages

Friday, June 11th, 2010

I am happy to report that caching rules I put in place on many pages last week are effective. I did not want to announce that pages were faster until I could see read a week of oops reports to verify that the slow pages owned by the Launchpad registry team were no longer listed as problems. I am honestly surprised that all the slow pages I changes are not listed. I expected to make a reduction in timeouts between 50% and 80%. This looks like a 100% success. I know it is not 100%, but I think this means that milestone, series, and project pages load quicker and you are seeing fewer timeouts.

Launchpad pages now have access to memcached to store fragments of pages. Parts of pages that are costly to generate are cached for minutes or hours depending on how often the data can change. In the case of distro series pages, architecture data changes every few months so the cache rules are 6 hours. Milestone pages were a challenge to cache. Active milestones cache bugs for 10 minutes, Inactive milestones cache for 3 hours. The milestone summary of statuses and assignments cache for 1 hour. If you do not know this, you may suspect there is a bug in launchpad, or wonder if you did not update a bug as you thought. We need a mechanism to expire change when data is changed.

We are now adding cache rules to other pages to improve page load times.

Fixes to team contact addresses and list moderation

Tuesday, May 4th, 2010

Many users have discovered that they could not reuse an email address that once belongs to a team. While Launchpad claimed the contact address was gone, that was not the case; it was hidden, never to be seen again. This is fixed. Launchpad does what it says. It removes the email address. The address can be re-registered if needed.

Many list moderators have noted that there are messages with no content in the moderation queue. This is because the messages had no text part, and that these are spam. Launchpad now discards messages without a text parts. You will not be asked to moderate a message that has no content. There is one caveate to this, content-less messages already in the moderation queue must be removed using the UI.

Ubuntu package suggestions

Tuesday, May 4th, 2010

The Ubuntu packages portlet lists the most recent project packages in Ubuntu’s main archive. But there are thousands of Ubuntu packages that are not linked to a registered Launchpad project. The links are needed to forward bugs upstream, sync translations, and get the latest project code. The portlet now suggests unlinked packages.

You can help Ubuntu and the project by selecting the right package. There are many cases where the project’s name is different from the Ubuntu package, and you can search for an alternate package. You can also state that the project is not packaged in Ubuntu.

After the project is linked to an Ubuntu package, it is possible to link it to other project packages from the All packages page. You can also do this from the project’s series pages.

Update: Have a look at the Gedit Developer Plugins project’s overview page for an example.

Easier project configuration

Tuesday, May 4th, 2010

Project Get Involved portlet Projects get an improved “Get Involved” portlet. This portlet provided links to create projects artefacts like bugs and branches. It was never clear though how to enable these links. Privileged users like project owners will see links to configure Launchpad applications. The portlet also call attention to applications that are not configured.

The first use of the not configured state is the project branch. Contributors cannot submit code if Launchpad does not know the series branch, and most importantly, communities like Ubuntu need access to the project’s focus of development. The new Configure (project|series) branch form allows you to setup an code import and link the branch to the series.