Anatomy of a shell
Explores the design and implementation of a POSIX shell, focusing on its parser, AST generation, and task-based execution model.
Drew DeVault’s blog features sharp commentary on open source, software engineering, programming languages, ethics in tech, and the social impact of technology.
354 articles from this blog
Explores the design and implementation of a POSIX shell, focusing on its parser, AST generation, and task-based execution model.
A developer details the process of porting Alpine Linux to the RISC-V architecture using the HiFive Unleashed board, including cross-compiler setup and musl libc patches.
A guide for open source maintainers on how to responsibly abandon a project, comparing the 'fork it' and 'hand-off' approaches.
Public alpha launch of sr.ht, a fully open-source, modular, and lightweight software forge alternative to GitHub and GitLab.
Critique of the Commons Clause, arguing it creates nonfree software while dishonestly using open source terminology.
Explains virtual memory, MMU, page tables, and how processes use memory mapping and swap space.
Sway 1.0-beta.1, a major release of the i3-compatible Wayland compositor, is now available with significant stability and feature improvements.
A developer explains how Go 1.11's module system solved their biggest frustration (GOPATH), leading them to appreciate Go's simplicity, concurrency, and stability.
Argues against signing Contributor License Agreements (CLAs) in open-source projects, claiming they undermine contributor rights and project freedom.
A developer recounts attending XDC 2018 with the wlroots team, sharing insights on graphics drivers, testing, and community interactions.
A guide to getting started with the QEMU virtualization tool, covering basic setup and command-line options for running a Linux VM.
A critique of modern web bloat and a case for conservative web development principles like minimal JavaScript and optimized assets.
A technical guide on setting up a self-hosted video livestream using ffmpeg, DASH, and nginx, bypassing services like Twitch.
The article argues that the Commons Clause threatens open source by turning projects proprietary, and discusses better funding models for maintainers.
A critical analysis of Signal's security model, focusing on its reliance on Google Play Services and resistance to F-Droid distribution.
A technical guide on configuring a local Postfix mail server for development and testing email-related software.
Explains the role of shells in Wayland compositors using wlroots, detailing how surfaces become functional UI elements like windows and menus.
Argues that Git is already decentralized via email, and new forges should embrace email-based collaboration instead of building separate ActivityPub systems.
Explains the flexible but complex input handling system in the wlroots library for Wayland compositors and input abstraction.
A software engineering article arguing that simplicity is the most critical quality for achieving correctness and performance in software development.