cppcon
31:19CppCon 2016: Nicholas Ormrod “The strange details of std::string at Facebook"
122K views • 10 years ago
CppCon
Nicholas Ormrod's CppCon 2016 talk on how Facebook optimizes std::string with its open-source replacement fbstring. It covers storage layout tradeoffs, small string optimization and memory allocation behavior.
59:31CppCon 2014: Zaika Antoun "Microsoft w/ C++ to Deliver Office Across Different Platforms, Part I"
21K views • 12 years ago
CppCon
A CppCon 2014 talk from Microsoft engineers on using portable single-source C++ to deliver Office across iOS, Android, Windows and Mac. It covers architectures, techniques and lessons from real cross-platform projects.
54:48CppCon 2018: Hana Dusíková “Compile Time Regular Expressions”
14K views • 8 years ago
CppCon
Hana Dusikova's CppCon 2018 talk presenting a C++ library that builds regular expressions from compile-time strings, using a C++20 feature. It avoids runtime parsing cost and covers implementation details, problems she hit, and benchmarks.
55:49CppCon 2016: Chandler Carruth “High Performance Code 201: Hybrid Data Structures"
119K views • 10 years ago
CppCon
Chandler Carruth's CppCon 2016 talk on designing hybrid data structures for performance. He covers cache locality, working-set size and allocation overhead, and why standard C++ containers fall short.
59:58CppCon 2018: Nicolai Josuttis “The Nightmare of Initialization in C++”
79K views • 8 years ago
CppCon
Nicolai Josuttis's CppCon 2018 talk walks through the many forms of initialization in C++, including uniform initialization, and how their rules and effects differ. He argues the situation is confusing enough that nobody can say what to teach beginners.
52:01CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”
158K views • 9 years ago
CppCon
Louis Brandy presents the most common and infamous recurring C++ bugs seen in Facebook's huge codebase, including shared_ptr data races and operator[] pitfalls. He explains the surprising complexity behind seemingly simple code.
59:53CppCon 2019: Chandler Carruth “There Are No Zero-cost Abstractions”
147K views • 7 years ago
CppCon
Chandler Carruth argues in a CppCon 2019 talk that C++ has no truly zero-cost abstractions. Using examples like unique_ptr, ABI constraints and compile-time costs, he shows that abstractions cost runtime, compile time or human effort.
57:39CppCon 2016: Chandler Carruth “Garbage In, Garbage Out: Arguing about Undefined Behavior..."
94K views • 10 years ago
CppCon
Chandler Carruth's CppCon 2016 talk tries to defuse the heated debate over undefined behavior in C and C++. He explains from the compiler writer's perspective why UB exists and how it enables optimization.
56:52CppCon 2014: Zaika Antoun "Microsoft w/ C++ to Deliver Office Across Different Platforms, Part II"
7K views • 12 years ago
CppCon
A CppCon 2014 talk by Microsoft engineers on how Office delivers a single-source C++ codebase across iOS, Android, Windows and Mac. It covers architectures, techniques and lessons from shipping cross-platform products.
36:10CppCon 2019: Emery Berger “Mesh: Automatically Compacting Your C++ Application's Memory”
15K views • 7 years ago
CppCon
Emery Berger's CppCon 2019 talk introducing Mesh, a drop-in malloc replacement that compacts memory in unmodified C and C++ programs. It tackles fragmentation by merging pages without changing pointers.
55:42CppCon 2019: Matt Godbolt “Path Tracing Three Ways: A Study of C++ Style”
77K views • 7 years ago
CppCon
Matt Godbolt builds a toy path tracer in C++ in three different styles and compares them on clarity, testability, compile time and run-time performance. The talk was given at CppCon 2019.
59:34CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
137K views • 9 years ago
CppCon
Matt Kulukundis explains how Google designed SwissTable, a fast, cache-friendly hash table, step by step from std::unordered_map. The talk covers open addressing, SIMD probing and the tradeoffs of changing a fundamental data structure.
54:01Abseil's Open Source Hashtables: 2 Years In - Matt Kulukundis - CppCon 2019
22K views • 7 years ago
CppCon
Matt Kulukundis reviews two years of Abseil's Swiss table hashtable, covering post-release optimizations, lessons from rolling it out across Google, design choices, and what global monitoring revealed.
51:18Lexical Scanning in Go - Rob Pike
162K views • 15 years ago
GoogleFOSSSydney
Rob Pike shows how the Go text/template lexer is built, using state functions, goroutines and channels. The talk was given at a Google Technology User Group in Sydney in 2011.
Topic match · C, C++, Rust, Go & systems languages
42:30RustConf 2018 - Closing Keynote - Using Rust For Game Development by Catherine West
152K views • 8 years ago
Rust Programming Language
Catherine West's RustConf 2018 closing keynote on building a game in Rust and organizing a large codebase. It builds up an entity component system and generational indices step by step.
Topic match · C, C++, Rust, Go & systems languages
51:27Google I/O 2012 - Go Concurrency Patterns
894K views • 14 years ago
Google for Developers
Rob Pike's Google I/O 2012 talk shows how goroutines and channels solve tricky concurrency problems with simple Go code. It features a playful goroutine demo with gophers passing messages and a search engine example.
Topic match · C, C++, Rust, Go & systems languages
54:14Zig: A programming language designed for robustness, optimality, and clarity – Andrew Kelley
75K views • 8 years ago
Recurse Center
Andrew Kelley, creator of Zig, introduces the language at the Recurse Center's Localhost series in 2018. He covers its goals of robustness, optimality and clarity, C interop, cross-compilation and explicit allocators.
Topic match · C, C++, Rust, Go & systems languages
59:48The Road to Zig 1.0 - Andrew Kelley
168K views • 7 years ago
ChariotSolutions
Zig creator Andrew Kelley justifies why Zig exists and tours its distinctive features, including C interoperability and comptime, along with what people had built and what 1.0 would bring. It was given at Philly ETE 2019.
Topic match · C, C++, Rust, Go & systems languages
23:12dotGo 2015 - Rob Pike - Simplicity is Complicated
172K views • 10 years ago
dotconferences
Rob Pike's dotGo 2015 talk argues that Go only seems simple, and that its simplicity hides real complexity that is part of the design. He explains the thinking behind Go's restraint in features.
Topic match · C, C++, Rust, Go & systems languages
42:54Containers From Scratch • Liz Rice • GOTO 2018
321K views • 8 years ago
GOTO Conferences
Liz Rice live-codes a minimal container runtime in a few lines of Go at GOTO Amsterdam 2018. She explains namespaces, control groups and what a host knows about its containers.
Topic match · C, C++, Rust, Go & systems languages
37:07Scale By The Bay 2018: Bryan Cantrill, Rust and Other Interesting Things
45K views • 7 years ago
FunctionalTV
Bryan Cantrill argues that programming languages and platforms reflect core values, and compares languages through that lens, with Rust as a main example. He draws on his experience with Solaris, DTrace and ZFS.
Topic match · C, C++, Rust, Go & systems languages
54:55Dconf 2014 Day 2 Keynote: The Last Thing D Needs -- Scott Meyers
19K views • 8 years ago
The D Language Foundation
Scott Meyers' keynote at DConf 2014, drawing on 25 years of C++ experience to offer the D language community a plea about what it should avoid. It centers on the accumulated complexity and pitfalls of C++ as a cautionary tale.
Topic match · C, C++, Rust, Go & systems languages
23:00Golang UK Conf. 2016 - Liz Rice - What is a container, really? Let's write one in Go from scratch
33K views • 10 years ago
GopherCon UK
Liz Rice builds a container from scratch in about 100 lines of Go, showing that a container is not a lightweight VM but a set of Linux kernel features and flags.
Topic match · C, C++, Rust, Go & systems languages
48:46Rust's Journey to Async/Await
90K views • 6 years ago
InfoQ
Steve Klabnik walks through the history of Rust and how its design evolved toward async/await, including the alternatives tried and dropped. He also discusses the difficulty of adding a major feature to a language.
Topic match · C, C++, Rust, Go & systems languages
31:23Concurrency is not Parallelism by Rob Pike
191K views • 11 years ago
gnbitcom
Rob Pike's Go talk distinguishing concurrency, the structuring of independent processes, from parallelism, their simultaneous execution. It uses Go channels and goroutines to illustrate.
Topic match · C, C++, Rust, Go & systems languages
32:24RustLatam 2019 - Without Boats: Zero-Cost Async IO
55K views • 7 years ago
Rust Programming Language
Without Boats, a Rust language team member, explains the design of Rust's async/await at RustLatam 2019. He covers the history and constraints behind zero-cost, allocation-free async state machines.
Topic match · C, C++, Rust, Go & systems languages
36:58"A (Not So Gentle) Introduction To Systems Programming In ATS" by Aditya Siram
26K views • 9 years ago
Strange Loop Conference
Aditya Siram introduces ATS, a statically typed ML-like language that compiles to C and offers type-safe pointer arithmetic and a full proof language. The Strange Loop talk shows off C interop, concurrency and verification features with non-trivial examples.
Topic match · C, C++, Rust, Go & systems languages
45:05Servo Architecture: Safety and Performance
12K views • 9 years ago
linux conf au 2017 - Hobart, Australia
Jack Moffitt presents the architecture of Servo, Mozilla's experimental browser engine written in Rust, focusing on parallelism across cores, GPUs and SIMD and the safety properties gained from Rust.
Topic match · C, C++, Rust, Go & systems languages
38:19Origins of Go Concurrency style by Rob Pike
28K views • 14 years ago
jasonofthel33t
Rob Pike's 2010 talk at OSCON's Emerging Languages Camp on where Go's concurrency style comes from. It traces the idea from Hoare's CSP through Squeak, Newsqueak and Limbo to Go.
Topic match · C, C++, Rust, Go & systems languages
23:57GopherCon 2016: The Design of the Go Assembler - Rob Pike
116K views • 10 years ago
Gopher Academy
Rob Pike's GopherCon 2016 talk on the design of the Go assembler, explaining why Go uses a common assembly language translated to each architecture.
Topic match · C, C++, Rust, Go & systems languages
40:56"Liberating the Smalltalk lurking in C and Unix" by Stephen Kell
25K views • 12 years ago
Strange Loop Conference
Stephen Kell's Strange Loop talk argues that C and Unix already contain Smalltalk-like dynamism and introspection that can be exposed. He presents his liballocs research on bridging dynamic and compiled languages.
Topic match · C, C++, Rust, Go & systems languages
36:16RustConf 2016 - A Modern Editor Built in Rust by Raph Levien
43K views • 10 years ago
Confreaks
Raph Levien presents Xi editor at RustConf 2016, a high-performance text editor built in Rust. The talk goes into technical details, building polished GUI apps, and running a community-focused open source project.
Topic match · C, C++, Rust, Go & systems languages
40:18"Compacting the Uncompactable" by Bobby Powers
29K views • 7 years ago
Strange Loop Conference
Bobby Powers presents Mesh, a drop-in malloc replacement that eliminates memory fragmentation in unmodified C/C++ programs by compacting memory. The talk covers how it works despite C's fixed object addresses, and its benefits for programs like Redis.
Topic match · C, C++, Rust, Go & systems languages
31:18Gopherfest 2017 | Upspin with Rob Pike
50K views • 9 years ago
The Go Programming Language
Rob Pike presents Upspin at Gopherfest 2017, an experimental framework for naming and sharing files and data securely and uniformly across a global namespace. It is a project written in Go rather than about Go.
Topic match · C, C++, Rust, Go & systems languages
42:45RustConf 2017 - Closing Keynote: Safe Systems Software and the Future of Computing by Joe Duffy
2K views • 9 years ago
Confreaks
Joe Duffy's RustConf 2017 closing keynote on his experience at Microsoft building Midori, an operating system written in a Rust-like safe systems language. He covers the technical and cultural challenges of applying those lessons to Windows.
Topic match · C, C++, Rust, Go & systems languages
22:51GopherCon 2015: Go GC: Solving the Latency Problem - Rick Hudson
22K views • 11 years ago
Gopher Academy
Rick Hudson's GopherCon 2015 talk on Go 1.5's new low-latency concurrent garbage collector. It covers the motivation, performance numbers, technical challenges and why the approach fits Go.
Topic match · C, C++, Rust, Go & systems languages
52:54Rust at speed — building a fast concurrent database
225K views • 7 years ago
Jon Gjengset
A guest lecture Jon Gjengset gave at Two Sigma on using Rust for large, high-performance systems. It covers why Rust suits such projects, the Noria research database, a concurrent data structure used in it, and practical experience.
Topic match · C, C++, Rust, Go & systems languages
22:29Gopherfest 2015 | Go Proverbs with Rob Pike
317K views • 10 years ago
The Go Programming Language
Rob Pike presents Go Proverbs at Gopherfest 2015, a set of pithy aphorisms about Go design such as 'Clear is better than clever' and 'A little copying is better than a little dependency'.
Topic match · C, C++, Rust, Go & systems languages
43:29Servo: Building a Parallel Browser
23K views • 11 years ago
Linux.conf.au 2015 -- Auckland, New Zealand
Jack Moffitt presents Servo, an experimental browser engine written in Rust and designed to be parallel at every level, using multiple cores, the GPU, fork-join concurrency and SIMD. The talk covers motivations, architecture and plans for the project.
Topic match · C, C++, Rust, Go & systems languages
31:28rand() Considered Harmful
16K views • 13 years ago
aghuttun
Stephan T. Lavavej's GoingNative 2013 talk explaining why calling rand() and using rand() % 100 is bad in C++, and how the C++11 <random> header does the job properly.
Topic match · C, C++, Rust, Go & systems languages