Links list - 2022-06-12
Hello, and welcome to a new edition of Links lists! A bit more low-level stuff this week!
Coding Link to heading
Blurring backgrounds in video chats Link to heading
Interesting article from Slack about how they have implemented blurring the video call background in clips.
Building Background Effects for Clips - Slack Engineering
Last September, Slack released Clips, allowing users to capture video, audio, and screen recordings in messages to help distributed teams connect and share their work. We’ve continued iterating on Clips since its release, adding thumbnail selection, background blur, and most recently, background ima…
Postgres data types Link to heading
Did you know that PostgreSQL has a lot more data types supported than your standard database, like IP addresses, geometric data, or JSON? Here’s a quick introduction, but of course you can check out the great official documentation for all the details.
What PostgreSQL Has Over Other Open Source SQL Databases: Part I
You may be asking yourself “Why PostgreSQL?” There are several choices for open source relational databases out there (we looked at MySQL, MariaDB and Firebird for this article), but what does PostgreSQL have that they don’t? PostgreSQL’s tag line claims that it’s: “The world’s most advanced open so…
Coding - Low level Link to heading
Vectorization in Java Link to heading
An interesting, and rather complex article about implementing sorting with the new vectorization instructions that are currently incubating in the JVM, in project Panama. The author is able to achieve a roughly 3x speedup over Arrays.sort
, which is pretty impressive!
Reading files - the hard way Link to heading
A very fun series about how files works. Start with the classical C API, go deeper into assembler, syscalls, and the kernel, and end up reading raw bytes from ext4 and talking about how inodes work! Very cool!
Reading Files the Hard Way
amos loves to tinker
Strace Link to heading
Speaking of syscalls and the kernel, strace is a fantastic tool to know. It helps you trace all the interactions between your process and the kernel, and can be super valuable to understand what is going on. Here’s one of the best introductions I know of.
Introduction · Strace Little Book
I like researching debugging techniques, so I decide to write this booklet to introduce strace. The following is the official definition of strace:
Non tech Link to heading
Caffeine Link to heading
Interesting article from the often amazing Guardian about the history and the addictive effects of caffeine.
A few years ago I tried giving it up for a few months, due to stomach issues, but I ended up going back, on a limited amount per day. In addition to the “wake up” effect, I really do love my morning cup of espresso - it tastes great and it is an important part of the morning routing for me!
The Invisible Addiction: Is It Time to Give Up Caffeine?
The long read: Caffeine makes us more energetic, efficient and faster. But we have become so dependent that we need it just to get to our baseline