From Fedora Project Wiki

Revision as of 20:38, 29 March 2010 by Pfrields (talk | contribs)

This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page.


If the Desktop Live image is the default offering, does this mean the Desktop team defines the user experience for all of Fedora? What if some SIG disagrees?


The default offering is discussed here in more detail. User experience (UX) is ISO defined as "a person's perceptions and responses that result from the use or anticipated use of a product, system or service."[1] User experience is thus subjective.

The use of "Desktop team" is unclear in the question, since it might mean either Fedora's Desktop SIG or Red Hat's Desktop team. The rest of this writeup addresses the Fedora Desktop SIG unless noted otherwise. Note that the Desktop SIG is made up not just of Red Hat Desktop team members, but other people in the Fedora community who are interested in the SIG's work.


Does the Desktop SIG define the UX for all of Fedora?

The Fedora Desktop SIG does design a number of the components that are part of the default offering, and the Desktop SIG is responsible for that default offering. A side benefit of having Fedora community developers involved deeply in upstream code is the strong partnership that implies. The Desktop SIG developers can't and don't do the same thing for all software in the entire Fedora distribution (repository).

What if another SIG disagrees?

Anyone in Fedora has the ability to participate in the Desktop SIG's work, as is the case in other Fedora SIGs. However, in many cases alternate desktop environment SIGs have been formed because they have a different vision for user interaction or experience. Fedora offers alternate desktop environments that allow contributors who are interested in other user experiences to try them out instead. This can be done through Spins, or through simply installing the software needed for the alternate environment. SIGs often interact with communities outside the ones in which the Desktop SIG is involved. Therefore, SIGs have the ability and opportunity to influence work done in those communities if desired.

There must be a clear way to decide cases of technical conflict between codebases. This might happen, for example, if a feature is introduced during the development cycle into the default desktop environment that affects alternate environments. When this happens, there may be several ways to solve the conflict. If the conflict is caused by a new feature or innovation, typically the Fedora mission and objectives would tend to prefer that work. If the conflict is caused by legacy code, similarly that work would not be preferred. In some cases, SIGs can bring upstream forces together to solve these issues, since that is preferable to carrying specific Fedora patches.


How does the process work?

The use of the UX term is a bit erroneous, since we can't "define" how someone will feel in using Fedora. What we can do is design the way the operating system provides interactions that we believe will result in a positive UX. Some examples of this design might include the presentation of menus, the type and number of choices offered to the user when performing a specific activity, or the frequency and manner in which notifications that are delivered to the user.

Who provides these designs? In a perfect world, our project would be chock full of user interaction designers who would drive the process of design for these types of interactions. The design would then be implemented by the programmers, who would not concern themselves with creating the designs but simply follow those agreed upon by the designers. However, like most free software projects, Fedora suffers from a dearth of designers. Given that absence, teams in Fedora often simply make their best effort at producing interactions they believe will result in a positive UX.

Most of the decisions that involve UI design are driven by the upstream communities that write the code for the UI. In the case of the GNOME Desktop Environment, on which the Fedora default image is based, many of these UI elements are written upstream. The participants in the Red Hat Desktop team work in the GNOME upstream and other communities that provide elements that produce UX. Not every team in Fedora that maintains a desktop environment drives the UI design and implementation to this extent, however. That doesn't mean those contributors cannot be involved in discussions around UI in Fedora's default image.

Certainly members of the Red Hat Desktop team are involved in the Fedora Desktop SIG, which is responsible for the upkeep of the Fedora default image. The business of the team is normally conducted in public, both on their IRC channel and mailing list. Community members are encouraged on the Desktop wiki page to be involved in discussions there.

Recently these communications channels have featured discussions about replacing specific elements of the default image, such as default applications for note-taking (Gnote) and photo management (Shotwell). Ideally, these ideas would be considered and discussed by a team of designers who could weigh the various factors of UI involved to produce a constantly improving result. Until such time as we can make that happen, the next best alternative is in place -- open discussion of the various options available and the predicted results of each, followed by a decision by the parties responsible for implementing the changes. This process is in many cases identical to those used throughout the Fedora Project.

  1. ISO FDIS 9241-210:2009. Ergonomics of human system interaction - Part 210: Human-centred design for interactive systems (formerly known as 13407). International Organization for Standardization (ISO). Switzerland.