Growing Pains
May 21st, 2006 | by Aldacron |I started a guild once in an MMOG I played regularly. I wanted to gather together some like minded people that I could depend on to be there and help each other out. It worked out quite well. We became a tight knit group and gradually added new members to the fold when we found them agreeable. Two years later, we had become so large that playing the game became like work for me. I was constantly arbitrating disputes, soothing hurt feelings, chastising trouble makers, and doing my best to keep things interesting, motivate my ‘officers’ to take some of the work load, make new members feel welcome, and generally do everything but enjoy myself. When I took a break from the game, the different cliques that had formed behind the scenes (as happens when you have so many people in one group) eventually caused the guild to fracture. Things were never the same again.
I learned a few things from that experience. I learned that managing a guild in a game requires effective delegation to dedicated officers. I learned that while some people take everything in stride and try to have fun (it’s just a game, after all), others take it quite seriously. I learned that no matter how lightly the one with the guild leader label views his role, most of the guild members expect that person to be mother, father, boss, judge… basically they expect the GL to seriously lead. Most importantly, I learned that I’m in no hurry to be a guild leader again.
I have come to realize that maintaining an open source project is not much different from running a guild. Derelict started as a hobby. I thought it would be cool to have bindings with the ability to load shared libraries manually at runtime. Then I thought it would be cool to share the code with other D users. I never took the project any more seriously than as a part time hobby (as long time Derelict users can attest, with the long gaps between updates). I never imagined that other people would see it as anything more. But I was wrong.
As time has gone by, more and more people have begun to use the code I put out there. In the back of my mind, I’ve always had this growing, gnawing knot telling me that I need to allocate more time to it because people are wanting more features. We need better documentation, we need bindings for this or that library, we need to update to this package to that version. The louder my inner voice got, the more I resisted. No way is Derelict going to be more than a hobby. I don’t have time to make it so. Still, people come out of the woodwork now and then and say things from the perspective that Derelict is a ‘product’ rather than a ‘hobby’.
One guy on the NG a while back was complaining about the documentation. There needed to be a website with clear directions if Derelict was going to have more users and be successful. My response was that I don’t care if Derelict has more users and I really don’t care how successful it is. Still, I increasingly get private messages, emails, and the occasional forum or NG post written from the ‘product’ perspective.
It’s only natural, I think, that when you find a project like this for the first time you see yourself as a consumer. If you are the consumer, then the people who make the thing you consume are producers, and by extension the thing that they produce must therefore be a product. Products have lifecycles. Consumers have rights. Producers have responsibilities, one of which is to satisfy the consumers. This perception is completely counter to the take it or leave it model.
Part of me finds it gratifying that people are using something I created. That’s one of the motivations for putting it out there in the first place. What I don’t find gratifying is that people expect me to take more responsibility as a producer than I am willing to. But somewhere in the back of my mind, I’m thinking that because I put the project out there I should fall into that producer-consumer model and take the responsible role of satisfying my consumers. I know, though, that if I do that I’ll wind up in the same situation I was in as a guild leader - I’ll no longer be having fun.
Derelict is fun for me. I find it interesting to work on sometimes. I have no desire for it to become a time sink. I don’t want to spend all of my spare time making sure Derelict users are happy. Had I started the project with the idea that it’s my ‘product’, things would be different. But that’s not the case. It is an alternative to existing bindings for those who want to use it. I’m not working toward the goal of Derelict becoming the de facto binding for OpenGL, or SDL, or whatever else. That’s not going to change anytime soon.
I’m not angry. I’m not frustrated. I’m just worried that as more people come to the project I will feel more of a responsibility to devote more time to it. I don’t want that to happen because I know that will ultimately lead to me not wanting to work on the project at all. There may likely come a time when I’m willing to get more serious about it. But that time is not now. I should probably add something to the project page to this effect so that, maybe, people will come to the project from my perspective rather than that of the producer-consumer model:
Derelict is a hobby. It is neither a commercial product nor a project to which I devote copious amounts of time. I work on it when I feel like it. I’m happy to incorporate patches, bug fixes, and new packages contributed by users. But don’t expect things to happen over night. Have a nice day.
By charles on May 26, 2006
Good article. It is tricky maintaining an open source hobby project, I think if you’re upfront with them about it they would be cool , but people do expect an awful alot, and rarely do they give you anything in return, except more requests.
LOL at the guild. What game was this ?
By Aldacron on May 26, 2006
Dark Age of Camelot. I wound up going with a handful of friends to another server and for several months. Several former members still keep in contact via our forums and email. Once in a while we hook up in real life. In the meantime, a couple of diehards have held on to the original guild and it is slowly starting to grow again. I’m still a GL, and I still log on from time to time, but I no longer take such an active role. We’re actually starting to talk about starting over next year when Warhammer Online is released by the same company.