RSSAmplifier

Blog

Down with the friction

cbarrete.comRSS feed ↗46 posts

Latest posts

One sentence per line

Advocating for writing one sentence per line in text files

Recommendation:vsfor string literals (Rust)

This comment fromconvinced me of usingon string literals years ago. I have been using it and sending this link to collaborators since then.

Recommendation: Tremily - RPATH, RUNPATH, and dynamic linking

A short article about the differences betweenand, most importantly the fact thatoverrides, butdoes not.

Recommendation: Matt Stuchlik - Counting Bytes Faster Than You'd Think Possible

An interesting short article on speeding up memory-bound programs using interleaved memory accesses.

Bit tricks

Some bit-twiddling tricks, I might add some more in the future

A simple

Just posting my

Recommendation: Our Machinery - Virtual Memory Tricks

A great collection of tricks related to taking advantage of virtual memory on modern operating systems. I have previously talked about similar things inand planned on covering more of those tricks myself, but this is a good resource in the meantime!

Lots of added recommendations!

I've added a bunch of links to my recommended reads. Check them out!

A different memory pool in Rust

Let's design a surprisingly unique yet simple toy memory pool in Rust

Multicast

Some notes about multicast

Build systems and package management in 2024

An overview of the state of the art regarding integrating package managers in modern build systems

How to start using Nix: building packages and Home Manager

I've updated my "How to start using Nix" series to cover building packages and installing/configuring packages via Home Manager

Recommendation: Matthew Croughan - What Nix Can Do (Docker Can't)

I might at some point write a concise list of reasons to consider using Nix, but in the meantime this presentation from Matthew Croughan brilliantly showcases some of the most useful and impressive features of Nix

Working with infinite memory

Some tricks based on huge virtual memory allocations

Just how slow are slow languages?

Benchmarking production languages against a terrible compiler

Pointers as files

Proposing an analogy for teaching what pointers are and how they work

Trying out Colemak

Notes on my experience trying the Colemak keyboard layout

Removing Maildir folders client-side using

Notes on how to delete Maildir folders client-side using

John Carmack on inlined code and functional programming

Lightly edited backups of insightful writings from John Carmack

C++ move semantics from scratch

A pseudo-historical overview of C++ move semantics, building them up from scratch, without fluff or magic

Identifying abstraction

An exploration of the concept of abstraction, trying to identify where it makes sense to leak details

Recommendation: Roc Lang

Lately I've been thinking about how most modern systems languages like Rust have been trying to become more approachable. In particular, I have seen many people move away from Javascript/Go to Rust for performance and type safety reasons. It strikes me as odd that such people would reach for that low-level a language. Why would you use a language designed to offer great control over your hardware…

Recommendation: Practical DOD

Great talk from Zig's Andrew Kelly about practical tips for getting into Data Oriented Design.

Additions to "Why I don't love Rust (either)"

I've added sections about my issues with compile-time evaluation and low-level obfuscation to the original article.

Recommendation: The story of ispc

I suggest anyone interested in SIMD/SPMD and auto-vectorization to read Matt Pharr's excellent series about the story of ispc

Take back control over your contacts and calendars

Quick tutorial on self-hosting a calendars and contacts server

ClangFormat your JAVA CODE?

PSA: you can format more than just C/C++ with ClangFormat

Sharing expenses with ledger

Ideas about how to deal with shared expenses with someone when using ledger

Why you should consider using RSS

My arguing for a more widespread use of RSS feeds (I know, ironic that you're reading this in an RSS reader)

Easy key bindings in Bash

Making easy key bindings in Bash

Persistent key repeat under X

Making key repeat under X more robust

On the advantages of off-line audio processing

Overview of some advantages of off-line vs real-time audio processing

Packaging your setup on Debian

Bite sized tutorial on how to install all of your favorite software at once on Debian

Native Vim plugin management

Short introduction to managing Vim plugins without a third party manager

More stuff that rocks

I've added fzf and Neovim to the list of stuff the rocks

Why Neovim over Vim

My main reasons for using Neovim over Vim

Keyboard buying checklist

List of features to consider before asking me about which keyboard to buy

Getting Vim to shut up

Presenting a few options that make Vim a little quieter

About theming document websites

Thoughts about the modern Web's support for browsing document

Efficient file management with

Notes on how to configure and use, including integration withand

Swapping the Control and Caps Lock keys

Notes on how to swap Control and Caps Lock and why it is beneficial

Fuzzycompletion in

Fuzzycompletion inusing

A better drag and drop workflow

Efficient/comfortable workflow for drag and drop

The state of rolling release Linux distributions

Rant on the state of rolling release Linux distributions and how terrible Arch Linux is

Working with LaTeX

Notes on easily compiling and cleaning LaTeX documents

Configuring vim for ledger

Notes on configuring vim to easily manipulate ledger journals