Except they don't really have it working. http://pivotallabs.com/talks/107-diaspora (the first 30 min is stories about how they met and what they did in school, you can skip that)
That was posted 8 days ago; I don't know how far away they had it from working but a lot can happen in that timeframe if you have people working like it's a startup.
I think this is a kind of mythical man-month moment.
Some things can be put together with enough all nighters.
But my hunch is a working distributed social networking system isn't one of them. And the reason is that, like operating systems, databases or sophisticated languages, you can't iteratively improve a badly designed complex system (and working with similar things, I've tried...).
You especially can't do it at 3:00am.
(And unless you've first debugged your design, the chances are your design is bad. Unlike, operating systems, databases or sophisticated languages, there aren't well known patterns for constructed distributed social networking sites... but the problems involved seem at least as hard)
Exactly. I'm amazed that people think that Diaspora can accomplish in a few months what Elgg, Appleseed, Onesocialweb, etc. etc. have all been working on for YEARS.
Especially when considering that these are being developed by professionals with industry experience, and Diaspora is four college kids.
We all want to hear the story of the intrepid engineers working in their parents garage and changing the world, but let's be realistic here.
What does "working" mean if it doesn't mean working well?
My point earlier was that, as opposed to a fairly linear application like a web app, in something like an operating system or a distributed database, there's much greater gulf between being able to make a demo that looks interesting and getting the system even barely usable.
The problem is interlocked complexity. In a linear app, you can add code to take of cases you didn't think of. In a complex system, such changes can result in creating further bugs.
If Diaspora folks just start adding more code to make their app not crash under demo conditions, it won't solve whatever architecture problems they have. And the point is that this is an design/architecture/protocol problem, a hard one. Perhaps they've solved that problem and are just putting the finishing touches on the resulting code. But a glance at their video does not give me that impression. It's more "uh, we're putting out what we got ... we can keep working..."
It's like P/NP proofs. If you don't start with summary of earlier efforts, saying why your stuff works when the other stuff didn't, it probably means you just haven't grokked just how hard the problem is.
I see where you're coming from, but I think we're talking about 2 different things. The trail of the conversation was this:
sumeetjain quoted: "We have Diaspora working, we like it, and it will be open-sourced on September 15th."
Then "what" said they didn't have it working yet according to a video posted a little while ago.
I said that it might be working now because it's been over a week, assuming they're pulling long hours to make it work.
So, I guess the definition of "working" really depends on what the Diaspora team meant when they said it was working and they liked it (in this context).