The post discusses the dangers of Open3.popen3 and how to avoid deadlocks when reading from a process. It explains the naive usage of Open3.popen3, measuring the buffer size, buffered vs unbuffered output, and solving the deadlock...
The post discusses the 'Service Model' book by Adrian Tchaikovsky, focusing on the librarians' efforts to preserve all human knowledge. It explores the potential implementation of the algorithm, async in Ruby, and spoilers from th...
The text discusses common mistakes with temporary files in Ruby, including using the file after disposing of the Tempfile object, garbage collection on Tempfile objects, using Tempfile.open instead of Tempfile.create, re-opening t...
The text discusses the issue of reproducible Docker images and the problems with base images in the Docker registry not offering immutable tags. It explains why repository maintainers do this, the concept of reproducible builds, m...
The text discusses the issue of Sidekiq not recovering terminated jobs due to a backward-incompatible Redis client update. It explains the inner workings of super_fetch, the heartbeat implementation, and the impact of the Redis cl...
The author discusses the decision to restart their blog, the requirements for the new platform, and the process of choosing a platform, design, and implementation. They also talk about hosting the website and conclude by encouragi...
The text discusses the HTTP client header parsing configuration settings in Nginx, including the default settings, the role of the values in request parsing, and the memory utilization. It also includes an experiment with Nginx co...