Newsgroups & Discussions

David B. Held dheld at codelogicconsulting.com
Sat Mar 31 11:54:33 PDT 2007


Alexander Panek wrote:
> [...]
> It's of no interest for the D community to split it up into two parties. 
>  The community how I know it is always helpful, sometimes to be taken 
> with a pinch of salt, but I've never seen such discussions full of salt 
> here, since I've started reading and participating.
> [...]

Hear, hear...if one regards the D community as a meta-organism trying to 
make its way in the world competing for attention with the communities 
built around other languages, one might rightfully say that it currently 
suffers from an autoimmune disorder.  Diabetes, multiple sclerosis, and 
fibromyalgia kill their sufferers slowly, and debilitate them in the 
meanwhile.

If we want our "organism" to become big and strong, then it is 
inevitable that it will suffer from some growing pains.  What we have to 
recognize is that while this community is built around technical common 
ground, it is still composed of human beings with feelings and 
attitudes.  And what humans want more than anything else, is respect. 
We want it so much we will kill for it.  Let's not kill each other 
trying to earn respect.  That can only end in a Pyhrric victory.  I find 
that respect is best earned when it is given.

On top of this is the problem of communication.  Communication is a very 
tricky business that we take for granted, but in fact, it is the most 
amazing thing that we do.  Communication is nothing less than mind 
control.  That's a pretty crazy idea, if you stop and think about it for 
a minute.  But in reality, communication is the attempt to impose a 
particular thought pattern in the minds of other individuals. 
Surprisingly enough, it works pretty well most of the time.  Many of us 
do indeed possess enough shared mutable state to make this system work. 
  Unfortunately, this process can end in deadlock and livelock, priority 
inversion and starvation.  A good, cheap solution is retry with 
exponential backoff.

People coming from different backgrounds are going to communicate 
differently, because they have a different set of shared assumptions. 
This is both good and bad.  It's good because different backgrounds 
bring a diversity of knowledge, just like you don't want your genetic 
pool to get too inbred.  It's bad because the disconnect in core values 
and meanings can cause misunderstandings in communication.  Parochialism 
is xenophobia is racism.  We all have it, we all do it.  My way is the 
best way.  Unfortunately, that's very rarely true.

In reality, coexistence comes from compromise.  At the root of most 
disagreements lay a difference in values.  The reason that religions are 
insanely successful meta-organisms is that they give their members a set 
of core values that they can agree on independently of their other 
values.  People in any given religion come from all across the spectrum, 
and any two of them will disagree on just as many things as any two 
people picked randomly from the entire population.  But what makes these 
two people different is that they have a set of values that they share 
that often trumps their differences in such a way that they can find 
common ground.  That's a pretty powerful ability, and not something to 
be taken lightly.

I conclude that we need a Pope of D.  Just kidding.  We already have 
one, we just need to get him a pointy hat.  More seriously, if D is 
going to advance from tribalism to civilized culture, we need to find a 
set of unifying principles that define the D community, and use those to 
smooth over the differences that arise naturally from diverse backgrounds.

But more immediately, we need to have a Good Friday peace accord, where 
everyone is granted a summary pardon, and we try to start fresh with the 
aim of striving for common understanding and mutual respect.  I think it 
is equally important to recognize the work that has been done in the D 
community thus far, and the work that is yet to be done to make D a 
world-class programming platform.  Every programmer brings with him/her 
a set of values about how things ought to be done and what's important. 
  We can't deny that each of us has these values, nor can we just turn 
them off at the flip of a switch.  However, through a process of 
incremental refinement (like simulated annealing), we can come to a 
mutual understanding that respects all the values involved.  The 
high-temperature phase is done, and now we need to move into the 
low-temp cooling phase to find the optimum.

I suggest we leave the stdio thread as a memorial to the blood shed in 
the name of D.  We can still talk about stdio in a new thread, but let's 
try to do so in a more conciliatory and respectful tone all around. 
Let's see if we can make a fresh start and get big without falling apart 
in the process.  Now I'm going to take my soapbox and go home...

Dave



More information about the Digitalmars-d mailing list