Tag Archives: community

OpenStack doesn’t need a leader, it just needs to evolve

Third, and perhaps the best argument against OpenStack needing a leader, is the open nature of the beast itself. It’s precisely because there’s no dominant leader that OpenStack remains so transparent and competitive – everyone’s contributions can be seen by everyone else, and this drives people to do even better.

Most likely, those who say that OpenStack needs a leader do so because of history – previous open-source projects like Java, Linux and Android have all had a ‘dictator’ at the helm, but that doesn’t necessarily mean it’s the best path for OpenStack.

via OpenStack doesn’t need a leader, it just needs to evolve | SiliconANGLE.

If you remember correctly, Linux’s leadership and development model was largely dismissed by pundits, until it had 15 years of success under it’s belt. Then it became gospel of how Open Source projects should run.

But everything evolves over time. It doesn’t really surprise me that the pundits see OpenStack’s leadership model as different, and immediately dismiss it. We’ve got 3.5 years under our belt. Maybe at 5 or 6 everyone will now say all Open Source projects need to run like OpenStack.

Which would of course be wrong. While there are certain common threads between different Open Source communities, every community is different. Why? Because Communities are made of real people. Real people with different passions, strengths, weaknesses, biases, loves, constraints, and moments of brilliance. This isn’t something you can model with spheroid approximations of upstream developers. Replicating another project’s leadership model might be easy, but in most cases isn’t what your community actually needs.

Are there areas for improvement? Sure. There always are. But improvement is a watch word for OpenStack, something we apply everywhere: to code, to process, to communication.

So I agree, we don’t need a single leader. And the evolution that continues in OpenStack will be a key strength, not a weakness as the project goes forward.

The Future of Libraries

The metafilter comment that’s been circling about what the massive cut to library funding in California really means:

Every day at my job I helped people just barely survive. Forget trying to form grass roots political activism by creating a society of computer users, forget trying to be the ‘people’s university’ and create a body of well informed citizens. Instead I helped people navigate through the degrading hoops of modern online society, fighting for scraps from the plate, and then kicking back afterwards by pretending to have a farm on Facebook (well, that is if they had any of their 2 hours left when they were done). What were we doing during the nineties? What were we doing during the boom that we’ve been left so ill served during the bust? No one seems to know. They come in to our classes and ask us if we have any ideas, and I do, but those ideas take money, and political will, and guts, and the closer I get to graduation the less and less I suspect that any of those things exist.

I’m a big supporter of libraries. We give annually to our local library (both financially and books and DVDs). I think Librarians are some of the few folks that really get what Copyright should be, and are very reliable advocates for sane copyright policy.

But at the same time I’ve got substantial frustration with parts of our libraries. I’m involved with multiple organizations that create really high quality educational content (MHLVUG and the Mid-Hudson Astronomical Association being the topic examples). For 9 years we used the Mid-Hudson Library System space (for a fee) with MHVLUG. It was a great space, but there was a huge missed opportunity, as our relationship with MHLS was always just that of a tenant. At the end, MHLS cutbacks meant we had to find another space, where we moved to Vassar College.

Contrast this with the Astronomy events I’ve led at Vassar College’s Farm Preserve. Not only were we given space, but we were wrapped into their series of events on the Farm Preserve, with joint advertising by the College. That led to huge turn out, and lots of positive feedback for both the College and our group.

The Library could be this kind of thing. And if it was, it would have the Hubble effect, where the citizenry were so invested in the organization that they wouldn’t let it get cut. There are some libraries that are thinking about, and embracing these kinds of ideas. The Fayetteville Free Library is doing some amazing things with setting up a Fab Lab. Lauren Smedley is an inspiration to what the future library could be, and lots of kudos to FFL for hiring her to try to make this happen.

I’m hopeful by nature, and I think our libraries will transform, eventually. But I do think it’s going to take a new generation of librarians to think past just books, and think about community at a broader level.

100 MHVLUG Meetings

Last night was the 100th MHVLUG meeting, which makes it a good time to reflect on a lot of things.

Good organizing is invisible, and takes a lot of energy.

Running a group like this for eight and a half years has truly made me appreciate a well run event, as I know how much work it takes. Good organizing, like good infrastructure, is invisible, which also makes it really easy to take for granted by people that have never had to do it themselves. Just like you only notice your plumbing when there is a leak, you only notice the effort required on an event when the equipment fails, or the speaker gets lost, or they turn off the power on your venue and you only find out about it 3 days in advance.

