Hi everyone! 👋
Welcome to cron.weekly issue #141.
Lots of variety in this issue again, these are the most fun ones to write. 😁
Oh, and there’s a job section at the bottom for those on the lookout for something new.
Grab a ☕️ & enjoy!
News & general 🗞
Facebook is one of the world’s biggest Btrfs users. Lots of interesting details in this write-up of a conference talk, covering some of the history of Btrfs adoption, lessons learned & more.
I’ve mentioned Apache Guacamole a few times in this newsletter already, so there’s a non-zero chance some of you are running this in production. You’ll be interested to learn there are several critical vulnerabilities you’ll want to go and patch!
Embrace the fact you’ll have downtime and focus on recovering from that, instead of trying to avoid the unavoidable.
MySQL will change its master/slave terminology used in database replication in future releases. You’ll want to be aware of the potential impact on configuration directives and monitoring. “master” becomes “source” and “slave” becomes “replica”. Soon, it’ll be source/replica replication instead of master/slave replication.
Blacklist and whitelist are also being renamed to blocklist and allowlist.
Linux’s creator Linus Torvalds spoke about the challenge of finding future maintainers for the kernel. Anyone up for a challenge?
The original creator of the Redis project is taking a step back to focus on other things, leaving the project in the good hands of the community. Some interesting bits from his post that stuck out to me are these.
Redis was an accident, a byproduct of solving a problem:
I never wanted to be a software maintainer
Because of the growth of Redis, and the responsibilities that came with it, Salvatore notes:
Redis was the most stressful thing I did in my career, and probably also the most important.
I can understand that!
The Gemini protocol is a Markdown-based, simplified version of the web. No image support or scripting, only a basic client/server model for serving pages. I doubt it’ll get mainstream traction other than some select groups, but it’s interesting to read about alternatives to the WWW.
Tools & Projects 🛠
(For Mac OS) Secretive is an app for storing and managing SSH keys in the Secure Enclave.
Server management at its finest, Ploi makes deploying your application to your own server a piece of cake. Server monitoring, Cloudflare DNS management, database backups, API, we’ve got your back when it comes to managing your server.
Easy 1-click installers for WordPress, OctoberCMS & Nextcloud. Sponsored
vgrep is a command-line tool to search textual patterns in directories. It serves as a front-end to
git-grep and allows to open the indexed matching lines in a user-specified editor.
Bach is a Bash testing framework, it can be used to test scripts that contain dangerous commands like
rm -rf /. No surprises, no pain.
gg command can run the compilation of code or binaries through serverless functions, speeding up the process significantly! If your laptop has limited CPUs, why not use cloud capacity to help you compile?
Analysis of PHP code quality and coding style. A beautiful overview of code architecture and its complexity. Designed to work out-of-the-box with Laravel, Symfony, Yii, WordPress, Magento2, and more.
Zettlr is a Markdown Editor for the 21st century.
Guides & Tutorials 🎓
This is a pretty neat trick to letting the
make tool show the help-output by default, and letting it autogenerate that from the source itself!
Hey is a new email app that’s been getting quite a bit of attention lately. This post covers how they run their operations on AWS and Kubernetes.
jq tool is a powerful command to handle JSON data at the command line. This guide covers selecting particular pieces of a JSON file, pretty-printing output and filtering data.
A practical guide on deploying a static site with Ansible. I’ve been trying to learn more about Ansible lately, and guides like these help make it “click” for me.
Step-by-step instructions on using a hardware key to authenticate your SSH connections, cool stuff!
A good list of new tools to replace some of our older ones:
fd to replace
This is an interesting use of process substitution in Bash, to stream the download of a file (using
ffmpeg) directly to a Chromecast, without waiting for the entire thing to download first.
A good overview of the available index types in Postgres (think: B-Tree, Hash, Gist, BRIN etc).
This is a clever, albeit cumbersome, way of adding an emergency backdoor for SSH access. By creating an SSH Certificate Authority, you can generate on-demand private/public keys the host trusts, and you can limit their lifetime to a few minutes, an hour or a year - giving you more control over who has access to what server, for how long.
A very cool deep-dive in how Linux accepts connections: how it queues
SYN connections while sending a
SYN-ACK, how connections finally get accepted and how to tune these aspects using
Here’s a new job section, just in case you’re on the lookout for something new. Maybe you’re looking for something closer to home, to reduce your commute? Or want to work with exciting new technology?
We make compliance less painful for engineering teams. Help us create primitives engineers will use to build the perfect security and privacy workflows for their teams. We’re looking for a technical PM who appreciates a great developer experience and would love to help us create one.
Location: San Francisco, Boston, Remote
This is your chance to work on the backend of one of the biggest VoIP platforms in Europe! Bonus: we don’t have managers, we are a holacratic company. The tech stack includes Kubernetes / Rancher, Linux, Django, Python, Golang, SaltStack, Asterisk, OpenSIPS & Prometheus / Grafana.
Location: Groningen, the Netherlands
Location: Remote in North America