Terms and conditions

👋 This page was last updated ~3 years ago. Just so you know.

There are no goods or services being sold on https://fasterthanli.me: however, donations are accepted, through Patreon and GitHub Sponsors, and may in the future be accepted directly through a payment processor.

Anyone who is currently subcribed to me on either Patreon or GitHub Sponsors is hereafter referred to as a “sponsor”.

Sponsors may log in to this website using their Patreon or GitHub account and may, occasionally, read articles in “early access”, before they are made available for everyone.

Sponsors may cancel their subscription at any time and for any reason, and obtain a refund for the unused duration of their monthly/annual subscription.

By cancelling their subscription, sponsors understand they immediately lose the “early access” functionalities.

You can e-mail [email protected] if you have questions.

Did you know I also make videos? Check them out on YouTube!

Here's another article just for you:

A dynamic linker murder mystery

I write a ton of articles about rust. And in those articles, the main focus is about writing Rust code that compiles. Once it compiles, well, we’re basically in the clear! Especially if it compiles to a single executable, that’s made up entirely of Rust code.

That works great for short tutorials, or one-off explorations.

Unfortunately, “in the real world”, our code often has to share the stage with other code. And Rust is great at that. Compiling Go code to a static library, for example, is relatively finnicky. It insists on being built with GCC (and no other compiler), and linked with GNU ld (and no other linker).