You must take 100% responsibility for the outcome.

Groups break down when no one takes responsibility for the whole. This doesn’t mean that you’ve got to do everything yourself (more on that in a second), but at the end of the day someone has to be responsible for the whole thing coming together. I’ve seen a lot of groups start to get dysfunctional when every one just sticks to their defined roles, and no one is interested in the whole.

Groups work really well when more than one person feels 100% responsible for making things work. Which is why I’m really happy with the officers we’ve now got with MHVLUG.

It’s too much work to do alone.

For a lot of years I was pretty much lone wolf in organizing MHVLUG, and it really started to burn me out. I wasn’t really enjoying it any more, and kind of lost it about a year ago on our mailing list. In the end, our incredible community stepped up, and a number of folks stepped forward into roles to help share the burden of MHVLUG organizing. The results have been fantastic!

Ben, Paul, and Joe have all been putting in great work this year to make things happen. Our attendance has gone from low 20s, to the low 30s at basically every meeting this year (we passed 40 at the Arduino meeting). That’s due to a combination of dedicated publicity, a really fresh and exciting list of programming, and activity on our website showing what we’ve done in the past. All really wonderful stuff. And all stuff that I just didn’t have the ability to handle when I was doing this on my own.

The power of this extra help can clearly be seen in the reaction to the venue change yesterday. On Monday we found out that Central Hudson was shutting off power to the street where our meeting takes place. I immediately sent out an email to our officers asking about options. Within an hour I was getting IMs from Ben that they were finalizing a new space at Marist. By the end of Monday afternoon we had the new space booked, Maps and directions on the website, and announcements out. Most of this was done by others, so I only needed to key an eye on things and make sure everything was coming together. It was all incredibly smooth. And even after the venue change, we had 30 folks at the meeting, something which would have been unheard of in the past.

Success breeds excitement, which breeds more success

I’m now more excited than ever about our group. This year has been simply amazing. It used to be that summer spots were largely dead air, and we were lucky if we had 18 people at a meeting in July or August. But now they are vibrant cutting edge presentation, that have massive engagement from the audience. Last night’s really excellent Scala talk by Ron Coleman had 30 people, and at least 10 members of the audience had questions or comments during the presentation. That level of engagement really brings an energy which is amazing.

This has been a great journey so far, and I can’t wait to see how the group evolves over time. Getting this community off the ground, and managing to not only have it still exist 8 years later, but be as vibrant as ever, is one of the things I’m most proud about. Here’s to another 100 meetings, which I’m sure will be every bit as good as the last 100 meetings.

How to keep a group vibrant

Over beers after Drupal Camp, 4 of us from the Poughkeepsie area were discussing how impressed we were with the organizers pulling of a 300 person event so successfully. As someone that organizes things, I understand how much work that was.

I was sitting next to Jeff, who is the president of the Mid-Hudson Computer Users Group. At some point the topic turned to running local groups. Of all the local technical groups in the area, the LUG has the lowest average age of attendees, by a pretty good margin. We have our share of retirees, but we also have a lot of middle aged professions, young professionals, and even the occasional college or high school student.

So I got asked the question “how do you guys do it?” This isn’t the first time I’ve been asked that by leadership of other local groups, at times I’ve had chats with ACM members as well. The answer?

Honestly, I have no idea.

I can bloviate and speculate, which I will. Maybe there will be some truth or usefulness in it. But I in no way claim that I have any real answers, or that any of these statements below answer anything. They just are what they are.

Linux is hip and exciting… at least it was when we got started back in 2003. If you look at our early talks they were very very Linux focussed, basic how to kinds of things. Linux was in the press all the time, so we benefited quite a lot from that. Our first meeting was 53 people, which blew my mind. Granted, at least 20 people at that first meeting were people I directly worked with at the LTC, who were coming out to support my kickoff effort, but success breeds success, and having that many folks out of the gate was important to keep us at a high critical mass while we got discovered in the community.

And that point of discovery can’t be made enough. How do people find out about things?

Word of mouth is powerful, and remains the best way to get the word out. Word of mouth is what gets butts in seats, because people trust friends and acquaintances to point them at good stuff. Word of mouth breaks down after a certain point because that can only travel among people you know. There is a whole other point here about visibility horizons and seeding other groups, that’s probably a post on it’s own at some point.

