🧵- CppCon & loss of trust.

Context w/ *critical* CW:


Read the position and the links, most notably: patricia.no/2022/03/08/pro…

Note that the docs from #include <C++> weren't finalized.

This is my personal and individual perspective and experience.

1/
This is not about an individual (do *not* name names here).

It really is not.

This is about working to keep the C++ community safe, inclusive, and welcoming.

And it is about doing so with transparency and integrity.

2/
I was on the Standard C++ Foundation board until 2021-09-22 and helped found CppCon.

I tried to help handle this, but ultimately failed, made mistakes, and for that I'm sorry:
- I suggested that the CoC group should handle this (my only good idea).
...

3/
...
- Tried to help the board handle it instead.
- Helped form the initial (flawed I now think) restrictions.
- Couldn't make a short-notice meeting, it lifted some restrictions w/o me.
- Objected to being excluded.
- Asked "At what point have I resigned?" ... & found out.

4/
I then tried to support the leaders in #include <C++> engaging w/ the Foundation. I have huge respect for their efforts. I think they did a better job than I did.

The result followed a sad pattern: not upholding CppCon's CoC with integrity or operating with transparency.

5/
This is a pattern that lost my trust in both CppCon and the Foundation's leadership.

Trust can't be repaired easily or quickly. It takes actions & time. But the community doesn't deserve to wait - they need trusted leadership now.

6/
This statement isn't helping much:
cppcon.org/announcing-cpp…

- Doesn't address the process failings, and the lack of transparency.
- Vague, which doesn't build trust or show transparency.
- Misleading about the Sept 17 vote, which doesn't build trust or show integrity.

7/
It will be hard for leadership to step back, admit the breach of trust, and let the community heal away from them.

But this isn't about an individual, any individual. That includes the leadership of CppCon and the Foundation.

This is about the community and what it needs.

8/
It is important that this is public and the community is aware.

I hope the community will align around a published response from #include <C++> - they are one of the largest, most trusted, and most inclusive part of the C++ community and can IMO best show the path forward.

9/9

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Chandler Carruth

Chandler Carruth Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @chandlerc1024

Jun 12, 2020
Was actually in the process of renaming a `master` branch. Wrote up rationale:
- even if I think it's "not that bad", make others welcome
- lazy me has simpler rule -> never type `master`
- use a name w/ meaning, yay!

NOPE NOPE NOPE, exactly that bad.
mail.gnome.org/archives/deskt…
I wish I were even surprised that the whole rationale for why "this isn't bad and you shouldn't be offended" is actually....

*COMPLETELY MADE UP NONSENSE* being used to post-hoc justify the garbage of racists people who haven't dealt w/ their underlying biases.
When I saw this oh-so-convenient line of reasoning, of course sandwiched by vitriol at the "SJW" and "PC" attack on "simple" (captain subtext says "racist") phrases, I tried to research and find where the racist history lurked...

Sadly I failed.

And whatever -- it was still bad
Read 10 tweets
Mar 28, 2020
Super important point is easily missed here: changing how users learn & experience the PL.

An interesting example w/ C++: at G we found we *do* need near-wizard mentoring to train people up on C++ (esp. the way we use it).

How do we scale it up systematically?

Readability!

1/
The idea is to add an official apprenticeship / mentoring / training phase when onboarding people to the language.

Until you get "readability" in the lang, your code gets extra round of expert review.

To get "readability" we systematically teach and train w/ experts.

2/
Our first (several) attempts at this *still* didn't scale, and sometimes didn't even work.

But the key was to have it be systematic and iterate on it to *get* it to scale.

We're *still* iterating and improving it!

But it's just part of training up on the PL, not reactive.

3/
Read 4 tweets
Mar 27, 2020
Providing programming language platforms to a large org & lots of users forced me to change how I think about and discuss PLs.

Programmers will say "X is hard", "I don't like Y", "A is good", or "I love it when B" about a PL.

* They cannot be wrong.
* You cannot argue.

🤯

1/
These are your users and your customers. And they are telling you how *they* view their experience with the language.

They can't be wrong. It's literally their perspective they are reporting. Finally, "the customer is never wrong" makes sense to me.

You *have* to listen.

2/
And you can't just argue with them!

Maybe you have a *brilliant*, wizard-level explanation. Suddenly, everything makes sense to them.

Sounds great, doesn't matter.

If users have to receive your brilliance before understanding a PL, you have failed.

3/
Read 9 tweets
Mar 24, 2020
So I wrote up (with a *huge* amount of help from colleagues both at G and elsewhere) what I think the goals and priorities for C++ should be:
wg21.link/p2137

Finally published. I'm not sure the committee agrees, but it is definitely what I and my users need.

Highlights:
1) Performance-critical software

*THE* distinguishing feature of C++ is prioritizing performance.

However, paper points out some surprising aspects: control & predictability are often neglected aspects here.
2) Both software and language evolution

"Change is the essential progress of all existence." -- Spock.

Wait, you're still debating? ;]

Seriously, things which do not change are replaced. C++ must enable both software and itself to change and grow.
Read 9 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(