20 random bookmarks

2025-09-29

135.

stupid jj tricks

andre.arko.net/2025/09/28/stupid-jj-tricks

Welcome to “stupid jj tricks”. Today, I’ll be taking you on a tour through many different jj configurations that I have collected while scouring the internet. Some of what I’ll show is original research or construction created by me personally, but a lot of these things are sourced from blog post, gists, GitHub issues, Reddit posts, Discord messages, and more.

2025-09-04

133.

Beacon API

developer.mozilla.org/en-US/docs/Web/API/Beacon_API

The Beacon API is used to send an asynchronous and non-blocking request to a web server. The request does not expect a response. Unlike requests made using XMLHttpRequest or the Fetch API, the browser guarantees to initiate beacon requests before the page is unloaded and to run them to completion.

2025-08-21

129.

A Brief Guide to A Few Algebraic Structures

argumatronic.com/posts/2019-06-21-algebra-cheatsheet.html

I started writing this post because, for whatever reason, I keep forgetting what the difference is between a ring and a group, which is funny to me because I never forget the difference between a semiring and a semigroup – although other people do, because it’s quite easy to forget! So, I wanted a fast reference to the kinds of algebraic structures that I am most often dealing with in one way or another, usually because I’m writing Haskell (which has some reliance on terminology and structure from abstract algebra and category theory) or I’m trying to read a book about category theory and they keep talking about “groups.” Wikipedia, of course, defines all these structures, and that’s fine, but what I need in those times is more of a refresher than an in-depth explanation.

2025-06-17

119.

Debugging tricks for IntelliJ

andreabergia.com/blog/2025/06/debugging-tricks-for-intellij

I have been using IntelliJ Idea at work for a decade or so by now, and it’s been a reliable companion. JetBrains IDEs have a bit of a reputation for being slow, but their feature set is incredible: powerful refactoring tools, a great VCS UI (though I like magit even more!), a huge number of supported frameworks, integration with just about any testing library for any language, code coverage tools, powerful debuggers, etc.

2025-06-12

116.

Always do Extra

www.bennorthrop.com/Essays/2021/always-do-extra.php

Extra is different than More. Extra is finishing those two screens, but then researching a new library for form validation that might reduce the boilerplate code. Or it's learning ways to protect against common security vulnerabilities from data entry. These little off-ramps from the main highway of Normal Work could be dead-ends and not have any practical value to the project. But they might also be important contributions. And that's the thing with Extra. While the tangible value to the project is uncertain (it could be nothing this time or it could be something), the value to you is real.

2025-05-30

115.

The PGP Problem

www.latacora.com/blog/2019/07/16/the-pgp-problem

Why do people keep telling me to use PGP? The answer is that they shouldn’t be telling you that, because PGP is bad and needs to go away.

2025-05-23

112.

Async from scratch 1: What's in a Future, anyway? | natkr's ramblings

natkr.com/2025-04-10-async-from-scratch-1

There are a lot of guides about how to use async Rust from a "user's
perspective", but I think it's also worth understanding how it
works, what those async blocks actually mean.

2025-04-04

104.

Pitfalls of Safe Rus

corrode.dev/blog/pitfalls-of-safe-rust

When people say Rust is a “safe language”, they often mean memory safety.
And while memory safety is a great start, it’s far from all it takes to build robust applications.
Memory safety is important but not sufficient for overall r…

2024-08-15

66.

Planning Weekly Workouts in 100 lines of Haskell

alt-romes.github.io/posts/2024-08-14-planning-a-workout-week-with-100-lines-of-haskell.html

A lightning post on logic programming in Haskell to construct a workout weekly schedule given the set of exercises, days and constraints.

2024-08-08

63.

More than 200 orphaned Debian packages moved to git, 216 to go

www.hungry.com/~pere/blog/More_than_200_orphaned_Debian_packages_moved_to_git__216_to_go.html

2024-06-26

53.

A reckless introduction to Hindley-Milner type inference

reasonableapproximation.net/2019/05/05/hindley-milner.html

2024-06-20

47.

Go's 'range over function' iterators and avoiding iteration errors

utcc.utoronto.ca/~cks/space/blog/programming/GoIteratorsAndAvoidingMistakes
46.

Why does SQLite (in production) have such a bad rep?

avi.im/blag/2024/sqlite-bad-rep

2024-06-18

39.

Understanding a Python closure oddity

utcc.utoronto.ca/~cks/space/blog/python/UnderstandingClosureOddity

2024-06-14

33.

A useful shell prompt

blog.meain.io/2022/my-shell-prompt

Featureful zsh prompt.

32.

Putting Go's Context package into context

blog.meain.io/2024/golang-context

2024-06-13

25.

Solving SAT via Positive Supercompilation

hirrolot.github.io/posts/sat-supercompilation.html
17.

Arena allocator tips and tricks

nullprogram.com/blog/2023/09/27

2024-06-10

5.

Modern IRC Client Protocol

modern.ircdocs.horse

Living specification of the IRC protocol. Does not include brand new behavior, just existing behavior present in IRC software and/or networks (new extensions are IRCv3's area).

2024-06-09

2.

Piku

piku.github.io/index.html

piku, inspired by dokku, allows you do git push deployments to your own servers, no matter how small they are.