Beyond word of mouth there is serendipitous discovery. If you are in your mid 30s or up this includes event listings in the local papers, maybe a flier that you find at a library or some other space. If you are younger than your mid 40s this means Google. While there is an overlap it’s important to understand that the only way anyone under the age of 35 is going to find your group is via the internet. You must have a website, and it must be a focus. It has to be easy to find information, it has to look good, and it can’t be out of date. I did the overhaul of the mhvlug site last year based on Drupal to get us there, and I feel pretty good about the results.

Networking is also really important, which is funny, because I’m not actually that good at it. But as a group leader people are very willing to come up to you afterwards to ask a question or say a thing or two. It’s important to do your best to cultivate those interactions, because out of them can come some amazing things. I actively try to keep up on what our members are doing and working on in the public. As I’m now organizing our March show and tell (the last meeting I’m in charge of organizing), I’m just running through every cool project I’ve heard people mention in the last 6 months, and sending out email to them to get them on the schedule. I’m actually giddy about it, because it’s going to be a really cool meeting based on responses I’ve already gotten back.

And that brings us to another point, how to get meeting content. If, like us, your group real life event is primarily a lecture series, having a good set of talks is important. Because of the Dunning Kruger Effect, people that are qualified to speak on a subject won’t volunteer, and people that do volunteer may very often not be qualified. This means you pretty much have to specifically ask someone to give a lecture. Creating diversity here again means knowing enough people working on enough things, and reaching out to them to give a talk. It’s always best if it’s something that’s their baby, passion for a subject makes people very tolerant of the speaker, even if they aren’t very polished at presenting.

One other thing that’s worked for us is ensuring there are social events as well. The meeting is business, has a talk, and we try to keep it on topic (more or less), but we’ve got dinner after, and lunch once a month, which just lets people know each other more. Ask people what they are working on, or what excites them during these events. It lets you get to know some new people, which help a lot on the networking front.

So, our current good fortune may have something to do with these wanderings, there may be other things as well, or I may be complete off base. Again, Dunning Kruger probably means I’m the worst person possible to figure out what’s working or not. Every time I think I’ve figured out this whole running a group thing, I find something else that I need to change to make things better. It is definitely not a destination but a journey.

Comments on this are especially welcomed, as I’m very very interested in other people’s experiences and suggestions. I’m always interested in learning how to do this better.

Better ideas for a retreat

Seth Godin had a post on better ways to organize a retreat that had these as good points:

  • Create a dossier on each attendee in advance, with a photo and a non-humble CV of who they are and what they do and what their goals are
  • Never (never) have people go around a circle and say their name and what they do and their favorite kind of vegetable or whatever. The problem? People spend the whole time trying to think of what to say, not listening to those in front of them (I once had to witness 600 people do this!!)

I think the going around the room thing is really spot on.  I am here by banishing that from any gathering I’ve got.  Time to invest in more name tags.

Getting feedback via survey, always eye openning

I used to try to solicit feedback about MHVLUG on our mailing list, that always went poorly.  What people were willing to tell me directly, if the opportunity came up, never would come up in a group.  The social dynamics of groups very quickly turn into hearing a lot from a few people, and not very much from others.  Those quieted voices often have really good pieces of feedback, and realistically are our audience.  The loud ones only make up 10 – 20% of who show up to a meeting.

A survey, if small enough, breaks that down.  People are really communicating 1 on 1 with you, and are very straight forward.  You can ask questions you are looking for answers, and get answers you never expected if you leave people with a comment box.

We’re in the midst of this year’s MHVLUG survey, with 24 responses so far.  The results are useful, and help enforce which talks people really like, and things people think they want to see more of.  A few things surprise me:

There is a small, but measurable, part of our group that have zero interest in web technologies.  For me, the web is like water, so I’ve been stacking the schedule a bit more in a web direction the last couple of years.  I’m not sure that this feedback changes how Ben is going to build the schedule for this year (it’s still not quite sunk in that I managed to hand that task off), as no one is interested in everything, but it is interesting.

People really undervalue their knowledge.  I asked a question this year:  Would you be interested in presenting at MHVLUG, and if so what topic(s)?  For the people that responded to that, most people said some form of “I don’t have anything interesting”.  My experience is that that isn’t true.  Most of the talks that I’ve scheduled have been by noticing something interesting that someone is doing, and saying, “hey, any chance I can get you to do a talk on that?”.  In very few of the cases did people actually step up fully on their own.  Perhaps we can break this down with more lightning talks, which are less intimidating.

If you run a local group and haven’t used a survey to figure out what your silent majority is thinking, you should.  It gives you some grounding on what’s working, and what could use a change.

Review: Cognitive Surplus

