CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++”

CppCon · 175K views · 2016 · 1:36:27

Open on YouTube

C, C++, Rust, Go & systems languagesSoftware practice, open source & careerstalk

Why Hacker News recommends it

Recommended in C versus C++ and embedded threads as the expert view on adoption and persuasion.

What it is

Dan Saks's CppCon 2016 talk on why C programmers resist C++ and how to talk to them about it. He argues that persuasion rarely works by arguing and examines the culture gap between the two communities.

Recommended by 2 HN commenters across 3 different months, 2017 to 2025.

What Hacker News said

Strong rec drummer · 2020-05 · on “Modern C++ gamedev: thoughts and misconceptions”

The mentioned cppcon presentation by Dan Saks is awesome. Highly recommend watching even if you are not interested in C or C++ : [this video]

Recommends pjmlp · 2018-02 · on “C++ and the Culture of Complexity (2013)”

I mean the embedded systems where Assembly and C89 still rule, and there is very hard to change, because the problem of adopting anything else is cultural. Basically, while there are projects being done in C++, and many companies are finally migrating from C to C++, the large majority is sticking with C. If you prefer to listen to someone actually relevant in the C++ embedded community, here is what Dan Saks has to say about it. [this video] [LINK]

Recommends pjmlp · 2018-03 · on “Should you Rust in embedded yet?”

So, I will let one of the renowned experts speak instead. CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++” [this video] Embedded Development with Dan Saks [LINK] Regarding Java vs C++, yes the enterprise world has adopted Java, however as someone doing consulting across Java, .NET and C++, I am really seeing it coming back since ANSI C++ has picked up steam again. I see it in projects related to IoT, AI, VR, big data,.... They are all polyglot projects with C++ plus something else, not C plus something else.

Cites rjzzleep · 2017-09 · on “Comparing C and C++ usage and performance with a real world project”

according to dan saks, who apparently to some people is famous c++ is faster than c (well in the test setup he describes below) [LINK] Language Design Implementation Relative Performance either any inline 1 (fastest) C++ polystate non-inline 1.56 x fastest C++ bundled non-inline 1.65 x fastest C polystate non-inline 1.70 x fastest C bundled non-inline 1.79 x fastest C++ unbundled non-inline 1.82 x fastest C unbundled non-inline 1.95 x fastest He furthermore argued that the biggest mistakes C++ developers did to kill the adoption of C++ for C programmers was to diverge from the previous line of "C++ is a better C" to "if you're using C++ as a better C you're doing it wrong" [this video] (I have no

Cites Inityx · 2018-03 · on “Should you Rust in embedded yet?”

C is king because the industry is currently dominated by people who have been doing this since before C++ was a thing. Additionally, most of these people are primarily electrical engineers, and don't have as strong of a background in computer science. They've been using C for decades and it does everything they want, why would they take the time to learn the boundless complexity introduced by a language that offers them (what they perceive to be) very little? Talking to long-time C programmers about C++ is actually surprisingly difficult: [this video]

Cites pjmlp · 2018-09 · on “What can C++ do for embedded systems developers? [video]”

You can ask Dan Saks about it. CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++” [this video] Embedded Development with Dan Saks [LINK] When I started coding in C++ (Turbo C++), 640 KB were just fine, I could even make use of a full TUI framework (Turbo Vision). Hence my point of view about PIC class processors with single digit KB, being eventually the only target not possible to use with C++, unless one wants to suffer a bit with linker scripts.

Cites pjmlp · 2018-10 · on “Rust can be difficult to learn and frustrating, but it's also very exciting”

Sure it is for political reasons when even C99 is seen as too modern, and many are unwilling to let go of C89 and Assembly even if the OEM toolchain supports modern C. And for another point of view of someone more relevant than my insignificant self, CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++” [this video] "Embedded Development with Dan Saks" [LINK] Thankfully there are industry certification standards like AUTOSAR, which now require C++, so those devs can choose to keep grasping to C and switch industry or learn more modern languages.

Cites pjmlp · 2021-04 · on “Improve type generic programming”

Because it is a culture pretty much anti-C++, to the point that it is a common theme in C++ conferences how to succeed selling C++ to those communities, for example, "CppCon 2016: Dan Saks “extern c: Talking to C Programmers about C++” [this video]