Matthew Garrett ([personal profile] mjg59) wrote2013-08-22 11:21 am
Entry tags:

Re: Default offerings, target audiences, and the future of Fedora

Eric (a fellow Fedora board member) has a post describing his vision for what Fedora as an end goal should look like. It's essentially an assertion that since we have no idea who our users are or what they want, we should offer them everything on an equal footing.

Shockingly enough, I disagree.

At the most basic level, the output of different Special Interest Groups is not all equal. We've had issues over the past few releases where various spins have shipped in a broken state, because the SIG responsible for producing them doesn't have the resources to actually test them. We're potentially going to end up shipping F20 with old Bluetooth code because the smaller desktops aren't able to port to the new API in time[1]. Promoting these equally implies that they're equal, and doing so when we know it isn't the case is a disservice to our users.

But it's not just about our users. Before I joined the Fedora project, I'd worked on both Debian and Ubuntu. Debian is broadly similar to the current state of Fedora - no strong idea about what is actually being produced, and a desire among many developers to cater to every user's requirements. Ubuntu's pretty much the direct opposite, with a strongly defined goal and a willingness to sacrifice some use cases in order to achieve that goal.

This leads to an interestingly different social dynamic. Ubuntu contributors know what they're working on. If a change furthers the well-defined aim of the project, that change happens. Moving from Ubuntu to Fedora was a shock to me - there were several rough edges in Fedora that simply couldn't be smoothed out because fixing them for one use case would compromise another use case, and nobody could decide which was more important[2]. It's basically unthinkable that such a situation could arise in Ubuntu, not just because there was a self appointed dictator but because there was an explicit goal and people could prioritise based on that[3].

Bluntly, if you have a well-defined goal, people are more likely to either work towards that goal or go and do something else. If you don't, people will just do whatever they want. The risk of defining that goal is that you'll lose some of your existing contributors, but the benefit is that the existing contributors will be more likely to work together rather than heading off in several different directions.

But perhaps more importantly, having a goal can attract people. Ubuntu's Bug #1 was a solid statement of intent. Being freer than Microsoft wasn't enough. Ubuntu had to be better than Microsoft products on every axis, and joining Ubuntu meant that you were going to be part of that. Now it's been closed and Ubuntu's wandered off into convergence land, and signing up to spend your free time on producing something to help someone sell phones is much less compelling than doing it to produce a product you can give to your friends.

Fedora should be the obvious replacement, but it's not because it's unclear to a casual observer what Fedora actually is. The website proudly leads with a description of Fedora as a fast, stable and powerful operating system, but it's obvious that many of the community don't think of Fedora that way - instead it's a playground to produce a range of niche derivatives, with little consideration as to whether contributing to Fedora in that way benefits the project as a whole. Codifying that would actively harm our ability to produce a compelling product, and in turn reduce our ability to attract new contributors even further.

Which is why I think the current proposal to produce three first-class products is exciting. Offering several different desktops on the download page is confusing. Offering distinct desktop, server and cloud products isn't. It makes it clear to our users what we care about, and in turn that makes it easier for users to be excited about contributing to Fedora. Let's not make the mistake of trying to be all things to all people.

[1] Although clearly in this case the absence of a stable ABI in BlueZ despite it having had a dbus interface for the best part of a decade is a pretty fundamental problem.
[2] See the multi-year argument over default firewall rules and the resulting lack of working SMB browsing or mDNS resolving
[3] To be fair, one of the reasons I was happy to jump ship was because of the increasingly autocratic way Ubuntu was being run. By the end of my involvement, significant technical decisions were being made in internal IRC channels - despite being on the project's Technical Board, I had no idea how or why some significant technical changes were being made. I don't think this is a fundamental outcome of having a well-defined goal, though. A goal defined by the community (or their elected representatives) should function just as well.

[personal profile] hadrons123 2013-08-22 04:24 pm (UTC)(link)
Well, unity is killing ubuntu already. Xmir might be the next nail in the coffin. I not convinced that ubuntu is moving in the right direction with current proposals. They are sacrificing users for apparently no performance gains.

(Anonymous) 2013-08-22 05:52 pm (UTC)(link)
I can't see Fedora as Ubuntu "replacement" exactly because of its inconsistency and lack of defined goals. I installed openSUSE a while ago because of their "orientation on users who want to get work done" and convenient, flexible, rock-solid stable system is what I've got now. Their mission statement clearly tells what it is and what it's not. I guess it's a key to a well-made product.

CoreOS as an alternative