Clay Shirky is one of those authors that I just can’t get enough of. After seeing a talk of his on TED a few years ago I got his first book, Here Comes Everybody, and loved it. When I found out he had another book out, I immediately ordered it on Amazon.

Here Comes Everybody was largely a How book, exploring how people were using new forms of communication to accomplish things we never thought possible before. Cognitive Surplus is a Why book. Why, exactly, do we have Wikipedia? Why do we have Kiva? Why do we have Linux?

His proposition is because of we’ve got a cognitive surplus, which we’ve finally come to realize due to the new connectedness of the internet. The 20th century brought about a substantial amount of leisure time in the western world, but we were still very isolated. If you had a hobby, like model trains, odds were that very few people around you shared in that hobby, so you while you enjoyed it your basement or garage, it was something you often didn’t have kindred spirits to share with. Lacking this kind of reinforcement for hobbies, we filled that time with things that did give us a shared experience: Television.

The internet let us find kindred spirits and help us unlock our desire to create by finding new communities that don’t need to be within driving distance.

The book is a great romp through a set of stories about why certain communities have formed, and with bits of advice in energizing your own community. I highly recommend it to just about anyone, though I’d suggest reading Here Comes Everybody first if you haven’t yet.

Software in the era of drive by contribution

I love git.  I’ll state that up front.  I also love github, which I’ve expressed in the past.  Both are making me look at software in a new way.  I also think the pair of them are changing some of the rules we know for how open source projects emerge and move forward.

Recently I was working on building a Rails based Event Calendar for MHVLUG.  This gave me a chance to dig in on ical, which has fascinated me since a set of talks at YAPC a decade ago.  There were 2 ruby ical libraries out there (icalendar.rb and vpim.rb), neither did quite what I wanted, and both projects were more or less dormant (the mailing lists were lots of “is anyone alive?” posts).  Ug, I was stuck, and if I had to start from scratch on ical, that was all I’d end up doing, never getting to my application.

I googled some more… and low and behold found a github.com fork of icalendar.rb, and forks of that.  Those forks implemented about 50% of the fixes I needed to get ical generation with timezones to work.  So I forked from one of those and 6 changesets later, had what I needed.  I then built my application, and life was good. 

A few days later I decided to collect up all the changes in all the github icalendar trees, and merge them into my tree.  While git itself can be somewhat confusing, github adds this really slick web interface on top of git trees, that makes the merge process pretty painless.  This is one of their key innovations, and it’s just incredible.  I selected all the outstanding changes that would merge cleanly, pulled them in, and now had a tree which largely encompassed the 8 existing forks on github.com.  I posted back to the dead mailing list and let people know there was this now living github tree where the project had seemed dead.  I got a couple of new patches people wanted in, and 2 months later the maintainer actually showed up again and gave me admin access to the icalendar project so I could publish official versions.

This pattern repeated a few more times on the project.  I found a piece of code on github that did 90% of what I needed, but I needed a change.  I created my fork, added my feature, and pushed it back out (with a pull request).  A few days later the maintainer pulled them back in, and now they are officially part of the project.  I’m not vested in those projects, but I had relevant fixes, and because we were all using a tool that makes it easy to be a casual contributor, they are now part of the open source projects in the sky.

Casual Contributions

If you haven’t seen the paper on participation inequality, go and read it… now!  Previously most of the studies on open source community participation focussed on big projects like the Linux Kernel, or Apache.  That’s sort of like trying to understand patterns of home construction by looking at Frank Loyd Wright’s houses.  Those projects are outliers in how communities work.  This study did a much broader look at online communities and found the striking 1-9-90 pattern:

This is how communities work.  1% of the population does most of the work, 9% are casual contributors, and 90% are just consumers.  Your user base is a silent majority.  In an open source world the 1% are the core contributors, and possibly the heavy power users.  9% is the people that file a bug now and then, maybe a patch or two, everyone else is the people that just download your code and you never hear from them.  This patern more or less holds true for all volunteer efforts.

In open source we’ve got an issue, which is that getting code from the 9% is hard.  The 1% typically has access to a central source management repository, and can merge code fixes as soon as they see them.  The 9% has to follow a completely different process, posting patches to trackers or mailing lists, many of which get lost because there are a bunch more manual steps to pull them into the main tree.  If any process requires more effort by the 1%, it typically won’t happen, they are full up on time as it is.

