blogsoni

hi

about unsub log in
Clojure as a dependency
Treachery of Representation
Let's Learn x86-64 Assembly! Part 1 - Metaprogramming in Flat Assembler
Learning in public
Building a PC, Part IX: Downsizing
Let's Learn x86-64 Assembly! Part 0 - Setup and First Steps
Fixing the dark mode flash issue on server rendered websites
Stop Spreading Crap at My `$HOME`
I Accidentaly Wrote A Compile-Time Executable State Machine
So you're a Remote Worker Now
How to fix NPM link duplicate dependencies issues
Bruteforcing Beautiful Cellular Automata Rulesets with Golang
The Confusing Active Record Pattern
Low-Bandwidth Infrastructure for Remote Work Created with Scripts
Essential Ticket Skills - Ticket Management
Running scheduled cross-browser end-to-end tests on Github CI
Simple OpenGL Mesh Shader Example
An idiot’s guide to animation compression
New server. New system. New PostgreSQL database
The Vulpine Citrus
Browser Startup Comparison
Typhoons and mold
sylph strategy
Writing an efficient Vulkan renderer
FreeBSD on a Raspberry Pi
Indenting cond forms
Shadow Terminator in Takua
Approximating Subsurface Scattering With Spherical Gaussians
Easier ssh with .ssh config
Easier ssh with .ssh config
Easier ssh with .ssh config
Hacking on Clang is surprisingly easy
SPIR-V vec3 buffers
SPIR-V vec3 buffers
The Good, the Bad and the Ugly Standup
A Reply to _Let's stop copying C_
A (a few) ops lessons we all learn the hard way
Learning from data
Careful with that middleware, Eugene
No, dynamic type systems are not inherently more open
HLSL Viewport Clamping trick
HLSL Viewport Clamping trick
brainfuck.js
Goodbye, Clean Code
Behavior Trees – Breaking the cycle of misuse
stdarg And The Case Of The Forgotten Registers
Word Champions
Mastodon and fediverse tools
Open source games what I like
Gemini (the protocol) tools