It's been a while since I last posted-- I've finished the C client (although there is a bunch of stuff I'd like to do to it to make it better) and have moved on to some other things. And I've also been working on a new roadmap for the core Darkstar group.

During the time between the last roadmap and now, we have gone much more to an open-source model. We now do all of our development in repositories that are in the open (you can find them here) and we have started doing a lot of our technical discussions on an open mailing list or on the community forums. We have some great community members, who are helping us a lot in figuring out what to do and how to do it. We have even started rolling weekly builds of the trunk, placed in a maven repository, so the more adventurous in the community can take the latest (but perhaps not the most stable) bits to try. It is both great fun and a great way to develop software-- we have a very active (and vocal) community that is helping us a lot (for example, most of the testing and debugging of the C client was a joint effort between one community member and me; it would have been much slower if I had been doing it alone).

All of which makes the notion of doing a roadmap somewhat different than what I've grown used to over my years in this industry. Usually, a roadmap is a way of letting your customers know what it is you are thinking about doing, and when they can expect to have access to those features that are on the roadmap. Roadmaps are important, because they have been the only way for customers to know what the intention of the group was, and to plan on when a needed feature would be available or when a critical bug would get fixed. Of course, roadmaps were also subject to all kinds of gaming. Companies would put out a roadmap in an attempt to lay claim to some technical ground, or to keep competitors from gaining that ground, or to freeze customers from going someplace else (really, we are going to have that feature too; it's on the roadmap right here). Roadmaps have always tread a fine line between engineering, marketing, and fraud.

But coming up with a roadmap for a project in which all of the development takes place in public is a different sort of thing. I can't claim in the roadmap that we are further along in our development than we really are, since those reading the roadmap can take a look at our code and see where we are. Our discussions are out in the open, so those who care already have a pretty good idea of what we are thinking about, what problems we think are important, and what approaches we are thinking of taking to implement any of those features. Given the state of the code, anyone who wants to do a little reading can also get a pretty good idea of whether we are almost done with some feature, working actively, or haven't started. Which means that a lot of the information that used to be available only from a roadmap can now be obtained by just paying attention to the community. The difference is that the code repositories can't lie about where we are or what we are doing.

So if all of the information that used to come from the roadmap is already available in a more accurate form, why bother with a roadmap? I found myself asking that question a lot while trying to do the roadmap, and came up with the following reasons:

  • A roadmap document is a great way of telling the community our intentions, as the core Project Darkstar team, concerning what we plan on concentrating on for the near future;
  • A roadmap document is a good way of getting the engineers on the team to discuss what the priorities really are, and to set down the results of that discussion so others can see;
  • A roadmap document is a good way of getting the community involved in the discussion by showing them what we plan on doing, so that they can discuss whether or not these are the right things to do, and see what gaps remain that they might want to tackle.
I also decided that the roadmap would be a good place to take a quick look back to see how we did on our previous plan. So unlike most roadmaps, which are completely forward focused, the current roadmap contains some sections on the milestones that we have already passed, noting what things changed and were we did what we said we are going to do. This is not always a pleasant exercise, but it is one that is instructive.

At any rate, the new roadmap is out. I'd love to hear comments on it from those who are using, or just interested in, the Project Darkstar server. You can post comments here, or head over to the Darkstar forums. I don't so much care where, but we'd love to hear from you.

Comments:

Support of the Lou Zhu, Lou Zhu worked hard
Signature--------------------------------------------------------------------------------------------------------------------
Nothing is impossible for a willing heart
<a href="http://www.uggshelf.com/Products.html">ugg Boots</a>

Posted by hanyujoys on October 14, 2009 at 08:26 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

This blog copyright 2009 by Jim Waldo