(Anonymous) 2013-08-22 06:24 pm (UTC)(link)
What about the idea of developing a pared back OS akin to the CoreOS guys?

The goal being that the there's the Linux kernel with systemd.
Gnome sits atop that with wayland and apps in its own container and apps are spun out of that?

That's a beautiful and modular vision right there.

(Anonymous) 2013-08-22 06:49 pm (UTC)(link)
I moved away from Fedora because I got bored of waiting for the bugs I filed to be looked at. One in particular remained unassigned for several months and spanned two releases (f18 and f19).

Whenever I file a new bug in Ubuntu, there's no guarantee that it's going to be fixed, but at least somebody takes looks at it and tries to help.

No matter what the plans are for the distro, if the support for it is lacking, it won't matter which use cases are covered.

Agree

(Anonymous) 2013-08-22 07:19 pm (UTC)(link)
The "three products" vision is so obviously correct I struggle to understand why anyone would seriously oppose it. I don't see that they detract from the Spins particularly, and in all honesty the spins aren't that great anyway (and I say this as one of the users).

Fedora should have a great cloud product. It should have a great server product. The desktop should continue to be a great product. You can do the cloud/server stuff right now, but the project should be making a public commitment to those things - and should commit to and excellent fedup experience long-term too imho (although obviously there are various other issues there) which should work with each product.

With those solid products in place, I think it would actually be easier to do stable spins, not harder. I'm sure objectively it would be a lot easier to promote and grow Fedora, involve people, and also cut down some of the silly arguments about holding back some improvements because of some minor piece of software it impacts.

Ubuntu's narrow focus

(Anonymous) 2013-08-22 07:50 pm (UTC)(link)
I remember being pleased when Ubuntu came out and I found it didn't ship with a mail server by default. It felt like someone was willing to make something that suited a home/laptop desktop rather than a fixed workstation. This extended to things like boot speed that for a while surpassed that of Fedora and other distros that hadn't been hand tweaked. Does anyone remember all the out of tree kernel patches Ubuntu carried that gave it a reputation of being more likely to work than other distros with your hardware?

Even things like its update applet were good steps forward. Of course in the intervening years a lot of Ubuntu's lead has been reduced. Other distros adopted methods of startup that are just as fast, the mainline kernel has absorbed lots of out of tree drivers, startup splash screens are common, media keys often work (thanks mjg59!) NTP is set by default, live CDs are defacto, multiple releases in common place...

Now I need is a distro that has a super cut down cloud image that is compatible with virtual machines. The more things change...

(Anonymous) 2013-08-22 09:38 pm (UTC)(link)
https://dl.dropboxusercontent.com/u/85123597/misc/ubunton-m.svg

Thoughts

(Anonymous) 2013-08-23 01:42 am (UTC)(link)
"Now it's been closed and Ubuntu's wandered off into convergence land, and signing up to spend your free time on producing something to help someone sell phones is much less compelling than doing it to produce a product you can give to your friends."

I don't think this is fair judgment. In the "old days" you had PC or Mac and you could call it "smart device". Because average consumer (yes your friends included) used it you could give them one of the GNU/Linux based distribution to install and use it on his/her hardware.

What are your friends using today? Smart phones and maybe smart tablet and smart PC or Mac for sure. In a year or two they will probably be using smart TV won't they...

Why wouldn't you be appealed to give your friends alternative to default OS something in the range of GNU/Linux? A GNU/Linux distribution tailored for their hardware and up to your liking.

There might be valid concerns/issues you might have concerning Ubuntu but having the possibility to offer your friends a way to install GNU/Linux based distribution on their smart phones/tablets is certainly not one of them!

And isn't that the reason GnomeShell ended up the way it ended up? Mobile devices? Convergence? First priority project should probably be making GnomeShell more usable on the desktop and on mobile because currently it lacks both! Unity does slightly better job here probably because as you said there is a common goal and they are working exclusively on it to achieve this but when it comes to GnomeShell every critic is dismissed as not founded but the truth is currently GnomeShell is not fitted to be run on desktops/mobile devices and fixing this should be priority. Bluetooth stack can wait a bit longer it newer managed to be "rock solid" in the first place and we are used to it and accepted it but when somebody start trolling with the whole shell well then don't expect to become direct replacement for Ubuntu just because some folk don't like how Canonical is acting lately to do their thing!

Phones vs Desktop, why should it be less compelling?

