Rawpixel - Fotolia

Moderating our DevOps community: Not all opinions are equal

The DevOps community should follow the model of sites like Stack Overflow, with conversations and the community driven by informed opinions.

One of the dynamics in the open source world that I find interesting is how users can earn rights, based on participation. For example, popular crowdsource information sites such as Stack Overflow and Reddit have strict policies about contribution. Those who contribute to the site a lot and have provided information that is accurate and useful have more rights than those who don't. The ramifications, though, then become interesting.

Allow me to elaborate.

Not all opinions are created equal. Some opinions come about through experience gained from hours of painstaking labor trying to accomplish something: getting code through a CI/CD process; getting a deployment script to inject an environment variable into an elusive virtual environment; getting a VM to stop crashing at 2:00 every Thursday morning when all should be well. These sorts of issues are part of the life of anyone who has participated in the DevOps community. The opinions formed from such experiences are real world and valid.

Then, there are those opinions formed from a recent conversation at the water cooler or overheard in the aisles of a trade show. Such opinions might be valid, but they are removed from hands on experience. Opinions without substantive experience have questionable value.

So, how do we distinguish valid opinion from invalid opinion? Good question to ask, right? Wrong. We're putting the cart before the horse. The real question for me is this: Does the person expressing an opinion have the right to do so? Has that person's participation in the work and the workplace, aka the community, been of the depth and degree required to warrant having a useful opinion about a matter concerning the DevOps community? Does the person really have the right to express an opinion?

This is where I find the participation mechanisms of sites such as Stack Overflow and Reddit useful. These sites grant permissions based on level of participation, points and up votes. For example, on Stack Overflow when you've attained 20 points you can talk in a chat. At 20,000 points, you are considered a trusted user and get expanded editing and deletion privileges. The more you participate, the more you get to do. Participation is the key, as is typical for any well-functioning community.

So what does this have to do with DevOps?

Two fundamental forces in the DevOps community are automation and cooperation. We deal with a lot to technology, most of which are beyond the capabilities of a single human being to manage. The modern enterprise needs to automate and cooperate. Otherwise getting to scale is nothing more than a hope. Automation creates efficiency. Cooperation creates community. A well-functioning community requires a high degree of verifiable participation by its members.

At the enterprise level, we have the tools to measure community participation by the given member: number of ratings on corporate wiki pages, measuring the number of both pull requests and comments made in code repos, for example. High contribution numbers reflect high rates of participation. Then the question becomes, do we use this information as the basis for determining rights, particularly the right to express an opinion?

Wouldn't it be cool to go your company's code repo or wiki and see a policy that says something like this:

When commenting, you can point out errors and concrete opportunities for improvement, but you only get to express an opinion if you have the requisite number of participation points, earned by making ongoing, verifiable contributions to enterprise.

If that's the way it is for you now, great! If not, well, you get the picture.

Dig Deeper on DevOps Team Organization