And this is where git and github, start making things interesting.  While I run a number of open source efforts, I end up in the 9% all the time.  If you are now using git for your main tree the 9% and the 1% are now using the same tools, which allow seemless inclusion of code.  The merge algorithm on git is really wonderous.  I’ve had instances of massive renaming of files while trying to integrate external fixes in those files, and everything just worked.  It actually surprised the hell out of me.

The 9% just want to casually contribute something they aren’t signing up for a lifestyle.  Get my fix out there, if other people want it, great, if not, so be it.  The fact that integration is 2 mouse clicks and 10 seconds of effort makes the chance of capturing those changes much more likely.

Recovering the Brown Field

Ever look at sourceforge.net?  or any of the clones?  50% of those projects never got off the ground.  Another 40% have died out for other reasons, the contributors: had a family, started working for a company that doesn’t let them work in OSS, got bored withthe project, died, or became inactive for any number of other reasons.  When open source software exploded in 2000, there was a lot of greenfield.  Everyone was out there building new stuff that no one had done before.  But now we have a lot of brown field.  A lot of 1/2 planned, 1/2 finished pieces of code that have useful bits in them, but have been abandonned by their original creators.

Tools like git and github help you recover that brown field.  In the last couple of months I run into project after project that petered out in 2006, but has a bunch of good code.  That means they are about 2 critical bug fixes away from being useful on modern systems.  It’s really not much work, but in the old system , with the projects locked up in a forge with an SVN or CVS source management system, they were dead.  You had to start over.  With github you can import that tree and keep working.

It’s a new pattern on how the open source community is going to function, while it could be built on any distributed SCM, the fact that git has a really good svn 2 way bridge, and that github made itself “person oriented” vs. “project oriented” really make me believe that it’s creating a uniquely new pattern for both recovering the brown field of open source, and enabling the 9% to be much more effective with their output.

Software in the era of drive by contribution

Now that we’ve got a set of tools that really were designed for helping the 1% and the 9% work together, I think we’re going to see a whole new blosoming of open source software.  The rules of what it means to be a project contributor are changing, in really exciting ways.  Forking used to cheap, and merging expensive, which is why forking was considered an insult.  But with tools like git merging is cheap, so the offensiveness of forking goes away.  It opens up for more experimentation, and more complex contributions happening outside the 1% group.  All this increases the velocity of contribution, and thus the volume of open source software out there.

I really think distributed source control is changing a lot of assumptions for how software gets developed.  So if you haven’t yet dug into the space, do it.

The next stage in OpenSim community growth – OpenSim Forge

The OpenSim community is one of the most vibrant open source communities that I’ve had the pleasure to be a part of. We’ve got an active set of core committers, an active set of more casual developers constantly providing bugs and patches to the project, and an incredible active set of users that are testing nearly every checkin out there. This kind of community is really too big for one project. Many of things things the community is interested in doing around OpenSim, like alternative grid servers, or admin web interfaces for opensim, are great things, but don’t really make sense in the scope of the main OpenSim source tree. Many of these early efforts set up sourceforge projects, but it was sometimes difficult to find they existed.

Welcome OpenSim Forge!

brought up the idea of setting up a gforge instance for OpenSim a few weeks ago, and things started rolling from there. Adam did all the leg work on this one, so many props to him and his team.

OpenSim Forge is a site for hosting OpenSim related open source projects. All projects must be under an OSI approved license. BSD license is encouraged, as that’s the license of OpenSim, but it isn’t required. The point is really to just be a one stop shopping for opensim related code, and to make it very easy for anyone that is interested in adding to this community to have a place to stick their project and get visibility.

In the 10 days since the site went live, we’ve got 10 public projects already registered, plus a few more in the queue. Now, I don’t think the 1 new project a day pace is going to keep coming, but as can clearly been seen the OpenSim community is bigger than just the OpenSim project. Here’s what we’ve gotten already up on OpenSim Forge:

  • 3 administration tools for OpenSim (2 web and 1 console)
  • 2 alternate grid servers (ASP.NET & Perl)
  • 1 project for patches to OpenSim (the Open Grid Protocol enablement patches)
  • 1 experimental viewer for OpenSim (not based on the SecondLife client)
  • 1 opensim based application (done via Application modules) which is astro physics simulation
  • 1 opensim test suite
  • 1 tray launcher for OpenSim

It’s a very powerful thing once a community grows beyond it’s initial boundaries, when it truly takes on a life of it’s own. I think the quick uptake on OpenSim Forge shows we are definitely at that point. I see this as a new stage of growth in both the community and the project, and what an exciting stage that is.