[Asterisk-Dev] 'tonezone' in chan_zap.c
Brian Capouch
brianc at palaver.net
Tue Mar 1 16:36:29 MST 2005
Kevin P. Fleming wrote:
> Preston Garrison wrote:
>
>> I don't think it would hurt to have less of an attitude with these
>> type of things. Alot of really good developers don't have alot of
>> time to poor through endless tens of thousands of lines of code to
>> find out the answer to a simple question. I think asterisk is missing
>> out on alot of
>
>
> "poor (sic) through endless tens of thousands of lines of code"? Give us
> a break, please. Noone suggested that the poster needed to read and
> understand all of Asterisk and Zaptel, but given that he had a specific
> question about a configuration option, do you really think it would take
> more than a 5-second 'grep' to find the code related that option?
>
Hey Kevin, noone (sic) should mock people for the typos in their emails,
huh? We all get in a hury sometimes ;-)
> In fact, a simple 'grep' for 'tonezone' shows enough hits for just about
> anyone to figure out what's intended for.
Yep. And then once the grepper pulls up the files, he can use the
voluminous comments in the code itself then, to penetrate the logic of
the half-dozen people who have separately hacked the code over time.
I am doing a class about Asterisk this semester at the little college
where I teach, and one of the first things I told my students was,
"Don't post to the Asterisk lists!! Ever!!"
The truth of the matter is that the guru types on the Asterisk lists are
far quicker to act like dicks to those who they deem beneath them than
on any other OS list I subscribe to. Whenever someone calls them out,
they immediately cop this, "We're not being dicks; we're just too busy
to screw with newbies" answer.
On the -users list I have come to appreciate Steven's helpfulness, even
though it comes with the price of his occasional snippishness.
But on -dev, the rule of the day is that questions *about* the code are
discouraged, even though this product is arguably the
least-well-documented code I have ever tried to plow through.
In my own case, I've been reading code for weeks, trying to figure out
just how to use (and extend) the Realtime engine. The Wiki has some
documentation, but it is cursory, self-contradictory, and in general of
very limited use.
The code? Well, there's not a shred of documentation anywhere
internally, and to make the chase interesting, there are data structures
sprinkled about that define structures of pointers to functions,
indirect calls to those functions buried uncommented inside other
functions, and then for good measure a whole function defined as a macro
(REALTIME_COMMON). To that add fragments of functionality scattered
throughout the pbx code, the configuration parser, the various channels,
and the resources directory, and the thought of someone just reading it
and coming to a good understanding becomes vanishingly small.
That sort of thing is withstandable when you can fire off a mail to the
developer and ask for some quick direction. Oftentimes a couple of
sentences from the person who wrote the code can be enough to jump-start
what is otherwise a futile exercise in reading someone else's mind.
But not this bunch. We are kept at bay by watching as the important
people flame anyone on the outside who dares to ask for a bit of direction.
I am not so much angry about this as disheartened. IMO, many people
could be made into contributing members of the developer
community--something I hope that everyone agrees is needed--but for
their lack of enough of a masochistic bent to actually dare to ask for
some background on this list and then be flamed to a crisp.
I'll shoulder on, and I'm sure the other posters here today will too,
because the project is bigger and more important than any of our
respective egos.
But dealing with all of this makes me pine for the sort of spirit I
commonly see on other lists I'm on, where the developers are quick to
help, and encouraging to those who are at a lesser stage of experience
with the code than they are. They know in the end their patience will
help make the product better.
B.
More information about the asterisk-dev
mailing list