The Importance of Community: You Can’t Do It Alone
I used to think I was a real hot shot.
I used to think I could conquer the entire world all by myself with just an IDE and a mechanical keyboard.
I couldn’t have been further from the truth.
(Oh, and yes that really is a picture of me—don’t ask!)
All of us are stronger than one of us
Too many software developers today have that same flawed mindset that I had back when I was running around thinking I was hot stuff.
It is a limited way of thinking that prevents you from reaching your true potential. For years, my real abilities lay dormant while I pretended to be much more than I was. I thought I knew all the answers and that anyone that didn’t agree with me was wrong.
I was caught in my own trap—one I had set for myself. I was limited by my own ideas and perspective and I was filtering out anything that didn’t agree with my preconceived notions of how software should be developed.
The reason why I was caught in this trap, wasn’t because I was a big jerk—although the Perl developers that faced my wrath would beg to differ. No, it was because I was so isolated. I wasn’t part of the community. I was in my own little world.
Bad things happen when we isolate ourselves. Our thinking and perspectives are limited, but that isn’t the only thing that happens. No only do we cut off the ability for the outside world to influence us and shape our ideas, but we severely limit our own ability to influence others.
You might not think influencing others is very important to your career, but it is one of the cornerstones of building a network. People who benefit from a relationship with you, professionally and otherwise, are people who you can rely on when you need help in the future.
Many software developers severely limit their impact and influence by avoiding the community and staying holed up in their caves.
One of the biggest pains of going it all on your own is loneliness. Yes, it is lonely out there trying to conquer the world by yourself. Even if you succeed, who will you share the accomplishment with? Many otherwise fun activities lose their charm when we don’t have anyone to share them with. Victories are less sweet and defeats are far more painful.
The benefits of community
Fortunately, you don’t have to go it alone. There is a huge software development community out there waiting to welcome you.
By joining and interacting with this community you can avoid having to face all your struggles on your own. It is always nice to have someone whom with you can share the problems you are going though. Getting an outside perspective often helps you to think about a problem in a new way or to see something you didn’t see before. At the very least it validates your problem as a real one.
When you decide to participate in the community, you are suddenly exposed to a new world of opportunities. You never know what kind of connections you’ll make and how those connections will benefit you in the future. I’ve met so many people that have positively influenced my life or gave me that extra push through my involvement with the community.
But, perhaps the biggest draw to joining the developer community is the feeling of belonging to something bigger than yourself. The software development world is huge and it is easy to feel like you are just a small little voice in a room full of people shouting at the top of their lungs. When you join the community, you identify with the accomplishments of everyone in it. You go from a small little voice on your own to an integral component of a choir. Suddenly your voice individually doesn’t matter as much, but collectively it is much more important.
How to get involved
By now you might be agreeing with me that interacting with the software development community is valuable—both to your career and to your well being. But, how do you actually get involved and become part of the community?
There are many ways to get involved in the software development community, but one of the easiest ways is to just start being social.
Step outside into the fresh air and share what you have learned and the struggles you are facing. Jump on social networks like Twitter or Facebook and start a conversation. You can find groups on communities like LinkedIn and Google+ where many different developers or congregating.
You can even comment on other people’s blogs—or better yet start your own blog. If you are reading this post now, leave a comment and get involved. Instead of just reading blogs passively, start a conversation.
And don’t forget, networking events and user groups. There are plenty of user groups around most metropolitan areas that you can get involved with. If you can’t seem to find one, you can always start your own mastermind group with a couple of other developers to meet weekly and discuss problems each of you are facing.
Finding your unique gift
The most valuable members of any community are those members who can carve out a niche for themselves and provide specific guidance and advice to the community in that particular area.
Take some time to think about what your own personal brand is and what you would like to be known for. Do you have an interest in mobile development on Android? Are you a C# language guru? Perhaps, you are just comic relief for an overly stressed environment. Find something that you can do to contribute to the community in a unique way.
They key to a thriving community: giving value
There are many ways you can contribute to the software development community.
A good place to start is by creating your own blog and sharing what you know and what you learn with others there. Blogs are a very valuable resources for software developers and if you spend time writing blog posts, others will appreciate and start to recognize your contributions.
If you feel a bit more adventurous, you can create your own Podcast. Compared to many communities, there is a real shortage of podcasts in the developer community.
Writing a book, even if you just self-publish, is a way to contribute to the community and make some money while doing it—although, don’t expect to get rich from book sales alone.
And, of course there is open source. Many open source software projects need developers who are willing to put in some time and goodwill to help get them off the ground or to keep up with the maintenance associated with any large scale software effort.
The key thing to remember is that you help the community by creating value for others. A majority of it should of course be free, but not all of it has to be free to be valuable.
If you are with me so far, you agree that being actively involved in the software development community is a good thing and you know some ways to do it, but talking about it and actually doing it are two different things. So, how do you actually get started?
Well, the easiest way is to just jump right in and get involved in whatever way you can. You don’t have to be a genius or an expert on a topic to blog about, talk about it, or just share your excitement. In fact, sometimes being a beginner is a big asset.
If you want a little more help though—I know writing your first blog or trying to speak in front of an audience can be extremely unnerving—I’ve got something you might be interested in.
Next week on March 27th, I’ll be launching a brand new program called “How To Market Yourself as a Software Developer.” In this complete package, you’ll find lots of advice about how to get involved in the community by learning how to create a blog, and in other ways as well.
I think you’ll be particularly interested in my interview with Derick Bailey who is the creator of the popular open source project, Marionette.js. In that interview Derick explains exactly how he got involved in the the development community and how it benefited his career.