20 random bookmarks

stuff me collect

2025-12-02

Reposted 250.

Scripts I wrote that I use all the time

evanhahn.com/scripts-i-wrote-that-i-use-all-the-time

I've written a number of little scripts over the years, many of which I use every day. Here's a little collection.

2025-08-11

245.

Quickshell - building blocks for your desktop

quickshell.org

Quickshell is a toolkit for building status bars, widgets, lockscreens, and other desktop components using QtQuick. It can be used alongside your wayland compositor or window manager to build a complete desktop environment.

2025-04-04

Reposted 221.

28h Days: year 1 update

sidhion.com/blog/28h_days_update_1

2025-03-08

Reposted 210.

Falsehoods Programmers Believe About HTML

aartaka.me/falsehoods-html

2025-03-03

207.

SvgPathEditor

yqnn.github.io/svg-path-editor

2025-02-06

202.

Chat is a bad UI pattern for development tools

danieldelaney.net/chat

2024-12-09

189.

Tiger Style

github.com/tigerbeetle/tigerbeetle/blob/a43f2205f5335cb8f56d6e8bfcc6b2d99a4fc4a4/docs/TIGER_STYLE.md

Our design goals are safety, performance, and developer experience. In that order.

Contrary to popular belief, simplicity is also not the first attempt but the hardest revision

code, like steel, is less expensive to change while it's hot.

Safety

NASA's Power of Ten — Rules for Developing Safety Critical Code

  • Use only very simple, explicit control flow for clarity.

  • Put a limit on everything. Fail Fast

  • Assertions detect programmer errors. The only correct way to handle corrupt code is to crash.

  • Assertions are a safety net, not a substitute for human understanding.

    • Build a precise mental model of the code first.

    • encode your understanding in the form of assertions,

    • write the code and comments to explain and justify the mental model to your reviewer,

    • and use VOPR as the final line of defense, to find bugs in your and reviewer's understanding of code.

  • No memory may be dynamically allocated (or freed and reallocated) after initialization.

  • Declare variables at the smallest possible scope, and minimize the number of variables in scope.

  • Good function shape is often the inverse of an hourglass: a few parameters, a simple return type, and a lot of meaty logic between the braces.

  • Centralize control flow. When splitting a large function, try to keep all switch/if statements in the "parent" function, and move non-branchy logic fragments to helper functions.

  • Centralize state manipulation. Let the parent function keep all relevant state in local variables, and use helpers to compute what needs to change, rather than applying the change directly.

Developer Experience

  • Add units or qualifiers to variable names, and put the units or qualifiers last, sorted by descending significance. latency_ms_max rather than max_latency_ms.

  • Callbacks go last in the list of parameters.

  • Order matters for readability (even if it doesn't affect semantics). On the first read, a file is read top-down, so put important things near the top. The main function goes first.

  • Don't overload names with multiple meanings that are context-dependent.

2024-11-01

167.

Throw Out Your Black Plastic Spatula

www.theatlantic.com/health/archive/2024/10/black-plastic-spatula-flame-retardants/680452

It’s probably leaching chemicals into your cooking oil.
Replacing a black plastic spatula with a steel or silicone option is an easy way to cut down on at least part of one’s daily dose of hormone disruptors

2024-10-17

Reposted 161.

FFmpeg - Ultimate Guide | IMG.LY Blog

img.ly/blog/ultimate-guide-to-ffmpeg

This guide covers the ins and outs of FFmpeg starting with fundamental concepts and moving to media transcoding and video and audio processing providing practical examples along the way.

2024-10-15

160.

Kosmik - browser for moodboards etc

www.kosmik.app

2024-07-08

128.

Self Hosted для домашнего сервера

habr.com/ru/articles/826832

Эту статью я пишу во многом для нескольких друзей, которые решили приобщиться к этому тренду, и здесь будет обзор моего личного self hosted - про всякие разные штуки, которые показались полезны лично мне, и плотно заняли своё место на моём домашнем сервере.

126.

Ente Auth

ente.io/auth

Open source 2FA authenticator, with end-to-end encrypted backups

2024-06-30

108.

Immich - Selfhoto and video backup solution

immich.app

immich Self-hosted photo and video backup solution directly from your mobile phone

2024-06-28

103.

mayneyao/eidos: Offline alternative to Notion

github.com/mayneyao/eidos

Eidos is an extensible framework for managing your personal data throughout your lifetime in one place

2024-06-21

98.

Home-Cooked Software and Barefoot Developers

maggieappleton.com/home-cooked-software

The emerging golden age of home-cooked software, barefoot developers, and why the local-first community should help build it

2024-05-20

76.

D3 in Depth

d3indepth.com

2024-04-23

62.

Calculus Made Easy

calculusmadeeasy.org

2024-04-22

59.

DIY-Gaming-Mouse

github.com/wareya/DIY-Gaming-Mouse

Completely open source DIY gaming mouse, including hardware (PCB, shell) design files - wareya/DIY-Gaming-Mouse

2024-03-19

43.

A Society That Lost Focus

ploum.net/2024-03-18-lost-focus.html

Simply do the math. If you have 180 friends on Facebook, which seems to be a low amount those days, if your friends take, on average, 10 days of vacation per year, you will have, on average, five friends on vacation every day. Add to this statistic that some people like to re-post pictures of old vacations and it means that you will be bombarded daily by pictures of sunny beaches and beautiful landscapes while you are waiting under neon light for your next boring meeting in a gray office. By design, Facebook makes you feel miserable.

Our mind, not the technology, is the bottleneck. We need to care about our minds. To dedicate time to think slowly and deeply.

2024-03-13

Reposted 25.

How to Feel 20 Percent Better

www.raptitude.com/2024/02/how-to-feel-20-percent-better