14 Mar 2007 lkcl   » (Master)

faw: 50 minutes a loonnng time on a video :) [does anyone who's seen it have a summary? is there a transcript? does _google_ do transcripts of videos - _that_ would be useful...]

there are certain rules required to ensure successful projects (that are nothing to do with "technical"):

1) REWARD people for good behaviour

2) PUNISH people for detrimental behaviour

3) DEFINE what good and bad behaviour is, well in advance.

these are _basic_ rules to do with group management, and a number of free software projects assume that everyone will "get along nicely".

the ubuntu development ethics is possibly the best i've yet encountered: it definitely defines 3) in a very good way, which is almost nothing to do with "technical" it's about people.

what happened to me with samba was a complete nightmare, which a lot of people have difficulty believing or accepting.

not only was there no definition of good or bad behaviour spelled out (therefore nothing to which anyone could point or adhere), but also there was no punishment of the so-called samba team leaders for detrimental behaviour (and they were so nasty towards me that people have difficulty believing that they could be capable of it, they are so "respected" by others), and on top of THAT, there was no reward (remember the linux IPOs? i got NOTHING, despite being in america at the time and was therefore eligible to receive shares) i got nothing from the so-called samba team leaders and nothing from anyone or any linux company benefitting greatly from my work.

however.

in addition to these simple rules 1,2,3, there is some basic communications infrastructure rules that can enormously help a group. these rules are IMPORTANT TO FOLLOW, as they stop information from being lost:

1) DO NOT use mailing lists as the primary communications method. in fact, DO NOT use email AT ALL as the primary communications method. ONLY use email as a one-way 'notification' mechanism to people to check OTHER methods to look at information, on-line.

2) subdivide everything into announce-public, developer-announce-private, developer-private and user-public.

3) use forums - subdivide according to 2) above and make sure that email-notification is switched on by default

4) use wikis - again, subdivide according to 2) and if possible, _again_ make email-notifications switched on by default.

5) provide IRC channels, again, subdivide according to 2), make sure that there is a channel-bot that logs everything again, keeping the logs subdivided according to 2)

6) make sure that there are search mechanisms, again, subdivided according to 2) on everything.

7) make sure that there's a good bugtracker: again, subdivide according to 2), and make sure that email notification is switched on by default.

8) i'll say it again: ON ABSOLUTELY NO ACCOUNT should you use email as the primary communications mechanism. DO NOT, i repeat, DO NOT do it.

email as a communications mechanism is a complete failure.

only people who have extremely good memories and are not overloaded with work or spam are capable of successfully utilising email for communications of complex issues.

and software development rates in my book as possibly the most complex undertaking that humanity is currently capable of.

hm. that looks like another advogato article, to me :)

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!