It's no secret that a rather large portion of Linux development is funded by companies with a financial interest in seeing Linux be improved. (And, by "Linux," I mean "All the various pieces and parts that make up a complete Linux-based system.") But there is a pretty major difference between how various companies go about that.
Let's take a look at two high-profile examples: Ubuntu and openSUSE.
Both are distributions of Linux. Both are large, long-standing and highly successful projects with a large community of both volunteers and paid workers. Yet the difference between the two is fairly extreme, and highly important.
For Ubuntu, the primary direction is set by the team at Canonical and its head-master, Mark Shuttleworth. Examples such as Unity (Ubuntu's in-house user interface) and Mir (Ubuntu's in-house display server) quickly jump to mind when talking about how Canonical really “steers the ship” of Ubuntu. Goals, projects and priorities put into place by the parent company are, in many cases, simply non-negotiable (so to speak). Ubuntu's Unity user interface, for example, was a must-have for Canonical as it was part of their broader strategy. Some community members love it. Some hate it. But, either way, it's happening.
But is that bad? I'm not really convinced that it is either good or bad. It's simply how it is with that particular project and company.
Contrast that with openSUSE, who also has a "corporate master" in the form of, well, SUSE. The key difference there being that SUSE has a commercial offering in the form of "SUSE Linux Enterprise." And, while there is a great deal of technical overlap between openSUSE (the community Linux distro) and SUSE Linux Enterprise (the commercial offering)...the two are not, technically, the same.
Which means that SUSE, as a company, can afford to take a more “hands-off” approach to working with openSUSE. Sure, they have a vested interest in seeing key bits of technology (such as, say, Btrfs) be improved, tested and packaged with the community distro – as they may wish to include it in the commercial offering – but the separation between the community and commercial systems provides them with a bit more flexibility, in this regard, than Canonical presently has.
This is similar to the way Red Hat works with the Fedora project, and seems to be a generally successful approach as a mechanism for a company that sells enterprise-level Linux systems to utilize a community Linux distro as a foundation.
I'll be honest. I see benefits and drawbacks to both models. Both have their challenges in terms of organization and management (and public perception). And, in all reality, there is more in common than not with the two approaches.
I'd love to hear your thoughts on this. Do you prefer to have a singular captain at the helm of your community-based Linux distro (sort of a "benevolent dictator")? Or do like the big decisions of your Linux distro to be a bit more community-driven? Should companies behind a given flavor of Linux rule with an iron fist, or be more hands-off? Leave your thoughts in the comments.