Designing systems, analyzing solutions, sharing vision
A Software Architect's hub for technical analysis, tutorials on Go/Rust/SwiftUI, and reflections on software development trends and essential reading.
A Software Architect's hub for technical analysis, tutorials on Go/Rust/SwiftUI, and reflections on software development trends and essential reading.
Explores a common bug in C arena allocators and presents safer implementation strategies to prevent out-of-bounds writes.
A developer documents the first day of creating an emoji input method using the Hare programming language and Wayland protocols.
Ghostty devlog details performance optimizations using SIMD to increase terminal emulator IO throughput for faster text and control character processing.
A tutorial on calling a simple C library from the Zig programming language, focusing on basic interop mechanics.
A technical tutorial on building a basic GUI client from scratch using the Wayland protocol in C, without external libraries.
Explores using the Hare programming language for kernel development, focusing on low-level memory management and boot information structures.
Explains CPU branch prediction using a railroad analogy, detailing how predictable conditional statements (if/else) can significantly improve performance.
A guide to binary operations and integer representation using the UInt8 type in the Swift programming language.
A guide to using unsafe memory pointers in Swift for low-level memory management and C interoperability.
Exploring Java 16's incubating Vector API to implement FizzBuzz using SIMD instructions for performance gains.
Explains how Swift manages memory for data types, covering layout, alignment, and safe access using MemoryLayout.
Explains the PC boot process, comparing legacy BIOS and modern UEFI, including technical details and using QEMU for exploration.
A developer recreates the classic DOOM fire effect using C# and runs it on the ancient Windows NT 3.51 operating system.
A systematic guide to Swift's complex pointer types, explaining their purpose, usage, and the associated memory safety considerations.
Explores the concept of the heliopause in space as a metaphor for the C programming language's dominance and its ABI's role as a critical interface in software.
A retrospective on KnightOS, a Unix-like operating system written in assembly for TI z80 calculators, focusing on its unique constraints and design.
Extending a JavaScript x86 emulator to implement Linux system calls like exit and write, covering syscall mechanics and AMD64 conventions.
Extending a Lisp compiler's LLVM backend to support system calls for printing integers, covering type tracking and variable addressing.
A technical guide on building a basic x86 emulator in JavaScript, covering registers, stack memory, and core instruction implementation.