This thread appears to have forked into two distinct discussions. Development and Management. They MAY be related, but different points are being made in both parts that are not neccessarily connected.
I'm sorry to have to say it, but it's YOU guys need a reality check here.
In the opening post, Thom, you quoted 3 figures. 5 developers, 3 million lines of code, 112000 registered users.
So, some maths here. That's a rough responsibility of 600000 lines of code each. That's a hell of a lot and why you guys are feeling the way you do. More importantly, it also means that only one out of every 22400 users takes up development seriously. Each developer has a user base the size of a large town, all asking for stuff and making demands
Burn-out is inevitable!
Ask yourselves why this is? How many people actually have the time to go and dig around to find this stuff themselves? How many people have looked at the project, thought about getting involved and then given up due to the sheer size of it? There are other community projects out there which are far less complex (or dare I say exciting), yet attract large teams of developers. Why is this? In some cases, those projects have gone on to become the de facto industry standards with people like Micro$oft (even though they won't admit it) playing catch-up. Hell, the whole internet was practically built on the daddy of all community projects, GNU-Linux!!! Yes, there is commercial involvement NOW, but that hasn't always been the case.
Put it another way, if you were visiting a city for the first time, wouldn't you ask people you knew for advice on where to stay? What areas to avoid? Where the good places are to eat? Etc.? SOMEONE had to be first and find out the hard way, but whyt should EVERYONE experience the pain?
Guys, you are seriously talented programmenrs and are obviously committed body and soul to this project. We (and at this stage I'm one of the 112000) have all expressed our grattitude for that, but this discussion (and project) needs to move FORWARD. YOU are the ones who started this thread. Until then, we possibly didn't realise how few of you there are or how much time you actually spend on the project. I honestly believe that if you made it a little easier to join in, you would see that number 5 go up. There MUST be more people amongst the 112000 who have skills that can be of value to the project, just not the time (or inclination) to fight their way in.
Ok, you asked for SPECIFIC questions, so I'll ask some.
- The developer's guide. Does it relate to 810, 710 earlier versions or all of the above? Like most of the Wiki, it is hard to tell what's relevant and what's now outdated.
- Which sub-system would you recommend as the best one to study to get a feel for how DCE router is used?
- What network protocol is used by DCE router to communicate with remote devices?
- Does each device have it's own DCE router (thet communicates between local subsystems and other routers) or is there only the one on the core that everyone contacts?
IF I get involved, I will no doubt ask more, but that will do as a start
Some SIMPLE examples of the use of some of the classes would help explain the system. Say, I want to have a simple braodcast alert system. I'm guessing this would be (fairly) easy to do, but I want to add a button to the Orbiter which, when pressed causes a large pop-up on all MDs and other orbiters saying "Dinner's Ready". A useful (if rather trivial) addition for a lot of houses (I have teenagers who somehow manage to not hear their mother shouting them when food is on the table). If (one of) you guys could take the time to write this, but more importantly thoroughly document the whole process, we would be able to get in through the development door. I'm guessing (please confirm or otherwise) that you would first need to decide on the high-level messages requiring sending. Orobiter code would need modifying to create the button and send that message. A plug-in would also be needed to recieve the message and put up the alert.
If (one of) you guys could take this and step by step document (with coding examples) how to start withj a blank piece of paper and end up with an addition committed to the code-base, then I for one would be joining you in committing serious time. If none of you can find the time to do this, then I'm prepared to hack around until I manage it (or give up) in which case I'll write the damned thing myself
There seems to me to be a mentality that the pain of learning the product is a neccessary rite of passage. YOU had to do it, so WHY shouldn't WE? It doesn't need to be that way guys.
I know you mean well, and I'm no expert, but a management expert coming along and telling us we need more management? Hummm. Bit like getting a builder in who tells me I need a load of work doing to my house that I wasn't aware of. Maybe I'm just a skeptic. I don't believe that the project needs more people managers at all. Process managers maybe - and I don't mean project managers. We need people to take ownership and then DO, not orgainise others to do. (This is what I understand Thom means in a lot of his responses to people who want things, but aren't prepared or able to figure them out for themselves and so end up talking about it a lot.) I don't have the skills to take ownership of documenting the deployment process - I don't want to point the finger, but it seems to me that Andrew, you have a lot of experience in this area. Care to take up the challenge? I've already indicated that if I manage to get my head around the process, I'll document the development of a new plug-in. If everyone who has these skills could do this (and make it easy to find) then we won't need managers breathing down our necks!
Or maybe I'm just deluded and should give up.