[Kamaelia:Development] Old School Collaboration Meets New School Communication; Decentralized Development Done Right
Firstly, Sylvain Hellegouarch continues to astound me with his dedication to each of the projects we are working on together, as well as his ability to get stuff done. I’ll avoid making a list of all that he does, as
a) it would take too long to research,
b) it would take too long to write,
c) it would take too long to read,
Of course, by too long I don’t mean it wouldn’t be worth the effort, and instead, I can more easily and simply summarize this list by describing the impression you would be left with after reading this list,
One word (and one punctuation mark),
WOW!
If he were available I would be telling whomever was in the market to snatch him fast before somebody else does. That said,
* At present time he isn’t available
* If I have things my way (and I have every intention of having things my way; at least in this regard ;), *HE NEVER WILL BE*
NOTE: No, that is not a threat of violence against Sylvain… By “NEVER WILL BE” I mean he will be working with me in various aspects, professional and non-professional alike, from now until such time as he has deservedly long since retired, though my guess is we will probably both still be working on non-professional projects together well into both of our retirements.
‘nuf said.
Secondly,
As mentioned last week, due to the ongoing and ever impressive footwork of Sylvain, we have been chatting with Michael Sparks, a scientist for the BBC’s Research & Development division, and creator and project lead of the Kamaelia project, something I have already spoken about several times.
Sylvain recently introduced Michael to the folks on the LLUP development list (an open list-based forum in which anyone can freely access and/or join), and since that time Michael has followed-up directly, providing several areas of focus to help get my head around what the Kamaelia project is all about.
I won’t go into extensive detail, and instead, let me just say this…
Michael’s design is so simple, yet so complete, I find myself in complete and total awe of his work, and further am completely goo-goo-eyed over as this provides the solution to SO MANY PROBLEMS that I have been trying to solve for SO LONG I can’t even remember the day that I first started thinking about and working on this stuff. That said, and to be fair, I can barely remember what I had for breakfast this morning, and I still can’t find my keys that I misplaced yesterday, though living downtown allows nicely in regards to not needing to drive all that much, so there are definitely greater problems to solve than that of finding them anytime in the near term future.
Moving on! ;)
You might be asking “so what gives with the title?”
Excellent question!
Below is a copy of the transcript of todays IRC-based (the old school collaboration) sent out to the Kamaleia project (the new school communication, though it could work quite well in regards to collaboration, just as IRC works quite well for simple communication) development list a bit earlier this evening.
The point?
We are beginning to enter a world where decentralized, collaborative interaction will become the expected norm. That’s not to say that office-space is no longer necessary, nor is it meant to suggest that the virtual world is about to replace the actual world in regards to human interaction. Neither is likely to happen anytime soon, if ever, but thats really not the point which is this,
One of biggest challenges we both have been, and will continue to be faced with in the world of decentralized development is that of staying in sync, focused, and moving forward in the same general direction.
Want an example of how to do decentralized development, and do decentralized development right?
Behold,
These notes will be uploaded to the usual place in the next few days:
http://kamaelia.sourceforge.net/reports/Weekly
Matt
====== START OF WEEKLY IRC KAMAELIA MEETING, 20061020 ======
1. Note of Agenda
2. Participants
3. Activity Reports
4. Discussion items (max 3 or 4)
4.1 Clear goals
4.2 Bugs vs New Features
5. Date/Time of next weekly meeting
Tues 31st October 2006, 11am GMT2 Participants
Participating: MS- (Michael), mhrd (Matt), c-ryan (Ryan)
Also attending: Uraeus tav neuraxon773 Activity Reports
Michael:
DONE - presentation internally
liased with LLUP people
wrote basic non-trial protocol demo (markov chainer)
updated visualiserTODO - No commitment to Kamaelia work this week
due to overload, but will probably work on getting website
sortedBLOCKED - Very blocked BBC Meetings
preparing presentations
other project work (several days blockage)Also blocked next week:
more presentations on BBC & Open source needing updating
giving at Linux WorldMatt:
DONE - RGB <-> YUV components
mpeg4yuv parser/outputter component
fixed dirac bindings for dirac 0.6.0
video content reframer for internal (BBC) project
implement wake on message removal from outboxes (bugfix)
investigated into BBC multicast stream bitrate fluctuations
(for RTP work)TODO - finish, test and check-in wake-on-message-removal
make more pymedia wrappers (video)
investigate mpeg transport stream remultiplexing issues
update kamaelia changelog wrt. recent fixes
need to remove default queue size limits on threadedcomponent
more website updates
continue with DVB components
review/revisit experimental Timer component
Improve box destruction to handle when a box is still linkedRyan:
BLOCKED - degree :)
Matt congratulated Michael on an excellent presentation yesterday. He
reckoned
it was extremely well targetted at the audience.4. Discussion items (max 3 or 4)
4.1 Clear goals
Michael explained that we, as a project, suffered from problems with
getting
clear direction from outside the team, and that’s caused a lack of clarity
of
goals (at least in communicating them).Matt added that we’re left to guess where we should prioritise our
resources .However it’s been very clear that if we provide something clear for people
to
latch onto, they can see “ooh, that’s cool”.This also related to how we express this on the project website,
especially as
the original project goals are now public (that of building a streaming
server).We’ve fleshed out the system in other areas and looked for other internal
(bbc)
projects to work on … which lead to the DVB and Macro work.The new goal devised 2-3 months agao was to talk about the underlying
technology
aims and have projects spin off from that. Specifically:“”"
To do for software systems what IKEA has done for furniture, and
spreadsheets
have done for traditional business, but for the BBC’s business of
storytelling and distribution
“”"Michael suggested this should be adopted for the website, and canvassed for
people’s opinions. He explained that having a big main goal like this, to
underpin whatever the current work is, is often a useful thing for open
source
projects.Matt and Ryan were broadly happy with this. Matt suggested that the BBC
emphasis
might at first glance give an exlusionary or closed impression. Michael
agreed,
and explained that he’d be removing “BBC” and making it clearer what that
means
in practical terms.4.2 Bugs vs New Features
Michael wanted to follow up on a discussion that occurred yesterday on
#kamaelia
regarding getting producer components to unpause when a consumer takes a
message
from an inbox.Michael noted that this is a bugfix (restoring a feature originally in
Axon 1.0)
but that yesterday’s discussion was useful as it covered possible “new
features”***Ryan left the channel***
Matt agreed, and noted, for reference that the implementation he was doing
would
wake all outbox owners whenever a message is taken from the inbox. This is
slightly different to the behaviour of Axon 1.0. But the important thing
is that
it will always wake up components in the situations Axon 1.0 would wake
them.Michael expressed support for this position.
Matt reckoned that implementing an exact match to Axon 1.0’s semantics
looked
likely to actually be rather difficult and/or messy.Michael confirmed for Matt that Axon 1.0 would wake components
irrespective of
whether the linkage was synchronous (size limited) or not.Matt expressed the hope that he’d finish debugging it today and would then
check it in as a branch, and issue an email explaining it.5. Date/Time of next weekly meeting
Proposed Tues 31st October 2006, 11am GMTMichael noted that he’d have very little time to actually work on Kamaelia
during next week, so it would not be worth having a meeting during next
week.He also noted it would be halloween!
====== END OF WEEKLY IRC KAMAELIA MEETING, 20061020 ======
–
| Matt Hammond
|
| [anything you like within reason] ‘at’ matthammond ‘dot’ org
What’s old is new and what’s new is old, and with this phrase in mind,
Regardless of how you feel about meetings in general, within reason, they are a necessary evil if you want to keep a project on task and moving forward. As such, the old school meetings will most definitely be a part of our new school ways without a doubt. Tasks, reports, meeting notes, and so forth are obviously still going to play a necessary role in each of our new school ways of doing things.
Of course, I doubt much that anybody reading this is surprised by this, though I have no idea how many of you have been involved with the development of an OSS project, most of which are done through decentralized means. If you have, then maybe you will find yourself just as surprised as I was to see something like the above for an OSS development project.
Maybe its just me, but setting aside IRC as a point of instant collaboration, and email lists as a support of general communication, this is the first time I have actually seen an OSS project take the time to have an actual weekly meeting, with follow-up minutes to boot, which tells me one thing,
Mark my words: For more reasons than just the fact that the Kamaelia project ROCKS!, this is a project that is going to be one of the most successful OSS projects in the history of OSS projects.
Ever!
Expect to both hear and see more in regards to the Kamaelia project both here on this blog, as well as all over the rest of blogosphere and other sources of media as well. If I were you, I would think about getting involved with this project. Like NOW! ;)
*BIG THINGS*, baby… *BIG THINGS*!

Since you posted about Kamaelia, I've been busily reading up and I have to say I'm impressed. Last night I was chatting away in the room before the meeting trying to compile the thing to play with, when the meeting started. I wondered what the heck was going on as all these project notes scrolled past. The guys are certainly organised - and from what I've read of the Axon code thus far - it's well documented that even a novice programmer (me) can understand it.
Hey Craig,
Very cool! Yeah, this is an impressive effort to say the least!