(Anonymous) 2013-08-23 07:15 am (UTC)(link)
"Now it's been closed and Ubuntu's wandered off into convergence land, and signing up to spend your free time on producing something to help someone sell phones is much less compelling than doing it to produce a product you can give to your friends."

I don't follow you here: both parts of your statement can apply both to phones and desktop: contributing to a Linux distribution which can either be pre-installed on computers sold at a shop, or installed on a server with commercial goals is "spend your free time on producing something to help someone sell computers/make money using your software", isn't it?
And on the other hand, most non-Canonical people who work on Ubuntu Touch do so because they want to produce a product they can give to their friends (as you can install Ubuntu Touch on many devices sold with Android, the same way you can install Fedora on many computers sold with Microsoft Windows).

You might have a point if Canonical was selling its own phone hardware and prevented/discouraged other phone producers from using Ubuntu Touch, but that's not the case.
Am I missing something?
reddragdiva: (geek)

[personal profile] reddragdiva 2013-08-23 09:56 am (UTC)(link)
I'm slightly reassured by Mark's statements that Canonical makes money from Ubuntu server builds, as IME they're just lovely (if a bit fat sometimes) and I rely on them. On the server, Ubuntu is basically a variety of Debian, but one that upstream software has PPAs for.
What Fedora has always been to me is a test ground for what should go into RedHat. As long as RedHat has some place to let people test and play with technology, it can then bring in what it wants into RHEL. As long as that happens, Fedora is a success.

As far as what Fedora users and developers think is a success, I don't know.

Spins

(Anonymous) 2013-08-24 10:10 pm (UTC)(link)
Matthew, what do you think of the Fedora Xfce spin?

Due to trouble with 3D acceleration with my newish AMD APU's graphics component in both the open Radeon and closed Catalyst drivers, GNOME Shell really doesn't work, so I've turned to Xfce.

Fedora and lack of enthusiam

(Anonymous) 2013-08-25 10:09 am (UTC)(link)
Fedora has become a distro of Redhat and other enterprise employees. And there it ends. Besides lack of goal and pushing Gnome too far the biggest problem Fedora has is that it isn't backed by community. Arch Linux has very strong community that actively gives back. They have the best package availability and amazingly great wiki. Both the things that Fedora lacks severely. Fedora doesn't really inspire most people as a consumer distribution.

Fedora is an echo chamber

(Anonymous) 2013-08-27 01:48 pm (UTC)(link)
I used Red Hat Linux from some very early release - v2 I think? - and paid for it voluntarily long before that was necessary. My employers have just completed a rebuild of our previously RHEL5/6 infrastructure on a pure Microsoft model, which is sad but was entirely justified on cost alone. RHEL has lost at least one customer and quite possibly their future. Fedora's a large part of why that happened. Before Fedora, when Red Hat led development based on a primarily commercial vision, enterprise customers were understood and courted. I don't think the complete abandonment of OpenLDAP (substituting AD-clone FreeIPA) would have happened before Erik Troan left. Fedora's development process is driven by very very young people with lofty but nebulous long-term goals and immediate goals that revolve around "looking cool" (which implies "total GUI interface") and laptop-centric models like dbus and wireless connectivity. That's a poor model for development of a product intended to compete with Windows Server 2012 - it's like the Fedora team is chasing the vision of 1990s Microsoft, at the same time that Microsoft themselves have seen the limitations of this approach and built a Windows CLI (that fundamentally isn't compatible with other systems) for the server room. We now have a dozen or so Windows servers that literally have no GUI, and expect to have more. And the big advantage of Microsoft in the for-profit world right now is Exchange+Outlook. These grotesquely lame products reign as the most desired and best understood person-to-person PC communications interface in the world, and their grip grows firmer every day. Concentrating on a modular system of calendaring, email, business card distribution, and meeting/event management (NOT an all-in-one system, don't just blindly clone Microsoft again) using open standards would be a sensible way to counter the value proposition Microsoft is offering (which, using HyperV and Windows Server 2012, is *cheaper* than using Free Open Source in a regulated industry, and all US industries are now regulated). But I don't see Fedora ever being able to make something like that, because the project's entirely driven by people who haven't worked in anything approaching a typical large business environment. The literally can't envision the needs of the high-profit customer and what really powerful organizations (in the sense of power to drive social change and create world wonders) want.

[identity profile] jmtd.net 2013-10-03 10:20 am (UTC)(link)
Thanks for this post. Point [2] is particularly depressing, as a still-Debian contributor, whilst your excellent use case on why the similar-to-Debian Fedora philosophy is broken firewall rules, we still don't have a default firewall in Debian…