news
Programming Leftovers
-
The Deployer Times ☛ chown, chgrp, chmod, ACL: the writable_mode tour
Every PHP app has a handful of directories the web server has to write to. Cache, sessions, log files, image uploads, compiled views. Deployer logs in as one user (deploy) and unpacks code into a release directory owned by that user. PHP-FPM runs as a different user (www-data, nginx, apache, depending on the distro) and needs write access to a subset of that release. How you bridge those two users is writable_mode. Deployer ships six options. This post walks through what each one does, the syscalls behind it, and where it fits.
-
Sean Goedecke ☛ The just-say-no engineer was a ZIRP phenomenon
We can think of this as the just-say-no engineer, as opposed to the just-say-yes engineer. The just-say-yes engineer is obsessed with moving fast, approves code changes by default, values MTTR over MTBF, and tends to ship a lot of code. The just-say-no engineer is obsessed with quality, is happy to move slowly, and blocks code changes by default. Most engineers are somewhere in the middle of the spectrum. By “just-say-no engineer”, I’m talking about the group of engineers who most strongly identify with that archetype.
The just-say-no engineer is having a hard time in the era of AI. It used to be that they only had to say no to more junior engineers’ handwritten PRs, but now they have to say no to a barrage of AI-generated code, some of it generated by managers and VPs who are politically difficult to say no to. For the first time in their careers, they’re under a lot of pressure to lower their standards and start saying yes. However, this isn’t because of AI. It’s because of the end of ZIRP.
-
Logikal Solutions ☛ D.O.G.E. [sic] Team Should Not Be Allowed Near a Keyboard – Logikal Blog
The D.O.G.E. [sic] Team should not be allowed near a keyboard even to check email or apply for a job. What a steaming kettle of excrement this incompetence squared outfit is. Their latest F-UP (that I’m aware of) has to do with migrating FMCSA (Federal Motor Carrier Safety Administration) website to a new “portal” connected to Login.gov.
For real IT professionals, once that actually went to college to learn the process and who won’t allow Agile anywhere near a project that actually matters, this would have been a cake walk. Yeah, a lot of work, but we know how to properly develop software and most importantly we know how to properly run a project!
-
Daniel Lemire ☛ SIMD-accelerated integer-to-string conversion
Converting a 64-bit integer to its decimal string representation is a mundane task that shows up everywhere: logging, JSON serialization, CSV output, debug prints, etc. In C++, you might use std::to_chars, sprintf, or some library routine.
-
Erlang ☛ Erlang/OTP 29 Highlights
Erlang/OTP 29 is finally here. This blog post introduces the new features that we are most excited about.
A list of all changes can be found in Erlang/OTP 29 Readme. Or, as always, look at the release notes of the application you are interested in. For instance: Erlang/OTP 29 - Erts Release Notes - Version 17.0.
This year’s highlights mentioned in this blog post are: [...]
-
Matt Sephton ☛ Fits on a Floppy - A Manifesto for Small Software
I don’t miss floppy disks. I miss the mindset they demanded—that every byte matters, that constraints breed creativity, and that software should be light on its footprint.
-
R / R-Script
-
Rlang ☛ Five tips for managing your R-universe 🚀
rOpenSci’s R-universe system is an open source platform allowing users to create their own CRAN-like universe of R packages.
It is absolutely fantastic. It is particularly useful in one area I research, Mendelian randomization (at the interface of Epidemiology and Genetic Epidemiology), because a lot of the packages are GitHub/GitLab-only.
-
-
Python
-
Ivan Sagalaev ☛ Shoppy
It's a very, very simple Django app. When I first had the idea to build it I entertained some thoughts about trying some front-end based technology, because, you know, it's an "app"… But then after actually thinking about what it's going to be — a handful of static screens and a couple of forms — I decided to go the familiar way.
Now I have a small, view-source'able HTML app which I'm proud to offer as an example of how you can build something interactive without the layers of modern front-end technology.
-
-
Rust
-
Rust Blog ☛ The Rust Programming Language Blog: Project goals update — April 2026 (end of 2025H2)
The 2025H2 Project Goal period has now concluded. Over these months, the Rust Project pursued 41 Project Goals, 13 of which were designated as Flagship Goals. This post contains curated updates on our progress since the last post and the final status for each of the goals (many of which continue as part of the 2026 period).
-