Foundation of Participation Part 3: the social concerns

In order to become the foundation of participation that I envision, the tools to properly support it need to be in place. The foundation has received a generous software grant from autodesk of an ‘enterprise’ piece of software built by collabnet. But frankly I have been shocked at how bad it is, considering its open source roots and that its purpose is to encourage communities of collaboration. Ok, it’s not that bad, but it does feel like a step backwards in many ways. I don’t want to write all about it here so this does not turn in to a post just ripping in to the details. Though if it annoys me enough I’ll probably shoot one off in a fit of rage (I came close a couple times, like when I realized their email search returns results completely unsorted? Or when we found out that reply-to all behavior wasn’t only list by default, but that was the only option.)

((rant preview, started in the past))
It’s like collabnet forked apache, and made it more rigid so they could sell it to corporations who wanted more control. While missing out with every advance the web has made since then. It’s way too developer focused. They’ve figured out how to cookie cut the infrastructure needed for an os project (though I’m not convinced it’s all that much better than source forge), and how to sell the tool that does it to management.
((end rant preview))

Though it seems like a friend just wrote about the post I would write, so if I ever feel the rage maybe I’ll just ask if I can repost it here, save myself some wasted energy.

But I do have a couple suggestions for the collabnet software. Much of what I want to talk about in this post may not be specifically relevant to software development, and thus if that’s all collabnet wants to do then some of these points are moot. But some of it is.

Get rid of the svn barrier to entry for web modification This is easily solved with a wiki, one of the single most important tools for any collaboration. I don’t even care if it’s not a wiki, if it’s just a wysiwyg html editor with versioning. But right now modifying anything on the website requires knowledge of subversion and html. This is fine if everyone’s a programmer, but any good open source ecology will have a number of non-programmers. You give them a wiki they can do amazing work. The barrier to entry must be lower for them. Wiki’s can be amazing for doing documentation, GeoServer and GeoTools have benefited hugely from such a switch. And many programmers don’t know html well enough to make nice pages.

Opt-in for creation of new lists Every new project started on collabnet instantly creates 6 new lists – announce, user, dev, issues, commits, and sometimes cvs. The problem is that most projects don’t need all of these, and too many lists just confuses. When a software project starts up you need a dev list. Soon you’ll probably need an issues list and a commits list. When you get users it makes sense to have a user list and announce list. But many of the projects on collabnet aren’t software. They’ll never use subversion or the tracker. The lists should be automatically created when the first commit is done, or when the first bug is logged. Any time before that it’s just clutter, so keep it off if it’s not actually being used.

Make a ‘news’ section, where adding new information is as easy as hitting a ‘add news’ button. This should be available as a feed. Indeed this could replace the ‘announce’ email list, or even better, combine the two – the list just puts the news items in to an email form.

Forum and email list integration One should be able to read an email list as a forum, or to use email through a forum. Nabble does this quite nicely, on GeoServer we get a couple emails a week through Nabble, and I’ve sent some myself to other lists. It’s super nice to not have to make the full commitment to subbing to a list, just to make sure you won’t be moderated for one post. A forum in many ways is just like an email list, except it’s on the web at all times. But I should be able to just ‘subscribe’ to a forum, and get updates from it, whenever they happen. I’m actually surprised that more people don’t offer this functionality, we’re going to do so with listen in our new OpenPlans software.

Ok, that’s it for the suggestions for improving collabnet, now let’s talk about the more fun software tools. Some of these don’t really exist yet, and I’m not sure it’s in the scope of the foundation to make them, but some could benefit us a lot.

The first one is a collaborative funding mechanism. This could be huge for open source projects, to spell out the benefits of diverse organizations pooling their resources, each putting in the next step to build something bigger than what they could alone. I’m hoping to put together a good presentation on how this can work for the Location Intelligence conference next month. But I could see some smart software playing a big role. The best example thus far is PledgeBank. Go ahead and explore it a bit, basically it allows you to make a pledge, usually monetary but not always, and if a certain number of people also sign up for it, then the money is released. But it’s only done if the goal is met, so that if you sign up, you see yourself as giving $5,000 instead of $10, since the pledge isn’t until 500 people give. At that level you can see the difference it’s making. There is a plan being kicked around for the foundation to allow companies to sponser open source, to ensure stability by paying for routine maintenance. Which I think is great, and that such a route may be the best model. But for new features, I can see a pledge bank type system working better. Paul Ramsey brokered a deal like this for GiST improvements to Postgresql. But it’d be great if someone could request a feature, get a developer to estimate the total cost, and say they’d pledge $500 towards it, but only if it got funded. This could then be further improved with dependency trees, where one could see how funding one improvement, say GML 3 support in GeoTools, could lead to others, like WFS 1.1 support in GeoServer.

The other pieces are more mundane, but still need some software modifications/improvements to support them. One that came up was task matching, a sort of ‘help wanted’ section, that could match up interested developers with new projects. Ideally this could link up with task trackers, so that they can make the bug assigned to them. Would be even better if they could get a ‘mentor’, who would walk them through the open source process. A variation on this theme is a section for students, who are looking for a thesis topic. They could be hooked up with projects that help open source, and that would be a size of work that would last about the time they have. This software could be a simple forum, but it’d be cool to set up.

A wiki for book material would also be very nice. The FreeGISBook never quite got off the ground, but it’d be a great thing to be in a format that lends itself to real printing, if it takes off. The editing should be wiki like, but also fit into a good formatting. I believe drupal may have a package that allows this.

