Introduction to Memory Unsafety for VPs of Engineering
Explains memory unsafety in programming languages, its security risks (out-of-bounds reads/writes, use-after-free), and contrasts unsafe languages like C/C++ with safe ones.
Explains memory unsafety in programming languages, its security risks (out-of-bounds reads/writes, use-after-free), and contrasts unsafe languages like C/C++ with safe ones.
A conference talk exploring .NET memory management concepts, the Garbage Collector, hidden allocations, and profiling techniques.
Explains how to use lazy properties in Swift to delay object creation, improve performance, and avoid optionals, with practical code examples.
Explores subtle and rarely discussed unbreakable reference cycles in Swift's memory management, detailing how they cause leaks and offering advanced insights.
A talk recap on .NET's Garbage Collector, memory management concepts, hidden allocations, and performance profiling.
Explains virtual memory, MMU, page tables, and how processes use memory mapping and swap space.
Explores a Swift compiler bug where re-binding 'self' in a weak closure breaks Xcode debugging, with historical context on weak/strong self patterns.
A developer shares advanced debugging techniques for tracking retain/release crashes in Objective-C, including custom GCD wrappers and queue tracking.
Explains how data is represented as objects in CPython, covering types, identity, binding, and mutability.
Compares assignment operations and parameter passing in C (copying) vs. CPython (binding), focusing on mutable/immutable data.
An introduction to fundamental data types, variables, memory addresses, and pointers in the C programming language.
Explains the implementation details and changes to weak references in Swift 4, comparing the old and new runtime behavior.
Explains Swift's Unmanaged struct for converting Swift object references to/from raw pointers when working with C APIs.
Explains the Span<T> type in C# for safe, high-performance memory manipulation across stack, unmanaged, and managed memory.
An in-depth look at how the .NET CLR allocates and uses internal memory, exploring its data structures beyond managed code.
Explains the performance differences between value types and reference types in .NET, focusing on memory layout, CPU cache, and garbage collection.
Explains an object-oriented approach to reading large files line by line in PHP, comparing it to generator functions and file_get_contents.
A Swift developer introduces a 'strongify' function to simplify and clean up the common pattern of weak-strong dancing when avoiding retain cycles in closures.
A deep dive into debugging a memory allocation issue in an operating system, starting from a bug report about slow iter_content performance.
A developer details the challenges of building a Java tracing agent for distributed systems, focusing on asynchronous execution and its impact on garbage collection.