boxer Let's not kid ourselves: the free and open source community is not all laurel (yanni?) leaves and Kumbaya. There are arguments all the time.

Vi vs. emacs. Restrictive vs. permissive. Open vs. proprietary. Heck, on most days, I have had discussions about one or more of these topics before I've finished my morning coffee.

When you add business interests in the mix, the arguments add a whole new layer of motivation because now we're talking about money and sales.

A lot of people get interested when someone from company X publicly makes disparaging statements about company Y. Especially in the open source ecosystem, because inevitably someone will come along and point to such comments and argue that cooperation in the open source community is just so much lip service.

Certainly no one is denying that sometimes representatives from an organization occasionally try to score points off of their competitors. We have a policy at Red Hat to specifically not do that, but I'm not naive enough to assume this doesn't happen. When anyone starts making comments along these lines, it's regrettable, but does it mean that cooperation between FLOSS projects is some sort of sham?

In my experience, no. Cooperation between commercial entities involved in open source is thriving. Projects like Kubernetes, GNOME, KDE, Hadoop, and the Linux kernel all feature multiple commercial (and independent) interests. See that t-shirt my pugilistic colleague is wearing? OpenStack is another huge multi-vendor project that brings a lot of innovation to cloud technology.

Part of this has to do, I believe, that at the engineering level, developers are really more interested in solving problems than waving the corporate flag. If someone from SUSE, Canonical, or Oracle compares up with an innovation or technical fix, then everyone else in the project benefits and that is something that should be (and typically is) celebrated by everyone, including folks that wear the Red Hat.

Is it perfect harmony? Nope. Sometimes business and technical goals are misaligned. It's a big reason why larger projects fork (though not the only reason). But forks don't have to be acrimonious, and I have witnessed some that are not. Open source projects for the most part encourage open lines of communication, and unless egos have gone completely off the rails, such open communication can be maintained even if participants in a project part ways.

Civility doesn't mean 100% agreement, after all. It just means hearing the other people in the discussion and not shouting them down with your own views.

Image by Julian Cash, with thanks to Microsoft.