Free hosted data in an example of an SDI stack is also another infrastructure thing to help out the foundation of participation. The stack would show off foundation software, a clear example of what is possible. And it would share as much open data as it could, through the interoperable web services. This could get expensive, but could partner with a university or something like the internet archive.

And past that the foundation could bring participation to the maintenance and creation of geospatial data. This is a subject for its own post, but basically have the foundation be a center of ‘geowiki’ activity, a place for people to create and maintain maps together, bringing the open source process beyond software, to geospatial information. There are three to four parts that I see as essential to really making an architecture of participation for geospatial data, but I think it’s possible. Indeed such ideas are the main reason I’ve started the blog, and it surprises me it’s taken this long to get to them. Hopefully I will have a chance to write them up soon.

Holarchies of Participation

Ok, so I’m getting too into these ‘of Participation’ posts, I swear it will end soon and I’ll get to talking about the concrete concepts that I’m going to pin on them. But already I’ve started to bring up this notion of a holarchy of participation, and it will come up again in later posts, so I’m going to lay it down here.

A ‘holarchy’ is a term coined by Arthur Koestler, which I came to by way of Ken Wilber in Sex, Ecology, Spirituality. It’s a great term, and I won’t be able to do it justice, so just pick up SES. There is a decent article here. The atomic unit of a holarchy is a holon: something that is simultaneously a part and a whole. See the wikipedia article on holons for further information. It is a powerful concept to understand the world, that nothing can be fully explained without looking at in context of that which makes it up, and that of which it is a part. An easy example is atoms to molecules to cells to organs to organisms. Each level is made up of sub-parts, and in turn serves as a part in the whole of the next level.

So what this implies for architectures of participation is that they don’t stand in isolation, that they work best when the component parts that make up a given architecture are themselves architectures of participation. The World Wide Web is the most obvious in this whole/part dynamic, as it is enabled by units of open source software like the Apache web server, and it in turn serves as the substrate for many more architectures of participation, like the Wikipedia (or indeed any of Benkler’s examples). Going one level down, open source software was enabled by the Internet, since it was the communication medium that made it possible for many collaborators to work on the same project across time zones and schedules. And we are starting to see what one level up will look like, with the Web 2.0 meme, where an architecture of participation of online classifieds (craigslist) can be combined with an open api (google maps) to create a new whole: housingmaps. (though I feel this example suffers a bit as google maps may be an architecture of participation, but it’s not a full holarchy of participation, since it rests on proprietary software and geographic data. But that’s a topic for another post).

The mashups of web 2.0, combining services from multiple sources, for me points to the next level of holons. The parts in this case are the web services provided by various organizations, and there needs to be a critical mass of them before the next level of participation arises on top of them. The thing that I’m curious about is the fact that most of the web services are provided by commercial companies, and how much a holarchy of participation can stand if all its parts are not participatory. Interesting API’s are provided, but for the most part the code behind the API’s is closed source. Will ‘truly open’ apis arise, where the base data is fully exposed, with users/developers able to create any api they want on top of it? I believe this is where things like google maps will start to suffer, since there is no way they can truly open up the geographic data, as they do not own it and don’t have the right to distribute it. Something like ebay has a better chance, since they are able to let go of most all the data, as it’s theirs, and the important value is in the trust mechanism (which starts to speak to a compelling model for geographic data, since navtech/teleatlas own that trust mechanism for geodata, but it’s a very coarse one: data from those two companies is good, tiger census is not as good, ect., instead of the fine grained architecture of participation that ebay has created around trust in buying and selling. What if we had fine grained trust mechanism for various data providers in various areas of the world? Flawed, but grist for the mill of future posts).

As for ideas of what the ‘whole’ of the next level will look like, that will have to be in future posts. The notion of the ‘semantic web’ is the closest I’ve seen, but I feel it misses some key aspects of it. In my mind it relies too much on computers to sort things out, while I see more of a collaborative web. That it’s not going to be these automatic ‘agents’ running around, but it’s going to be people who filter and process information, we’re just going to be able to greater rely on that processing of others, develop trust and collaboration mechanisms that make others people’s data and habits much more useful. Perhaps that will serve as a jumping point to semantic web nirvana, or perhaps it may just take it towards something else entirely.

Random visions of the future aside, the point of all this is that participation does not take place in isolation. It’s harder to make an true open source project from an ‘open sourced’ proprietary code base, even if it’s very good, because the original authors weren’t thinking in a collaborative mode. Similarly it’s easier to build new systems and architectures on top of ones that are already collaborative. The essence seeps out somehow, and the power of participation allows a repurposing old pieces for new uses. If the building blocks can’t be modified, aren’t themselves open to tinkering and new purposes, then just how far the architecture of participation that is built on top is inherently limited. In some cases that might not be important, and indeed the commercialized web 2.0 seems to posit that question. Though I could see a world where it ends up crashing for just that reason. Indeed Douglas Rushkoff seems to suggest in his Open Source Democracy that the whole reason the first bubble burst was because investors got away from the community and the participation that made the World Wide Web in the first place. Bubble 2.0 suggests that in this next round business is figuring out how to effectively exploit these architectures of participation (with gems like: Network effects from user contributions are the key to market dominance in the Web 2.0 era. ).

Perhaps instead of the market dominating users, we are seeing the rise of users dominating markets. Maybe we’re sick of being dominated by our markets. And whenever one of these bubble 2.0 companies leans too hard on their users, starts to ‘monetize’ us, poof we’ll be gone, off to greener pastures where our collaboration and participation is less exploited. We pick off the best ideas, and just make them better in a more open source, cooperative manner.