[cpp-threads] C++ committee meeting in Mont Tremblant

Herb Sutter hsutter at microsoft.com
Tue Oct 18 15:40:57 BST 2005


Thanks Nick,

> "Herb Sutter" <hsutter at microsoft.com> wrote:
> >
> > Please forgive me for being uncharacteristically frank, but I think
it's
> > important to say this forthrightly:
> 
> Well, in that case, please permit me the same liberty.

Sure!

> > These and similar statements are quite out of touch, and demonstrate
a
> > profound lack of understanding of the committee and its
participants,
> > and of how to participate constructively as a part of a group.
> 
> And I am afraid that yours show a profound lack of understanding of
> the current disastrous situation in what passes for software
engineering.

Really? I'm well aware of the problems and struggle with them daily. The
tone in the original message that I was responding to was that it (and
some previous emails like it) seemed to be saying that 'the committee is
some churlish group unwilling to see the light unless it's forced on
them, we're the experts and we should tell them what to do from a
distance, and they should just do it.'

Maybe that wasn't intended, but that's the tone I perceived and I object
to that on all counts. First, not all members of the committee are babes
in the woods on the topic of concurrency (though many are, as is true of
any domain in a heterogeneous group). Second, the committee is not
recalcitrant or churlish, but very open and willing, nay eager, for
expert participation. Third, work doesn't get done by someone sending in
papers; it only gets done with people showing up and collaborating, and
handwringing-at-a-distance of the form "the committee isn't doing what I
want it to do" is unhelpful.

> > The committee, like any group, have rightly ignored people who may
have
> > had good ideas but who have only sniped from the sidelines and
weren't
> > willing to put forth the time and effort to show up and participate
like
> > everyone else.
> 
> That attitude is one of the primary reasons that current standards
> and pseudo-standards are so appalling.  It means that only people with
> an axe to grind get much of a say, and militates against the
generalists
> who could help with ensuring that the various standards interoperate.

No, that wasn't my point. (In practice that's quite rare in ISO C++ --
we don't put up much with axe-grinders.)

My point was that if the experts are unwilling to participate, nothing
_can_ happen -- and to try to encourage experts _to_ participate so
something good can happen, while still setting expectations for what
participation involves so people know what they need to plan for.


> > The solution is simple: If it's worth it, then be willing to invest
the
> > time to personally attend international meetings and propose
solutions,
> > accept feedback and refine the proposals, and so on over a couple of
> > years or more (all with no guarantee that anything will be adopted
even
> > after it has been refined in line with committee feedback, but
that's a
> > fair bar because those same rules apply to everyone). If no one is
> > willing to personally invest the time it takes, usually over several
> > meetings == years, to propose and refine and repropose and do the
work
> > to build consensus, which _everyone_ has to do, then the feature
frankly
> > can't be that important.
> 
> Don't be silly.  I am a generalist, and have actual implementation,
> support, and usage experience in many of the interrelated areas that
> are important here.  Say, perhaps 20 such major areas.
> 
> If I were to stop doing my job, I could get involved with 5-10 such
> areas to the depth that you say, but they are all important and a
> typical application requires half a dozen to be solved to take much
> advantage of any.  Such combinations don't form nice non-overlapping
> subsets, of course, and I hit a good dozen in the course of my daily
> work :-(
> 
> If I were to be a specialist, I would be of no more use than all of
> the other specialists around, many of whom are demonstrably clueless
> about how their proposal would fit into the IT zoo - let alone on what
> consequences it would have on others areas!

Experience in how the pieces fit together is essential, and nobody is
suggesting someone be a narrow specialist. What I am suggesting is that,
if it's important, someone who knows what to do and cares about ISO C++
doing the right thing needs to take on a part-time project -- just as we
all take on projects. (There are lots of people and companies working on
this -- if nobody in the world cares enough to participate, then either
they believe the area is not important to standardize, or that ISO C++
isn't important to them.) And I am trying to be open about what length
of commitment that requires to properly follow through, and what it
takes to work in a consensus group.

This group's work on the memory model is a great example -- it's not
taking over anybody's life (I think?), not even Hans' who has been
attending meetings. But if people like you weren't doing it, it probably
wouldn't get done, and then it wouldn't be useful to feel bad about the
lack of participation. We're very very happy that you're doing it and
participating! We absolutely welcome more of the same, which would be a
positive contribution. That's what I was pointedly trying to encourage.

Herb




More information about the cpp-threads mailing list