From Fedora Project Wiki

Revision as of 20:52, 5 April 2010 by Poelstra (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 SIG defines the user experience for all of Fedora? What if another 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.

This writeup addresses the Fedora Desktop SIG unless noted otherwise. The Fedora 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.


Who makes designs?

Usage of the user experience (UX) term is slightly inaccurate, 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.

In late 2008, Fedora's Art team began a process of rebranding to become the Fedora Design team. Their mission is to provide vision and execution for the art, user interface, and look and feel of the Fedora Project and distribution. Beyond providing a regular refresh of art and theme for each Fedora release, the team also exists as a design resource for teams working on user interface elements. Designers can consult with developers on the user-facing functions of their work to improve the user experience of the end result. The Fedora Desktop SIG is often supported by the Fedora Design team in the creation of new UI, which is then driven and coordinated upstream in the appropriate community.

Some decisions that involve UI design are driven entirely 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. Sometimes they work with the Fedora Design team in the initial creation of new UI, and sometimes they work with other designers in the GNOME upstream.

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. In addition, the Fedora Design team is fairly small and we constantly look for ways to expand that team to include additional experienced designers. In the meantime, we realize that there will sometimes be a need for more design consultation than that team can provide. In those cases developers strive to make decisions that are consistent with good UI practice and the look and feel established by previous designs from the Design team and upstream.

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.

Who makes decisions?

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 are considered and discussed by a team of designers who could weigh the various factors of UI involved to produce a constantly improving result. The standard process includes:

  • Open discussion of the various options, and the predicted results/costs/benefits of each
  • Consultation with members of the Fedora Design team
  • A decision by the parties responsible for implementing the changes

This process is fairly identical to those used throughout the Fedora Project, as part of the meritocracy we practice.


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

The Fedora Design team provides support for effective user interfaces, and works with the Fedora Desktop SIG to design a number of the components that are part of the default offering. Other designers also play a part because of their work upstream on code that is inherited by Fedora. (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, alternate desktop environment SIGs exist because they may prefer the user interaction or experience provided by different upstream communities. 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.

It's possible that a codebase supporting user interfaces or functions might cause a conflict, and there needs to be a clear way to resolve such conflicts. This might happen, for example, if a feature is introduced during the development cycle into the default desktop environment that affects alternate environment spins.

Fedora's role as a sort of research and development lab is best served by promoting innovative code, so often that approach doesn't favor holding back specific features until everyone catches up. However, this is the reason that upstream projects like exist -- to provide standards and guidance so all upstream DEs can interoperate effectively. SIGs can bring upstream forces together to solve these issues, since that is usually preferable to carrying specific Fedora patches. In the example given, members of that spin's responsible SIG could work with the upstream community to ensure changes are made and tested to integrate properly with the new feature.

  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.