Chances are you’ve browsed to an online IT community looking for information about a technology. But taking full advantage of them means understanding how they work and what they can do for you. Interaction with a tech community usually happens for one of three reasons:
- You’re researching something and want to see what experiences others had.
- You work in a specific area of technology and want to participate in discussions with other professionals and users.
- The shit has hit the fan and you need to find the solution before the entire company implodes.
These reasons can overlap, but unless you fall into the second category and are an active member of a community, chances are you’re looking for a specific piece of information. Finding that signal among the noise can prove more challenging than expected.
When it comes to DevOps, Reddit’s /r/DevOps has a good cross-section of questions and information on specific technologies such as Puppet and Docker, as well as general DevOps concepts and practices. The forum stays relatively active, meaning threads rarely go without replies for long. Other subreddits like /r/Docker or /r/Puppet go into even more detail on those pieces. LinkedIn also has several active DevOps groups, including one for general discussions and one for current DevOps professionals.
If you’re looking for a DevOps community in the real world, DevOpsDays is a series of conferences where people interested and/or working in DevOps get together and discuss whether development or operations is really at fault. A schedule of upcoming events can be found on the DevOpsDays website or you can follow them on Twitter.
Communities allow you to see multiple perspectives, similar to product reviews, which can help to gauge overall impression. But this plethora of conflicting and often contradictory information can also make it difficult to nail down a solution. Community members range from veteran pros to clueless newbies. Community posts can drown in a sea of technical detail, or be ridiculously simplistic and obviously incorrect. It’s up to you to filter these perspectives and discern the answer or information you’re looking for by cross-checking it with other sources. Or you could just implement the first fix you find and hope it works instead of catastrophically ruining everything. Your company sported for that test environment, right?
Even when carefully vetted, trying to solve a new problem by researching communities can suck. The specificity and interconnectedness of any particular environment means that your mileage may vary when implementing solutions that worked for other people. If you’re already at the point where you’re trying to find answers on the internet, you probably don’t have enough specific technical knowledge to judge whether a presented solution is accurate without corroborating it from another source.
Let's stop thinking that "DevOps" only means Ops and Dev/R&D. Just because it starts there doesn't mean it has to or should end there.
However, signing up for the sole purpose of asking a community to help with an immediate problem in your environment is not a realistic troubleshooting avenue. Someone may reply days, weeks, even months later-- if they reply at all. When the problem requires any kind of back and forth or trial and error, this process can stretch out even longer, as everyone participates at their convenience and has no investment in your particular problem. If the problem is time sensitive, which it always is, your effort is better spent researching than posting questions and hoping for answers.
Forum threads also tend to veer into pedantry and argumentation between members. Fanboys of platforms or applications regularly divert discussions into bickering about rival technologies. While a few of these may be constructive, most have to be ignored in search of helpful data. For this reason and others, focusing on a more specific community for problem solving will yield better results than broader communities. Broad communities like /r/SysAdmin have large user bases and are good for general education on a wide range of topics.
Finally, there’s always StackExchange, which has several different Q&A communities dedicated to technology, security and development. Unlike some of the more organic communities, questions asked on StackExchange tend to get answered quickly. Like Reddit, the voting mechanism provides an easy way to judge how the community views the usefulness or interest of the post. There’s also a search engine to crawl across multiple boards for keywords, since many topics of interest belong to several technological spheres.
But troubleshooting is only one part of how these communities function. One of their greatest strengths is that members share news as it comes in, creating a nice feed of tech updates that anyone can follow or participate in. Regular contributors to the forum also enjoy organic social networking opportunities with peers who understand their pain.
Some of the other regular community functions are not so useful. A large portion of posts come from companies looking to drive traffic to their site. Training offers, certification programs and link farms clutter the actual human beings attempting to interact. On the Reddit communities, for example, pretty much every link that isn’t self.forum is spam. Google+’s DevOps communities are just as much advertising platforms for software providers, security companies and hosted services as they are collaboration spaces for technologists.
Online communities can be a powerful resource, but knowing how to quickly filter through bogus info, pointless argumentation and sales pitches makes research much more effective. Understanding the need to corroborate and research solutions prevents a single person’s suggestion, no matter how good it might seem, from trashing your environment due to some conflict not present in theirs. You can’t effectively crowdsource good troubleshooting, but you can use the distributed knowledge base of tech communities to find avenues of troubleshooting to explore.