Some comments moved from SoftwareBazaar.

I'd be interested in an analysis of how it is that Free Software projects find existing work.

I think there are two basic forces involved in this:

  • Research: Google, check Freshmeat, and uh…
  • Expression: Say what your idea is, and see who is attracted. Usually the people attracted may know of another related project. (ContentAndCommunity, InternetConcentration.)

I believe the ProjectSpaceNetwork, or something similar to it, can tighten the loop.

I think more detailed thinking could yield fruit.

Perhaps it makes more sense to talk about people. How do people connect to projects? Projects don't connect. Projects don't do. People do. Your two points, research and expression, can now be better qualified: Most people search for software when they have a problem doing whatever they want to do.

Software is usually just a means to an end. This gives us our first handle on the expression part: We need to describe our projects such that it is clear what kinds of problems we solve, and that we make it possible for people with that problem to find us.

  1. How googlable are our websites? We need to be found not when searching for what we have, but when searching for the problems we solve.
  2. How networked are we? The number of newsgroups, mailing lists, IRC channels we're on is an indicator for how easy somebody with a problem we can solve can be heard by us.

The focus on people wanting to solve problems allows us to better qualify the service we are (or should be) providing:

  1. How problem-centered are we? When answering questions, we need to address the problems users have. Explaining the tool (our software) is good, documentation is good, but the critical measure is whether it actually helps people solve their problems.
  2. We can draw them into the development process later… ;) And we should! There's a balance that we need to strike between attracting users and attracting developers. Without users, the software is use(r)less, without developers the software grows stale.

I'm thinking specificly of this thing I see, where:

I come up with an idea. I google around for it, and don't find it anywhere. I look in Freshmeat, and I don't find it anywhere. I do all those things you'd think to do, and don't find it anywhere.

I start talking about it with people, and maybe start a little bit of work on the idea.

2-6 months later, I learn that somebody has already come up with the idea. Very frequently, the way I learn about it is somebody approaching me and telling me about it.

That's very interesting.

I've thought about it a bit, and this is what I've come up with:

Interesting new ideas come at the edge of KnownSpace?. At the edge of KnownSpace?, people haven't really come up with words for things. So, they have to make up words, or say things like, "This is something like (foo)"

Googling for "foo" isn't very useful, because foo is in KnownSpace?, and thus you get the canonical foo.

Googling for fringe words isn't very useful, because they're not well known. (There are exceptions: Sometimes, people come up with the same name, because there's a way to naming.)

So what happens is that there's this invisibility field around the idea that lasts for 2-6 months, perhaps even longer, as the idea rolls out.

(I think it took me about 6 months to learn about the XmlRpcFilteringPipe, and I think it took about 2-3 months to learn about efforts similar to SubPathetaEdit?, which we had been looking for.)

I think that the ProjectSpaceNetwork may be able to cure this. I think at the very least, it would alleviate it.

I'm still thinking about the SoftwareBazaar, and I'm also thinking about DOAP.

Define external redirect: SubPathetaEdit KnownSpace