OpenSUSE Distribution Focus

From openSUSE

Contents

Rationale

One of openSUSE's strengths is that the distro is appealing to many types of users, because openSUSE does many things well. However, being a generalist distribution may not be the best path to success.

Our resources are not infinite, and we've come to the conclusion that it would be more effective to channel our resources in a more narrow focus than to continue trying to be a distro that matches all use cases.

To that end, we'd like to open up to the community the discussion of what openSUSE's focus should be. While Novell is a major stakeholder in this process, it is not the *only* stakeholder, and it will not be the only decision-maker going forward.

Current Project Goals

The current goals of the project are:

  • Make openSUSE the easiest Linux distribution for anyone to obtain and the most widely used open source platform.
  • Provide an environment for open source collaboration that makes openSUSE the world's best Linux distribution for new and experienced Linux users.
  • Dramatically simplify and open the development and packaging processes to make openSUSE the platform of choice for Linux hackers and application developers.

We need to evaluate these goals and decide: Are they reasonable? Do we need to narrow the focus of the project goals?

Restated Project Goals

For discussion, one possible revision of the goals:

  • Make openSUSE the highest quality community Linux distribution.
  • Provide the best tools for open source collaboration, and building a Linux distribution.
  • Dramatically simplify and open the packaging and development process to make openSUSE the platform of choice for Linux application developers.

Why focus is important

We can do anything, but we can't do everything. The openSUSE community is extremely talented, innovative, and driven. But we don't have unlimited resources. To do many things well is good, but it's not what will best serve the needs of our users and contributors at this time.

In short, it's time to hunker down and make some tough decisions about where we want our project to go.

Thanks to the openSUSE Build Service, it's possible for any interested contributors to take openSUSE in the direction that they'd like to go. But as an overall project we need to choose a focus and drive in that direction as hard and as fast as our talents and resources will take us.

A focus will also allow us to answer questions like which questions to ask during installation and how to set the defaults.

Note that the formulation of a focus could also be done via Personas. In the end it might make sense to create some personas after we defined the focus as a way of story telling.

Questions to ask for focus

For a focus, we should ask ourselves the following questions:

  • What does this mean to the current user base?
  • Will this attract other people - and what kind of people will it attract?

Examples

Debian GNU/Linux: Debian is an excellent example of a distribution without a coherent focus. Debian is a wonderful project, but it lacks a cohesive focus. With thousands of contributors, Debian produces an excellent but very general and slow moving Linux distribution.

As a result, Debian's growth and acceptance is limited. It's been well-used by Ubuntu and other projects as a base for more focused Linux distributions and projects.

Fedora: Fedora started as a fairly general project, but has ultimately found its focus as a developer-oriented Linux distribution that ships only Free software and cutting edge (sometimes bleeding edge) software.

Fedora states this as "Friends, Freedom, Features, First." The Fedora Project works to build community, ship features first, and focus on license freedom.

Ubuntu: Ubuntu started as a distro with a fairly narrow focus (GNOME desktop based on Debian, essentially a more usable Debian) and has (as a project) expanded its focus somewhat to desktops, netbooks, and servers.

Ubuntu is less about free software only, and more focused on end users.

Suggestions for openSUSE

If you propose a new definition, please add pro and cons as well.

List of Suggestions

openSUSE: The professional/productive distro for home desktop and server. Great KDE. Up-to-date GNU/Linux which works! - cb400f (we're certainly not at that point yet, but I think it's feasible while still being a good base for SLE)

  • Pro:
  • Cons: This is still broad and not really focused.


openSUSE: The best Linux for your home office and entertainment including easy to use window manager, office software with working conversion filters from another formats, easy to use (and/or install) multimedia platform, fast Internet browser(s) with good flash and javascript support.

  • Pros: Real desktop-focused distribution for a home user
  • Cons: Issues with licensed software (solution is a Codec Buddy or something similar)


openSUSE: The linux distribution with the best hardware support. A choice of two stable, standard desktops (GNOME and KDE) and maintenance updates that enable new hardware support between major releases.

  • Pros: Improving hardware support constantly helps adoption
  • Cons: May lose some always-need-the-latest users (contrib though?)


