20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
For the NLNet Betula grant, I had to redesign the logo. The old one was not very recognisable at small sizes, barely looked like a birch, etc. June 2026, I spent several days working on the new one. Turned out, logo design and vector graphics are so much more complicated than I anticipated! Went through multiple approaches until I settled on the final logo. It's live on https://joinbetula.org or instances running newer versions, such as https://links.bouncepaw.com.
This is status-driven orchestration, and it is the most popular way in the industry to build a finite-state machine while loudly insisting you are doing nothing of the sort. The denial is the interesting part. Everyone agrees that explicit state machines are good in the abstract—the way everyone agrees that flossing is good—and then goes home and writes another cond/1 that branches on a string.
If someone asks you a question, paste your answer — not the chatbot's.
We are adding a new generated code API to Go Protobuf.
Rewrite Git history with a single drag-and-drop.
Undo anything with ⌘Z. All speed, no bumps.
Something like make, but magefiles are written in Go instead. Pretty funny.
Вывели с клиентом универсальную «инструкцию к терапии». На случай, если кому-то это нужно. Как часто и бывает, у него была популярная мечта сначала что-то поменять в голове, а потом зажить по-новому.
If you set out to build a local-first application that users have complete control and ownership over, you need something to solve data sync.
Dropbox and other file-sync services, while very basic, offer enough to implement it in a simple but working way.
Sure, it won’t be as real-time as a custom solution, but it’s still better for casual syncs. Think Apple Photos: only your own photos, not real-time, but you know they will be everywhere by the end of the day. And that’s good enough!
Imagine if Obsidian Sync was just “put your files in the folder” and it would give you conflict-free sync? For free? Forever? Just bring your own cloud?
I’d say it sounds pretty good.
When a task you're working on is too big or you simply don't want to do it, you cut corners; here is how you can do it professionally.
Patent-pending methodology of breaking down big tasks into smaller ones is explained in the article, by example in Java
Может, вы сидели и думали, что в Осло нет трамваев. А они есть!
The coolest thing I've seen today!
Minimizing your keyboard layout is a slippery slope.
34-keys has been reasonably comfortable to use, for both prose and program. My palms do not move across the desk at all, as I reach for keys. I mostly write Rust and Bash, and my layout has evolved to accomodate special characters from their grammars (angled brackets and hyphens, specifically). If you are on a similar journey, I would suggest focusing on accuracy and comfort over speed. Speed comes with time.
Sort-merge joins do not need indexes on the join predicates.
MySQL does not support sort-merge joins at all.
The David Rumsey Map Collection has been home to tens of thousands of historical maps, and now you can search the collection by the text in the maps