Modern C and What We Can Learn From It - Luca Sas [ ACCU 2021 ]
ACCU Conference3 HN recommenders · 2021–2022
130K views · talk · evergreen · Uploaded 2021-04-08
Luca Sas's ACCU 2021 talk on Modern C, a style of C and C-like C++ aligned with data-oriented design. It covers centralized memory management, zero-is-initialization, error handling and API design.
HN recommends it as a good overview of modern C patterns, including in threads about learning C.
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
1:12:27CppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
51:18Lexical Scanning in Go - Rob Pike
GoogleFOSSSydney
1:00:19How To Design A Good API and Why it Matters
Google TechTalks
31:44The Value of Values with Rich Hickey
InfoQ
1:04:04Overwatch Gameplay Architecture and Netcode
GDC Festival of Gaming
3 comments from Hacker News
Yes, that’s a very clean and robust approach. In the “Deferred resource release → Related work” section, one of the links is to a video from the ACCU 2021 conference by Luca Sas titled “Modern C and What We Can Learn From It” that explains modern C techniques, and your one is mentioned at 23′15″: [VIDEO] If you haven’t watched it, I can recommend it.
"Modern C and What We Can Learn From It - Luca Sas [ ACCU 2021 ]" - [VIDEO] "Linux User/Kernel ABI: the realities of how C and C++ programs really talk to the OS - Greg Law" - [LINK]
Modern C by Jens Gustedt is quite good. This video gives a good overview of some modern patterns in C: [VIDEO] I think the best thing you can do is go find a unit testing library you like the look of, maybe some tools for address/leak sanitization, and spend a good amount of time learning CMake and creating a build/project workflow you're happy with. Coming from Rust you've got great tooling and good guardrails in place to keep you on the happy path, I think getting into that groove early in C where you can run experiments and break things in a sane environment is important.