/blogroll/
- Manuel
was annoyed
- My
OpenBSD basic setup
- Robb
Knight
- Двойные
кроссплатформенные пересадки
- The Weeks
- What I’m doing now (monthly
updated)
- Hallucination
city
- Effect
notes: caching
- Weeknote
#1973
- 2025/11/07 - 7 ноября
должно быть что-то революционное
- Integrating
GitButler and GitHub Enterprise
- inert media, or the
explotation of attention
- Reflections on Weird
Web October 2025
- Introducing Agent
Extensions
- AI’s 70%
Problem
- Manuel
was annoyed
- NetNewsWire
6.2: RSS Plus Markdown
- Manuel
was annoyed
- Экраны
в спинках впереди стоящих кресел
- Earn
Simplicity
- Rust is
eating the world: From embedded firmware to cross-platform applications,
databases and big servers
- My OpenBSD
journey
- How
To Build A Smartwatch: Software - Setting Expectations &
Roadmap
- LLMs
pivot to the aesthetics of thinking
- Best
summer 2025 photos
- A
moment with a decidedly less gloomy church
- Butler
Flow: shipping code faster (but less like Alfred, more like CI on
steroids) - Part 3
- Презервативы
для ног
- A
Few Good Things – Vol. 12
- On
sidenotes implementation
- A
spider under the microscope
SocketAddrV6
is not roundtrip serializable
- Immutable
by Design: The Deep Tech Behind Tigris Bucket Forking
- The
devil is in the defaults…
- MacOS
updates make less sense
- Battlefield
Memories
- New
Mastodon account & new router
- Изучаем возможности
Meshtastic
- Browser
APIs: The Web’s Free SaaS
- Joy
& Curiosity #60
- Recently
- Using
Assisted-by commit footers instead of banning AI tools
- “I
would buy a Mac today if I was not working at Microsoft”
- Claude Code Can
Debug Low-level Cryptography
- Engineering
a Rust optimization quiz
- Catching
Up with Some Old YouTube Follows
- Ссылки
#362
- Sleep
Score
- Октябрь
- What
makes up an organization’s culture?
- Inktober?
Completed It Mate
- Frank
Chimero
- Taking
steps to end traffic from abusive cloud providers
- Retrospectiva
#1
- As
smart as a PhD
- I
Was a Guest on The Pen Addict
- How Big is
TBPN?
- Living Room
2
- How
many pillars of observability can you fit on the head of a pin?
- Bayesian
A/B testing is not immune to peeking
- Datalog DSL
detects defective dependency declarations, defanging dodgy development
discipline
- Hired
Through GitHub: Part 2
- Zig’s
New Async I/O (Text Version)
- Aggressive
bots ruined my weekend
- Sabbaticals
keep our attrition at bay
- How Signal uses Rust
to secure the communications of millions of people
- Packing
Neovim with Fennel
- The Green Tea Garbage
Collector
- 2025/10/29 - Всякие
новости
- Butler
Flow: shipping code faster (but less like Alfred, more like CI on
steroids) - Part 2
- Boombox
Boobs
- Сентябрь
- Living
Room
- Принимаем сигналы со спутника
QO-100
- Flame
Graphs in Go
- Don’t
Forget These Tags to Make HTML Work Like You Expect
- Thinking
Clearly
- Joy
& Curiosity #59
- Data
Oriented Programming in Java: Progress 2025-10-26
- Success
always spawns haters
- franken
keyboard
- Ссылки
#361
- Thoughts
on the Leica M EV1
- Everything
Is Broken
- Code
like a surgeon
- Tales from
Toddlerhood
- Hello darkness, my
old friend.
- How I
Coding? (Oct 2025 Edition)
- The Geomys
Standard of Care
- Smart Glasses
Are Real
- I
Am Out Of Data Hell
- Attending
MicroConf Europe 2025
- Cleanup your
lifetime annotations in Rust with Rc and Arc
- What’s
up with FUTO?
- Million-Mile
Tech
- Use the saw, fear the
saw
- Interview
with a new hosting provider founder
- Самодельная спиральная
антенна на 2.4 ГГц
- Не резать
косты
- Joy
& Curiosity #58
- Багиры больше
нет.
- Ссылки
#360
- 2025/10/17 -
Лайфхак
- A
petabyte worth of Omarchy in a month
- Programming
Bowls
- I am sorry,
but everyone is getting syntax highlighting wrong
- Faísca:
The modern LLM stack in a single script
- Smartphones and
being present
- Got
opinions on observability? I could use your help (once more, with
feeling)
- Changelog
25#41
- The
App Store Was Always Authoritarian
- Vibing a
Non-Trivial Ghostty Feature
- Горячий прощай из
будущего
- A
Retrospective Survey of 2024/2025 Open Source Supply Chain
Compromises
- Humans Are Just Stochastic
Parrots
- Why
and how I ditched use-package?
- (re)Introducing
the Pebble Appstore
- AI:
the utility bubble - for Publico.pt
- backporting
go on openbsd
- How I run
gratitude circles
- If
you’re a programmer and you feel depressed by AI, don’t be!
- Creating
a simple blog in Python with Origami concepts
- I have
sinned
- Father and
Daughter
- Data
Oriented Programming in Java: Progress 2025-10-06
- Facebook’s
plan to beat Google+
- Thoughts
on monthly recaps.
- Stop
The Mac App Store is not obsolete
- Why
NetNewsWire Is Not a Web App
- Sora
update #1
- 11ty
Hacks for Fun and Performance
- Recently
- Cleaning
up a Git repository for public consumption
- Tron: Ares
(soundtrack)
- When
AI Gives the ‘Ick’
- Zig
Builds Are Getting Faster
- Cancelling
async Rust
- Bambu
Lab H2S vs X1C
- Mid-Range
- URL/NSURL
double-encodes characters unnecessarily
- Мумми-тролли
- Sora 2
- Decentralizing
quality
- Safari
26 advanced fingerprinting protection: A confusing feature
- FSD, Pluck,
and Below Deck Season 12
- Quick P2D
production update
- What
place for the Cyborgs in the Alliance of Flesh?
- Ты
согласен на получение персональных предложений и рекламных
материалов
- Falling
Into the Perfectionism Trap
- Ambsheets:
A spreadsheet for exploring scenarios
- Porteur bag
2
- Turning Billions
of Strings into Integers Every Second Without Collisions
- Flight Recorder in Go
1.25
- async
dns
- A Very
Early History of Algebraic Data Types
- Apple’s
Antitrust Playbook
- LLM
как инвалидная коляска при дефиците времени
- Cloudflare
bankrolls fascists
- slice
tails don’t grow forever
- Abundant
Intelligence
- Resurrect the
Old Web
- Walking
around the compiler
- How
I Vibe Coding? (Sept 2025 Edition)
- Dispatch
013: ARIA Safeguarded AI Programme, new faces, and a splattering of ink
lab notes
- Libghostty Is
Coming
- Берлин с
января по сентябрь
- Install
Slidgram in NetBSD
- Are
you an experienced software buyer? I could use some help.
- The Hunt
- A Year of No
Posts
- Apple
Watch is Better than Whoop and Oura
- A
better future for JavaScript that won’t happen
- My
visionOS 26 Review
- It’s survey time!
How has Go has been working out for you?
- Boring is good
- Making
Origami expressions easier to learn and use
- Making
family IT support effortless (and free)
- Custom
for designing, off-the-shelf for shipping
- How
I manage my bookmarks
- Steve
Jobs’s drafts | Elon Musk’s coinvestors
- Stations and
Transfers
- ACHTUNG!
- Dialing Up the
Internet Phonebook
- crates.io
phishing attempt
- Schrödinger’s
Chat
- How
to present to executives
- AI
as teleportation
- The Best
Brands for Enthusiasts
- Узбекистан
- Август
- color
npm package compromised
- Шаблон
для проектирования ПО
- Conventional
Comments
- What
is political agency?
- PEON - Prefixed
Entry Object Notation
- Deep
Research: From Front-End to Full-Stack, Graphics, or AI
- Сухо
(и мокро) про ретрит по Гоенке
- Метапись:
2024
- Вастрик ⛺ Кэмп
2025
- Podcast:
Netstack.fm, story of Rust’s networking with hyper
- What’s
cooking on SourceHut? Q3 2025
- Automating
the Hue Tap Dial Switch in Elixir via MQTT
- Talk: Почему
компьютеры не умеют считать? @ Podlodka
- Европейский
человек
- A
Week in Billund: LEGO House, LEGOLAND, and Lalandia
- [ОПЯТЬ
ПРО СЕВЕРНЫЕ ПОТОКИ или «1984» в действии]
- An
Open Letter to Everyone I’ve Butted Heads With
- Writing
Mac and iOS Apps Shouldn’t Be So Difficult
- I’ll
only buy devices with GrapheneOS
- How
and Why Don Jose Dissipated
- Rebuilding
Ditto
- Thank
you, Squarespace
- NixOS
PostgreSQL Major Version Upgrade
- Linear
scan with lifetime holes
- OCC:
Rebuilding my first PC - part 3 - more hardware woes
- Frankenstein’s
expression
- Half
my work is adding a cache
- My
favorite Panera interaction
- How
to end factory farming
- Recreationally
overengineering my Location History
- Visualizing
distributions with pepperoni pizza (and javascript)
- Let it work
- OCC:
Rebuilding my first PC - part 2 - hardware woes
- Lithe,
less analysis with Datalog
- AI is different
- hyper
HTTP/2 (Didn’t) MadeYouReset
- One
week with Claude Code on a legacy codebase
- Liveness
analysis with Datalog
- Ментор.
Что, как, куда?
- Adding
search to my static blog.
- The Timmy Trap
- Hype is a Business Tool
- warp v0.4
- Learn
Rust by Reasoning with Code Agents
- Losslessly
Changing Video Framerate
- The
anti-fragile culture
- We shouldn’t have needed
lockfiles
- LinkedIn removes
clear support for trans people
- Dispatch
012: Local-first talks, Automerge 3, and Scribbling on a Google
Calendar
- If you’re remote,
ramble
- The
product design talent crisis
- Today
my brain wanted to think about one of the first dates I ever went
on
- On
Chrome the Google login dialog shows up on top of the search
dialog
- We Are
Developers 2025 - conference in Berlin
- Who
needs git when you have 1M context windows?
- How I Do Support
and Community
- Enough
AI copilots! We need AI HUDs
- Renting
is for Suckers
- Still no
agents
- Farmors
Chokladkaka
- Agentic
development
- I Don’t Like
Imports
- Coding with LLMs in the summer
of 2025 (an update)
- Work with
Illustrators & Designers
- Форма, функция и
красота
- Выразительные тесты без
testify/assert
- AI
Test User
- Dynamic
Denial of Crawlers
- SourceHut is
now accepting payments in Euro
- Variadic
Generics ideas that won’t work for Rust
- Что если попросить
искусственный интеллект оценить художественную ценность мясных
фотографий?
- PEEK POKE
- Launch:
Technotes
- no feedback no
cry
- To
fluctuate is to exist as a human
- The
Story of Max, a Real Programmer
- Интерактивный тур по Go
1.25
- Иногда
они возвращаются.
- Setting
up an XMPP server with Prosody
- Bad cold
email
- Wildcard
HTTPS certificates with Certbot and Cloudflare DNS
- Contra
Ptacek’s Terrible Article On AI
- Optimization
is sucking the soul out of everything
- What
Google Translate Can Tell Us About Vibecoding
- LangGraph for complex
workflows
- 📊
Mood Is a Metric Too
- Lessons
From 9 More Years of Tricky Bugs
- Hypernormalization
and distrust
- We’re Still
Underestimating What AI Really Means
- Remark
on Rust’s 10th anniversary.
- Защита
прав о(б)суждаемых
- Ramblin’
Rod
- The
Narrative Fallacy
- git
diff –ignore-all-space makes code review way easier
- How I
program with Agents
- Report
on variadic generics discussions at RustWeek 2025.
- The
unreasonable effectiveness of lightning demos
- When Search
Accidentally Worked
- The web
program manifesto
- How to deal with
Rust dependencies
- Retreating to
Safety
- Human coders are still better
than LLMs
- Pulsar
X2 CrazyLight
- What’s
cooking on SourceHut? Q2 2025
- Saying Bye to
Glitch
- Those
annoying long URLs causing overflow?
- Why
is your open source project still hosted on GitHub?
- Apple
Turnaround
- fuzzy: Нечеткое сравнение
строк в SQLite
- No
matter what you do, always leave a breadcrumb
- LLM Memory
- async/await versus the Calloop
Model
- [ПОЧМУ
БЕЛЫЙ ДОМ УВОЛИЛ ИЛОНА МАСКА?]
- I
didn’t transition for the metaphysics
- Claude Code
- Apple
Turnover
- Today,
I am writing about a fork and, no, it’s not a metaphor for anything
please stop asking
- Россия,
Украина, Глобалисты и Антиглобалисты: статус на 8 мая 2025
- notgull versus
burnout
- Forget
about screen rotation toggle forever
- HOME
- Alien
Clay
- Write
a very concise static site generator with Origami expressions
- The history of
album art
- Hyperspace
Update
- Путешествия
2025
- Workshop
House case study
- Every
Love Story Is A Ghost Story
- Categorize Your
Dependencies
- Differential Coverage
for Debugging
- Solution-space
Taste
- Моя
формула оценки фильмов (и кино)
- Building
multi-step login forms that work well with password managers
- Postcards from
Phoenix: Tale of a (finally successful) mission
- Why
change role to AI Engineering
- Hello Tokyo!
- CSS
Naked Day
- JAWSM - a JavaScript
to WASM compiler
- Подготовка
к собеседованию на продуктового аналитика. Задачи
- Now Page
- SICPelago
- Gamer Games
for Non-Gamers
- Type-safe
lookup tables
- The
case against conversational interfaces
- Surround
yourself.
- Moving To
Substack
- TaxHacker
- Announcing:
Interesting Reads
- Scoping
a Local-First Image Archive
- Conflict-free
Database over Virtual File System
- Ghostty
- Browse No
More
- AI Innovator’s
Dilemma
- from
hledger to ledger
- Photos Page
- A
Perplexing Javascript Parsing Puzzle
- Conquering
Carriage Returns and Permissions: Ensuring a Smooth Cross-Platform Git
Workflow
- Simple
yet powerful music browser: SongOwl
- Using
Reverse WebSocket Connections in Go to Reach Services Behind
NAT
- SongPocket
4
- Fullscreen
- Blue
Ghost
- Investing
- More
Good Programming Quotes, Part 6
- Is
Rust a good choice for business apps?
- The “Good”
Internet
- Ёбаный
стыд
- High
Ownership, High Urgency
- My
tricks and accessories for working ergonomically on a laptop while on
the go
- When Imperfect
Systems are Good, Actually: Bluesky’s Lossy Timelines
- You
don’t need Python to build AI products
- Вайб-кодинг
- Как не
превратиться из хорошего программиста в плохого менеджера
- Programming
Conference – Jfokus Stockholm 2025
- Smuggling
arbitrary data through an emoji
- Message me
whenever
- The
Snacks & Cereals of 2024
- Открытия
2024
- 451 градус
по Фаренгейту
- Мій 2024
- Сумерки
OpenStreetMap
- ROSE-8 in
customasm
- Building
Bauble
- SongPocket:
replacing the engine
- How I
program with LLMs
- Linux is
free and your mind is valuable
- A
very interesting interview with a successful trader
- Making
shavings
- A
Wintery Jaunt up Ben Lomond
- Как прошёл мой
2024
- The UK
Online Safety Act
- Putting
Curveball in maintenance mode
- The
Shell is a Program
- Launch:
Teleplayer
- Конечные и
бесконечные игры
- Improved home
printing
- Duncarnock
Fort (The Craigie) 360 Drone Photo
- Self-guaranteeing
promises
- There is no
path
- Apple
заблокирoвали подкаст Эхо Москвы
- Against best
practices
- Автори
двох кращих книг року
- A
bare-minimum ActivityPub server from scratch
- Launch:
Spool
- Walking
behind her
- The Charter City
Problem: Lessons from Próspera
- Jia Tanning Go
code
- Vintage
Computing Festival Berlin 2024, Report
- Generators
with UnpinCell
- Self-hosting
workshop in Initlab
- Using aerc as my
daily email client
- In
the future using top-level await might be cause a backwards
compatibility break in Node
- UnpinCell
- In
search of the simplest all-in-one blade sharpener
- No, You Can’t
Model That
- Rewriting
Rust
- Focusito:
как из моей прокрастинации появился помодоро таймер для Mac
- Jetstream:
Shrinking the AT Proto Firehose by >99%
- Последний
пост
- SVG, тригонометрія
та стрілки крутого повороту
- The 8 Mile
Method
- Thank
Goodness I’ve Written Some Ad Music
- [Video] Nix
explained from the ground up
- Tight
Aggressive Entrepreneurship
- The Startup
Designer
- New feed entry point
· Tinkoff
- Big IDGAF Energy
- Quote-unquote
“macros”
- Dunning
you, Kruger me.
- 6 Open Source
Tools to Query OpenStreetMap
- CrowdStrike’s
Impact on Aviation
- Pinned
places
- Hash-Based Bisect
Debugging in Compilers and Runtimes
- Ten years of
Overcast: A new foundation
- Как
на самом деле запоминать всё, что прочитал
- Run
Meetings like a DM
- Эфир
про сквозную аналитику с Максимом Епифановым
- Introducing
SpaceShoes
- Learning
to Live with AI
- OAuth 2
- Отладка
через статистику
- Nephew of all
demos
- Review:
The Em Travel Backpack by Mokobara.
- Goa,
India
- Курс по
С
- Eradicating N+1s: The
Two-phase Data Load and Render Pattern in Go
- Oh,
It’s This Guy Again
- What Does a Great Cup of
Coffee Taste Like?
- Safe terminal escape
codes
- Known
Purpose and Trusted Potential.
- One Idea One
Week
- Faster and worse:
рекомендую
- Software
Engineer Portfolios
- Complicated
Sticks.
- Thread -
the tech we can’t use or teach
- The Notifier Pattern for
Applications That Use Postgres
- Web APIs:
Enriched DX By Disallowing Unknown Fields
- How
I’m doing the Internet in 2024
- Rewrite
Search
- Woodworking
as an escape from the absurdity of software
- Programming
as Art, Not Business
- Ищу
Sales & Marketing Operations Coordinator себе в команду
- The xz attack shell
script
- Приглашение
на Burning Man 2024
- fixed gear
text editors
- Is Chihuaha a
Dog?
- Crows, a Rust and
WASM based load testing tool
- Sabbatical
- Two Month Update
- Sverige
News
- A Copy
of a Copy of a Copy: the Story of FDA Medical Device Clearances
- The only
thing I want AI to help me automate are its own users
- Как я боролся со
спамом в Telegram и что из этого вышло
- The
hater’s guide to Kubernetes
- On
Commoditization, Pricing, and Assets
- PARA
Кэла Ньюпорта: как ведёт заметки автор книг «Цифровой минимализм» и «В
работу с головой»
- Microblog:
TestMain can cause one to question reality
- Adding
Keyboard Shortcuts to a 24 Year Old Government Website with
Userscripts
- Большое
лодочное приключение. Из Рединга в Лондон, сквозь шторм и мель
- Blowing
out some cobwebs
- All My
Thoughts After 40 Hours in the Vision Pro
- jsonfile: a quick hack
for tinkering
- Chess
puzzle book generator
- How to
Learn Nix, Part 49: nix-direnv is a huge quality of life
improvement
- Do
More With What You Have
- Дети и
деньги
- On love &
relationships
- Alan
Wake 2
- Starfield
- Мысли о
продлении жизни
- Пять
недостатков цеттелькастен
- Дайджест 19
- xargs: an example
for parallel batch jobs
- Improved
Youtube RSS/Atom feed
- Design
career paths
- Can
Rust prevent logic errors?
- On
Buddhism
- Stocketa
- Переписал
сайт на SvelteKit
- Сервисы
и программы, за которые я с удовольствием* плачу
- Cloudflare
DNS
- Comments
in stories
- Жизнь—агент
создания знания
- The
complex simplicity of my static websites
- Batch PDF
Editing
- Malaysian fuel
prices and open data
- Multi-layered
calendars
- Явный дизайн
в разработке программ. Предварительные выводы
- The Aura of
Care.
- Fulcrum
- ***
- 10 Thoughts from
the Fourth Trimester
- Generative
AI and AI Product Moats
- Making
myself uncomfortable again
- MutexProtected:
A C++ Pattern for Easier Concurrency
- Excellence
is a habit, but so is failure
- Hummingbirds are
Evil! Procrastination, Laziness and Play
- Short: WiP
- Rust to
WebAssembly the hard way
- Linky
- FrogFind
- One
Thing
- Еще
один сценарий для waiting time paradox
- Remaking Old
Computer Graphics With AI Image Generation
- Спасибо,
пока!
- Как я искал (и нашел)
работу в США
- Generalizing
Secret Santa with integer programming in Julia
- Orientalism - to
Fetish and Back Again
- Dear Oracle, Please Release
the JavaScript Trademark
- Как я
выучился на разработчика в Яндекс.Практикуме
- Display
Items
- Campaign
ideas
- Mystery
of link imbalance #2: как можно починить MRU-пул
- NodeJS packages
don’t deserve your trust
- How DNS
works
- The
Overcast Redesign: Part One
- Deep
Neural Nets: 33 years ago and 33 years from now
- Implementing a
size-bounded LRU cache with expiring entries for my DNS server (in
Rust)
- Linguistic
Relativity and the Tyranny of the Compiler
- Что стоит на
моем Mac в 2024 году
- The
power of defaults
- Printf(“%s
%s”, dependency, injection).
- Browser
plugin: Readable.
- 5000x faster
CRDTs: An adventure in optimization
- Видео-тур по
лодке: в гости заглянул Константин Пинаев (moscowlondon)
- A
from-scratch tour of Bitcoin in Python
- Short
Story on AI: Forward Pass
- Robinhood
или как начать инвестировать в акции
- A
few bytes here, a few there, pretty soon you’re talking real
memory
- The
story of the one line fix
- Как
выбрать внешний монитор для MacBook и не пожалеть о покупке
- Whoops… 000.txt
- Minimalist HTML
- Revel in Its
Difficulty
- Watchman
- Diet +
Weight loss
- Ad-Hoc
Data Visualisation in the Terminal with gnuplot
- Concurrent
Compaction in Automerge Repo