[personal profile] mjg59
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.

Fedora is an echo chamber

Date: 2013-08-27 01:48 pm (UTC)
From: (Anonymous)
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.

Re: Fedora is an echo chamber

Date: 2013-08-29 12:20 pm (UTC)
From: (Anonymous)
You forgot to mention the billion-dollar Skype... which can do free-as-in-beer voice calls (skype-to-skype), and simple text chat (proprietary skype protocol). Evolution-aka-outlook-clone no longer ships with Fedora from what I can gather, and Thunderbird is a good OutlookExpress substitute, but not a good OutlookProper substitute. As for text-n-voice chat, pidgin *does* ship with Fedora by default... but the core devs refuse to attempt skype compatibility (because they want microsoft to come to them... and because "you can always install the pidgin beta for windows").

But truth be told, I'm thinking that your worry that Microsoft has a death-grip on the enterprise through their exchange server is a bit out-dated. I'd be more concerned about gmailEnterprise + googleVoice + chromeOSserverEdition, than I would be about outlook + skype + win2k12, in terms of being threats to the viability of corporate-desktop Linux.

Did your company actually use RHEL6 on the desktops, or was it just a server-side thing to run the datacenter? Since it sounds like everybody was using Outlook clients, presumably the latter. But that observation ties back in with the best goals for Fedora flavors: methinks we need to have a strong focus on the CorporateDesktopFedora flavor (which currently does not even exist that I can tell), which supports central IT out of the box (including a powershell port), which tightly integrates with *both* FreeIPA as well as ActiveDir servers, which can cleanly accept GroupPolicy security constraints as well as SeLinux config, and which has all the WindowsPro bells and whistles (image-backup & drive crypto & proper SMB & whatnot).

FedoraCorporateDesktop flavor would then be able to compete head to head with Win8 clients... and FedoraCorporateTabletAndPhone flavor would not be far behind.


Matthew Garrett

About Matthew

Power management, mobile and firmware developer on Linux. Security developer at Nebula. Ex-biologist. @mjg59 on Twitter. Content here should not be interpreted as the opinion of my employer.

Page Summary

Expand Cut Tags

No cut tags