Boost logo

Boost :

Subject: Re: [boost] C++ announcements coming tomorrow
From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2012-11-05 08:42:17

On 11/5/2012 12:26 AM, Nevin Liber wrote:
> On 4 November 2012 14:42, Paul Mensonides <pmenso57_at_[hidden]> wrote:
>> Stephan T. Lavavej. He's a standard library guy at MS. He's around here
>> from time to time, but also makes C++-related videos for MS's Channel 9 PDM
>> (propaganda distribution mechanism).
> So by propaganda you mean making high quality (both in material and
> production values) videos freely available to the C++ community? Kudos to
> Microsoft for that! Bring it on!

I'm sorry, but most of the content on C9 is *blantantly* propaganda.
Moreso, the general vibe I get from it is that the entire intent of C9
is marketing driven, not community outreach driven. Now, I did say
most, not all, content. STL's videos are good. Some conference talks
are okay--such as Bjarne's recent one. The content of those do not come
off as propaganda.

> As I see it, Herb is trying to bring together the C++ community, and
> unfortunately, you seem to be trying to drive a wedge into it.

No, I'm not. The argument I'm making, perhaps poorly, is that there is
one thing more than any other that is needed for C++: for C++ users to
be able to target the standard rather than compilers. So the dependency
graph is

compiler -> standard
user -> standard

rather than

compiler -> standard
user -> compiler

The reason the latter is bad and leads to a lack of portable libraries
is that it isn't just one user with one compiler. Instead it is more
like millions of users and a bunch of compilers. With just two of each,
you currently get:

compiler(1) -> standard
compiler(2) -> standard
user(1) -> { compiler(1) compiler(2) }
user(2) -> { compiler(1) compiler(2) }

to create a stable portable library base.

This grows untenably, especially when one takes into account extension
copying, non-compiler C++ tools, etc.. This gets way worse.

In fact, it is usually more like:

user(1) -> { compiler(1) }
user(2) -> { compiler(2) compiler(3) }
user(3) -> { compiler(1) compiler(4) }

However, it doesn't *have* to because it could be:

{ compiler-or-tool(1...inf) user(1...inf) } -> standard

For that to occur, extensions to the language should be downplayed in
the extreme and only used when absolutely necessary and encapsulated to
the greatest degree possible rather than promoted and contantly
advertised. Also for that to occur, compilers need to correctly
implement C++ in the limit.

> You've made a straw man argument about altruism, even though Herb
> specifically said on Friday that the reason companies are contributing to
> the Standard C++ Foundation is that it makes good business sense for them,
> so I certainly don't see where *anybody*, let alone Herb, is claiming
> companies are sponsoring this out of the goodness of their hearts (if you
> have a counter link, I'd appreciate seeing it).

I don't have any problem with this foundation at all. I don't have a
problem with MS funding it or any of the other companies funding it. At
the same time, I don't yet know exactly what it is supposed to do or how
successful it will be at whatever that is. I.e. my argument has nothing
to do with the foundation or

Instead, it is years and years of MS saying the same thing, but not
doing it, and also years of flat-out saying they *won't* implement some
part of the standard. Sure, they do it for the big marketable features.
  There was no doubt they would implement variadic templates, for
example. What I and many others want to hear from MS is the following,
"We are going to implement all of the C++11 features and implement/fix
all of the C++98 features which haven't been removed by C++11 (export)."
  And then go about actually doing that. I don't care if that takes
five years. I don't care if the preprocessor issues are last on that list.

WRT to propaganda, we have several years of Herb mentioning how we've
dropped the ball on UI innovation suddenly followed by Metro coupled
with a closed-platform app store. We also have several years of
proselytizing that the future is distributed cloud-based computing
followed by Azure. Sorry, when someone that was supposedly going to be
"holding Microsoft accountable," starts constantly bringing up these
types of things right before a big new marketing compaign, the respect
and trust that I had from back in the GotW days deteriorates--so much so
that even when he makes offhand comments about big touch screens I
consider it to be nothing more than planned marketing--similarly for the
near constant "beautiful modern apps." Even if I'm wrong, that is my
perception and the perception of *many*, and if it is actually supposed
to be "bring the community together" *it* is doing the exact
opposite--not me.

In that last announcement talk alone together with the follow-up Q & A
there are numerous "subtle" bits of marketing. The entire general trend
is one of attempting to turn a product (software) into a service. That
is an anti-consumer nickle-and-dime model which is just as anti-consumer
as trying to trick people that can't afford something into making
payments. It is just as anti-consumer as many other related things
occurring in the software industry nowadays--microtransactions being one
of them.

> I see incredibly obvious,
> not hidden agendas. Full disclosure: I work for one of the founding
> members of the Standard C++ Foundation.

Oh, don't worry. I also see incredibly obvious agendas. As I said,
however, I have no problem with the foundation at present. The only
thing about it I believe is questionable is Herb's presence on the board
of directors--and that is because I do not trust Herb. Other than
having met him a few times, I don't know Herb so I can't go off of
personal knowledge of his integrity, and if it was just Herb, I'd give
him the benefit of the doubt. But I won't give MS the benefit of the
doubt given their history. Why, at this point, would it be rational for
*anyone* to take what MS says at face value? I don't know enough about
the others (except Beman and Bjarne which are people that I do
trust--even if I violently disagree with Bjarne about certain things) to
have a say one way or another.

> Even with Beman as one of the directors of the C++ Standard Foundation, you
> still want to encourage us to fear and doubt the effort?

I'm specifically referring to VC++, MS's apparent general marketing
strategy and how that affects VC++, and how MS's resulting behavior WRT
to VC++ is actually harmful to C++ in general. I am not saying that
*every* action that MS takes is harmful, I'm not saying that individual
members of the VC++ team are untalented or unethical, and I am not
saying that the foundation is harmful.

For the latter, time will tell. There are politics and factions to some
degree within committee. I'll reserve judgement until after I've seen
that it doesn't turn into a one-party outlet. Don't get me wrong, I'm
not expecting that, but it could happen.

Paul Mensonides

Boost list run by bdawes at, gregod at, cpdaniel at, john at