Language-Based User Groups Considered Boring
Has anyone else wondered whether our habit of organizing user groups around a programming language (Java, Ruby) or a technical stack (.NET, iOS) has outlived its usefulness?
Lately, a group's language preference seems to be an unhelpful way to subdivide our community's interests. JavaScript frameworks are all the rage at Ruby user groups. RubyMotion talks are about to inundate iOS user groups. And I've seen "mock objects rock" and "mock objects suck" talks at numerous groups of different languages (noting that mock confusion differs only in dialect from group to group).
But the most critical observation I've made is that most user groups struggle to discuss fundamental development practices at a level beyond tutorial; most talks color strictly inside the lines of the "How to get started with <X Practice>
in <Y Language>
" template.
But thanks to community members' increasingly polyglot repertoire and to twitter's broadening of our networks, it seems like the same memes are being repeated serially throughout each of our language-based user groups in hipster-decreasing-order. That is to say, first a meme makes a splash at a Node.js/JavaScript group, then the Ruby group, and then the iOS group, before it finally rounds the bend at the Java and .NET groups. This strikes me as inefficient and hilarious.
It's foolish to think we could hit reset and dissolve all of our longstanding groups (so as to free up a weeknight for something new), but just for the sake of consideration: what if we tried to organize each user group around aspects other than language preference? Aspects like the principles we believed in, the practices we're improving, or the tools we love? It seems like this is already manifesting itself in some pockets. Several "software craftsmanship" groups have popped up around the country (my favorite being the Boston Software Craftsmanship group). And toolchain-specific groups have never really gone out of style, either—last year, Columbus saw a Vim group come and go.
Me? I really wish we had a GOOS club, where we could explore increasingly advanced approaches to writing better software by learning how to listen to our tests.
But I'd be just as stoked to see an "awesome browser stuff" group that just played with HTML5 features like WebSockets. Or a "basic research" meetup that explored experimental/poignant languages and noteworthy academic papers. Or a "dogma sucks" group, where Leon and I could highlight the latest trendy dogmatic fluff that tries to trick people into believing that software development is easier than it really is.
If you could spin up user a group around a single interest of yours, what would it be?