openSUSE: The linux distribution most suited for university math, engineering and computer science students. A choice of two stable, standard desktops (GNOME and KDE) and maintenance updates that enable new hardware support between major releases.

  • Pros: Future developers in opensource reached
  • Cons: May be too narrow of a focus


Consider the openSUSE distribution in terms of an emphasis on those users at the polar ends of technical skill. Make it a stated goal to help turn beginning users into our future advanced users. Make it a stated goal to help advanced users to use openSUSE without a great deal of effort. Also, make it easier for for an advanced user to contribute back.

For new users, who might be just beginning to learn about Linux, we provide a quick start panel, which leads to online video/audio tutorials, online community, context based help and a wizard-style quick start process. We make the process of learning openSUSE truly open. Rather than casting users into a potentially new software environment, we seek to provide life-lines. We seek to make every transition and every screen make sense to someone who is using openSUSE for the first time through additional explanation, training and discussion. All of this extra help might be turned on and off with a single switch for the sake of advanced users.

For the advanced Linux/Unix user, who knows what this openSUSE thing is good for, we have build services, virtual machine images, pre-release software, and wiki collaboration integrated into software help systems. OpenSUSE, when connected to the Internet, should no longer be a stack of software in isolation. Every piece of software should allow the skilled user to become involved in the community, to suggest changes, to make improvements. Every software update should include links to additional information, and perhaps daily links to discussion forums. Every piece of software should, through the help interface, connect users with the larger community through forums and wikis. We could make translation plasmoids that seek to translate one line at a time, which in turn could be fed through editing processes. Make it easier to contribute. Make contributing pleasurable by optionally presenting an audio or video based reward. Perhaps present a pleasant little animation or gentle and mild chime every time someone updates help information. Blur the lines between user and community member by folding users into the community. Pour all of these contributions into the next release.

  • Pros: Specific and well-defined direction, which presents technical and social challenges.
  • Cons: Unique and perhaps risky change of direction.

Discussion

It's a good point. The lack of direction for openSUSE is obvious. We're zigzag'ing along and noone (including developers it seems to me) really what they can expect from openSUSE or exactly what the purpose is (testbed for SLE? gaining marketshare for Linux in the consumer market? Something else...).

However I don't know if this is something that's best discussed on the wiki - probably something for the opensuse-project mailing list. Any meaningful discussion about this needs the honest and loyal participation of Novell/SLE management and openSUSE leadership. Also the Guiding Principles already address this issue to some extent, and therefore need to be taken into account.

If I were the SABDFL of openSUSE we would try to position openSUSE as "the professional/productive distribution for home desktops and servers", striking a good balance between experimental bleeding edge stuff, and the ancient, boring enterprise distros, and emphasize our great KDE-qualities and heritage to differentiate ourselves from Ubuntu and Fedora. - cb400f / Martin Schlander


Good to hear that one of what I consider probably the worst problem of openSUSE, the lack of direction/focus, has been recognized by someone internal to Novell! I agree with Martin's idea of openSUSE targeting home desktops and servers, balancing new features and stability. I use GNOME at the moment, but I agree also with the fact that openSUSE must differentiate from other distributions to win, and KDE has always been a shining point for SuSE and openSUSE. As a consequence we should leverage on this as a competitive advantage, especially because I believe KDE 4, which is now the reason of many complaints, will probably be the reference desktop in the near future.

Update(March 12nd, 2009): The proposals were added, and I think "The best Linux for your home office and entertainment" is currently the best one. The one named "The linux distribution most suited for university math, engineering and computer science students" is something that can be done by the interested community, as an add-on, if there is a stable base, exactly as opensuse-edu is doing for other purposes. - AlbertoP


It would be interesting to know, which users use what packages. Maybe it would make sense to split the distro into two and have a quick (desktop) and a slow (server) moving release. The quick moving one would not include anything that belongs into the area of conservative usage, since those users update less often anyway. For example mail/web-servers etc. are not updated every six months, so having them included as use case and target of every release does not make sense to me, neither do they need wlan drivers, desktop effects, audio, webcam etc. Nobody will complain, if openSUSE clearly states the target of a release and the desktop release does not work well as a server and vice versa. Desktops/Notebooks and software like KDE however, need more frequent updates, yet not the size of a DVD. Just the DE + Sound + Video + Printer. E.g. games that are not part of that DE should only be provided online and community maintained. Just a first thought, which might mature further. Rabauke 01:23, 23 February 2009 (UTC)


M. Edward (Ed) Borasky comments -- 15 April 2009:

1. Gentoo should be on your list. :)

2. The "differentiators" between distros that I find most relevant are

a. Number of packages available in the repository
b. Predictable release engineering schedules and availability of user-friendly LiveCDs and installers that I can give to my friends
c. GUI system administration tools
d. Desktop color and other eye candy / branding

Notice what's *not* there:

a. Licensing -- as long as what *I'm* doing is legal, the lawyers can fight amongst themselves about the rest. I'm sick unto death of all the arguments about "blobs" and digital rights management and freedom and software patents, etc. I want quality software and I don't want to get sued. :)
b. Package format -- .deb, .rpm. .ebuild: who cares, as long as the dependency tree is correct.
c. Bleeding edge vs. stable -- 90 percent of that is upstream of the distros, and the other ten percent is how well I manage my systems. And I can install open source or proprietary software on my machines anyway.

So, with that said, I am now running openSUSE, having migrated from Gentoo over the six months from June to November of last year. But I do track Ubuntu and Fedora -- I am currently beta-testing Jackalope and Leonidas, for example. By my criteria, Debian has the most packages, followed by Gentoo. I haven't really compared openSUSE, Ubuntu and Fedora on this metric yet, but I think Ubuntu is going to be way ahead because almost anything in Debian's repositories should work on a Ubuntu system. I think Fedora is slightly ahead of openSUSE, but I haven't done an actual count of what's in the distro-specific repositories.

The lack of a predictable release engineering schedule and LiveCDs is why I left Gentoo for openSUSE. And the recent decision by openSUSE to slip 11.2 is a ding against the distro. I really wanted an 11.2 in June, even if it was only marginally different from 11.1. I did a network install of "Factory" on my test system yesterday and it looked reasonably good when it came up. Is there a chance an 11.2 could come out in June and a 12.0 or 11.5 in December? :)

GUI system administration tools -- I have to give this one to YaST by a wide margin. Ubuntu still (Jaunty Jackalope) expects people to do server administration from the command line for the most part. And I couldn't get Fedora (Leonidas) to even install. I would bet that Fedora's GUI server system adminstration tools are better than Ubuntu's though, given the Red Hat heritage. Gentoo is dead last here, of course. :)

Desktop color -- again, openSUSE is by far the most visually pleasing. The Ubuntu brown-orange native color scheme is ghastly to my eyes, and the Fedora heavy blue is annoying but not repulsive. I'd actually rate Gentoo number two here -- the Gentoo purple, logo, Larry the Cow, and the availability of quite a bit of Gentoo artwork is nice.

So what should the focus be?

1. openSUSE is number two behind Ubuntu on the Distrowatch poll. Mint, another Debian derivative, is number three and Fedora is number four. So openSUSE is doing *something* right. :) It probably all boils down to marketing budgets and social media at this point, but number two is a *much* better place to be than number four.

2. I'm going to harp on predictable release engineering schedules and LiveCDs again, because I think that's important. A week or two slip because of an upstream security issue or something like that is OK, but a totally unmanaged chaotic process like Debian's or Gentoo's isn't. Code cutoffs, feature freezes, continuous integration, test-driven development, etc. -- this stuff all works! :)

3. openSUSE Build Service: as far as I can tell, nobody else has this, with the possible exception of rPath. I haven't had a chance to really use it yet, but I certainly intend to. Making it easier to use, making Kiwi easier to use, making LiveCDs and LiveUSB sticks "point, click and ship", etc. I think would be a big win. While you're at it, can you package Gentoo ebuilds with it? ;)

4. Virtualization and cloud computing: Red Hat and Ubuntu have thrown their weight behind KVM over Xen, and I think openSUSE has some catching up to do. The main reason I decided to test Jackalope had to do with Eucalyptus and Open Nebula and all the other cloud management / virtualization software being available. Can we at least get Eucalyptus in a factory repo somewhere? :)