I will almost guarantee that you’ve been the beneficiary of a technology community. Whether it was someone answering a question you posted on StackOverflow.com, a blog post that taught you a new technique, or a YouTube video that finally cleared up your confusion about a technology, communities have been there for all of us. But to have a truly successful technology career, you’ve got to do more than just consume what a community has to offer; you have to be part of it.
When I use the phrase technology community, I’m referring to a group of people—often spread across the globe—who come together in a set of shared spaces, both physical and online. They share information, develop professional relationships, and support each other. Many technology communities are difficult to see, because they don’t create a dedicated “About Us” website for themselves. Instead, they exist somewhat ephemerally, their activities spread across numerous online and in-person forums.
Consider the community I’ve been a part of for much of my career: PowerShell. This Microsoft-created technology has developed a huge following over the years. You can see evidence of this community on Twitter (look for #PowerShell), on websites like PowerShell.org and PowerShellMagazine.com, in the blogs of hundreds of individual contributors, at conferences like PowerShell Summit, and in the many in-person and virtual user groups that meet every month. Although this community has no central hub, if you start looking across its venues you’ll start to notice a lot of familiar faces. Names like Adam Driscoll, Missy Januszko, Chrissy LeMaire, James Petty, Mike Kanakos, Jeffery Hicks, Jan Egil Ring, Tobias Weltner, Jason Helmick, and many more pop up in many of the same places. They’re often the ones posting news about the technology, announcing user-group meetings, answering questions in Q&A forums, or speaking at conferences. A huge, almost invisible crowd gathers around those commonly seen names. Hop into the Q&A forums on PowerShell.org, and you’ll see names and handles like Matt Bloomfieild, gorkkit, kvprasoon, Doug Maurer, and more. You’ll see links to blog posts by people like Mike Robbins, Kevin Marquette, and Jonathan Medd.
Very few of these people would consider themselves to be community leaders, but they are. They’re the ones offering help, taking the time to organize user group meetings, volunteering to run conferences, and filming videos that you can watch for free on YouTube.
Almost every one of the names in the PowerShell community started in the same place: asking a question on a Q&A forum, reading their first blog post, or watching their first video. Most of them came to a community that already existed and began participating in it—often as consumers of information, the people benefitting from what the community offered. Over time, these big names decided to try to give back. They started answering questions in addition to asking them. They started posting their own blog articles. They started volunteering to run conferences, user groups, and online meetups. They were inspired by the contributions they had benefited from, and they wanted to give back.
And in giving back, they’ve almost all given a considerable boost to their own careers. Some now work for the PowerShell team at Microsoft, having caught the company’s eye through their community contributions. Others have gotten promotions or new jobs because they found employers who valued team members who were so willing and able to help others. Most of all, each of the names in this community, simply by choosing to participate and help others, has built an incredible network of peers and colleagues. Those networks support and enhance their careers in ways that are difficult to describe. I imagine that most of them, if they needed a job, wouldn’t have to do much more than send out a tweet, and they’d have recommendations, leads, and even offers within days.
These technology communities exist everywhere, all the time, for every technology you can possibly imagine. They exist for things other than technologies, too, such as for shared concerns like diversity, career growth, and other adjacent topics. You’re likely already interacting with them, not realizing that the person who posted an answer to your Q&A website question is part of something bigger—and that you can be part of it too.
Let’s be honest about our industry: vendors and open source projects are pumping out new technologies so fast that hardly anybody can keep up. Documentation is getting slimmer and slimmer. The only way any of us can get through the day, most days, is with the help of other schmucks just like us. We run Google searches, we post questions, we search YouTube, and we hope that conference we couldn’t make it to recorded their sessions so we can access that information on demand. Without community—without each other—we’d all be up a creek without a paddle most days.
You can simply consume the output of those communities. You can be a passive participant, reading others’ answers, watching their videos, or lurking in a virtual user group meetup. But in nature, there’s a word for an organism that consumes without giving back: parasite. It’s a word with a lot of negative connotations, obviously, and it’s unpleasant to think of oneself as such an organism. Fortunately, when it comes to technology communities, you’ve got an easy way to do something better.
I have this “contributing” conversation all the time, and over the years, I’ve probably spoken to tens of thousands of technology professionals about it. The almost-knee-jerk reactions tend to fall within two main categories:
Both of those attitudes, if you happen to share them, are insulting to you. First, you’re probably not considering the sheer breadth of valuable contributions that exist. Perhaps you benefit from reading blogs but can’t picture yourself as a blogger. Maybe you get a ton of value from a community-run conference but can’t imagine why, or how, you’d want to run a conference of your own. Broaden your scope: just because you aren’t able to contribute in a way that has been valuable to you doesn’t mean you can’t contribute in ways that are valuable to others.
Second, you’re likely suffering at least a little from Imposter Syndrome, that pernicious feeling that you’re the least-capable person in the room and that everyone else is going to figure it out if you call attention to yourself. When it comes to community, though, everything is good enough. Perhaps you’ve just figured out how to do something with a particular technology; why not blog about it? It doesn’t matter if 100 other people have already done so; your perspective is unique and valuable, and may help someone else in a similar situation. Your contributions don’t have to be impressive to the people you admire; they simply have to be valuable to someone. And there’s always someone with a bit less experience than you who could benefit from your help.
Third, you do have time to contribute. If you had the time to consume other people’s contributions, you need to make time to pay it forward and help out. Nearly 100% of all technology communities exist on the backs of volunteers, who are using their free time to help you. You owe it to them to turn around and help someone else. If you really consider the breadth of opportunities for contributing, I bet you’ll find something you can do.
So please accept these facts: you are worthy of contributing, your contributions are needed and valuable, and you can find the time to give back to a world that’s probably already given you a good bit of help.
I don’t normally love to write long lists of bullets—and I suspect the editors of this book will be giving me the side-eye for this one as well. But in this case, I want to convey the enormous range of ways in which you can contribute value to the technology communities that you inherently belong to. Some are obvious ways to contribute, but I also include the less-obvious ways, which are every bit as needed and valuable.
Please take the time to scan this entire list. The idea is to help you broaden your mind on what community and contribution mean:
Blogging—Even short articles about how you solved a problem are tremendously useful. Don’t have your own blog? Blogs are free and easy to start on many platforms, but you might also look for a community website that lets its members blog there, putting you more closely in touch with the people your blog might help.
Videos—Short demos of how to perform particular tasks are always useful. YouTube and Vimeo are popular video platforms, and you can use your social media reach to draw attention to your efforts.
Q&A—Find one or two sites that cater to your technologies, and jump in. Even if you’re not the first to answer a question, you can always add more perspectives, options, and explanations to others’ answers.
Translation—Blogs, videos, and open source e-books can all benefit people who don’t speak or read the original language. If you speak a second language, contact the author(s) and ask whether you can help localize their work to broaden their audience.
Open source projects—Contributing code is the obvious way to contribute, but it’s hardly the only way. Most projects are in dire need of
Podcasts—Not ready to run your own? See whether one you really like needs help, such as with scheduling guests or writing show notes.
Conferences—Maybe you don’t need to start one, but you can volunteer to help an existing one. Conferences usually need gofers, registration workers, panel moderators, and many other roles.
Open source books—You can write books if you want to, but you can also contribute by offering to proofread, translate, fact-check, and handle other tasks.
Spreading the word—One of the most popular features of PowerShell.org is a weekly “In Case You Missed It (ICYMI)” roundup, in which the authors pull together a list of notable posts from that week. They help amplify others’ voices and connect community members with new people and new contributions. You can use your social media reach (even if it’s not huge), your own blog, and any groups in which you participate to help spread the word.
I was delivering a closing Q&A and suggestion panel at PowerShell Summit one year. We’d run an “Iron Scripter” coding contest earlier in the week, and during my panel, one of the attendees suggested making it an annual event: “We could organize regional events and get more people involved. Perhaps the winners at the regional events could get a discounted admission, or even a sponsored trip, to the next Summit, to compete in the finals.”
“That sounds wonderful,” I said enthusiastically. “You’re in charge.”
Everyone laughed a bit, and some people clapped, but my point remains valid: there are lots of things that communities can do together to create professional connections, improve their craft, and help each other. But unless someone does those things, they won’t happen. Don’t look around and wish someone else would do something to benefit you. Get up and do it yourself, to benefit yourself and others.
Like networking, participating in technology communities comes with a certain set of global expectations that you should strive to follow. These expectations support a positive professional brand and help make you an even more valued member of your communities.
Q&A websites are a special kind of social media. If you’ve used them, I’m sure you’ve seen examples of both incredibly positive and incredibly negative behavior. I started PowerShell.org in large part because I’d seen so many other Q&A sites exhibiting overwhelmingly negative behavior, and I wanted to offer a better experience for people working with that topic. Be mindful that your behavior on Q&A sites is very much a part of your professional brand, and act in a brand-positive way:
Don’t be the person who only asks questions and never offers answers. Even if someone else has correctly answered a question, you can add expanded explanations, alternate approaches, and more so that you’re contributing.
Don’t reply to a question with a dismissive or insulting phrase like “Did you try to Google that?” Assume positive intent, and assume that the person asking the question did indeed try that and didn’t get the answer they needed. If you can’t or won’t offer an answer, say nothing.
Don’t engage in unprofessional negative behavior. Act like you’re in an office, physically present with the people you’re typing messages to. “That’s a stupid answer” is unacceptable in real life and online. “I disagree with certain parts of that answer, and let me try to explain why” is a much more professional approach for expressing a different opinion.
Make sure your answers are as complete as possible. Ask follow-up questions of the original poster, if necessary. Provide links to documentation or other resources, if appropriate. Being a solution is a pretty worthy goal for any professional brand.
Participating in open source projects is a wonderful way to engage with community, exhibit a positive professional brand, and make a real difference. Just keep in mind the rules of the road:
Most projects will have documentation on how people can participate. Follow the rules to the letter.
Consider all the tips for Q&A websites (section 4.4.1) as you post issues, answer questions, and perform other activities within the project.
When posting issues, make sure you’re providing all the information that the project’s maintainers request, including reproduction steps, screen shots, example code, or whatever else they’ve indicated would be useful. Take care to research past issues before posting to understand whether your situation has already come up and been addressed.
When contributing code, make sure you’ve taken the time to understand and follow any existing naming conventions, coding patterns, or other practices that the project follows—both documented and inferred from the existing code. Make maintainers’ jobs easy by thoroughly testing your code, writing unit tests as appropriate, and being a good coding citizen.
For this chapter, I’d like you to look around the technology communities you already interact with. They might be Q&A sites, they might be blogs or other websites, and they might even be in-person gatherings like user groups or conferences. With all those communities in mind, consider these questions:
Who are the leaders of those communities? Are there any high-visibility individuals whose contributions or participation really stand out to you? What do they do that you might consider doing yourself?
Where could you begin contributing immediately? Don’t throw up your hands and say, “Everyone is already doing something, I can’t possibly contribute anything more!” You know you can.
Create a contribution schedule for yourself. Commit to being part of your technology community on a regular basis, not necessarily daily, but if you’re really thinking about your career, at least a few times a month. Make a schedule, put it in your calendar, and commit to it.