What Is “Community” To You?


A question for all the developers out there: What is “community” to you?

I thought about that question, and my own answer, after attending the the January Houston ALT.NET Geek Dinner.  To me, ALT.NET is about fostering the developer community, but I know not everyone sees it that way.  This got me wondering about how developers define the term for themselves.

All I know about the developer community, to be perfectly honest, is what I’ve conjured up in my head.  So the rest of this post… and consider this fair warning… is nothing more than my perception, and probably a distorted one at that.

It’s a necessity

Developers need… in fact, crave community.  The stereotype of the geek who doesn’t talk to anyone, stays in their cube or office all day, only comes out for coffee or a [mandatory] meeting, and generally is unable to communicate very well with other bipedal organisms… I refuse to perpetuate it.  I’m not sure how that image got started, or how the connection between “writing software” and “being socially isolated” got made, but I cannot subscribe to it.  And moreover, I think most serious developers… who care deeply about their profession… feel the same way.

Rather than solitary and isolating, I choose to see software development as a social experience.  And not because there is the potential to have what we write end up in the hands of other people; some of whom are going to give us feedback, wanted or otherwise.  It’s actually because of the developer user groups, events, and conferences.  I find it amazing that all these fundamentally social gatherings, focused in one way or another on development, even exist.  I see them as natural manifestations… as proof, really… of the need for developers to connect and exchange information.

It’s a social fabric

The developer community is a hodge-podge at best.  It’s not just a single group that, say, meets once per quarter and proclaims “Yep, we’re pretty much it”.  It’s an amalgam of individuals, groups, and entities.  It’s a chorus of voices, via blogs, tweets, speaking engagements, magazines, coworkers and colleagues, that all work to shape and expand our craft.  They all do this in different ways, of course, but the net effect is the same.

I enjoy reading lots of blogs (and I would say “books”, but I’ve been unintentionally remiss on book-reading), attending conferences, going to HDNUG meetings, and just about anything else that allows me to meet and hear other developers.  Reading blogs is critical, in my opinion; so much so that I consider it a bare minimum for community involvement.  I have a long list of feeds and I make use of a good RSS aggregator (I’ve been extremely loyal, or maybe just too lazy to change from, Newsgator).  Confession: There are podcasts and vidcasts that I’d like to really digest, but I have a difficult time getting into continuous, heavy AV use.  I’m much, much better at reading than I am at listening to podcasts.  But that is something I want to work on. 

I use Twitter, which is a relatively new tool for me; I’ve found it immensely valuable.  I’ve watched countless fascinating discussions happen in real-time.  And every user I follow has had something useful to say.

Beyond micro-blogging, I rely on social networks (like LinkedIn), IM, wikis (well, at least one for now), this blog, and even email as ways of staying in touch with other developers.  My goal is to use every tool I can find (and that suits me) to help establish and maintain connections.  I think that’s how the developer community works; we’re technologists at heart, but we’re social ones, so we use a variety of tools to that end.

It cultivates learning

Good developers, of all skill and knowledge levels, understand the necessity of continuous improvement.  They willingly foster the learning process, support those who want to learn, and always remain open to new ideas.  For me, that exemplifies the goal of the community: encourage its members to improve.  It’s not about ego, “supreme coders” on parade, or being in an “everyone-else-is-doing-it-wrong” clique.  (And if that’s all you find around you, look elsewhere until you find something more positive.)

What I want out of the developer community is to learn more than I can on my own.  So I expect that it will demonstrate a sincere commitment to developer education.  In my view, those with the knowledge I seek can tolerate giving more than a few “Getting started…” presentations, a dozen or so rudimentary questions, as long as it helps raise the awareness of everyone in the audience.  Of course, it shouldn’t always be about 101-type experiences; a healthy association pushes its members to grow; not just stay on the remedial track.

It’s not for everyone, but it should be

Despite all that I’ve said, it’s true that there are many talented, highly proficient, even brilliant, developers out there who probably don’t give one whit about any sort of community.  They get by just fine with maybe a few books, whitepapers, and near-perfect recall of their Computer Science courses, thank-you-very-much. 

The only problem I have with that kind of developer is that they end up being “hidden” resources; their knowledge and experience stays locked away inside their brains.  They could benefit a lot more people than just the ones who happen to be lucky enough (or not) to work with them.  They may not need the community, but it could always use them.

Community is important.  If you don’t see yourself as part of it, I recommend getting involved at least a little bit.  That could be anything from attending a user group meeting to reading a developer’s blog and leaving a comment.  Even if you don’t get a benefit from the content, the mere act of participation will still move you in the right direction.   Ultimately, community is whatever you make of it; just remember that it’s there to help you.

Technorati Tags: ,

%d bloggers like this: