Navier-Stokes fluid simulation explained with Godot game engine
When I first stumbled upon fluid simulations in game dev I was amazed on how good the effect could be. I really wan...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,540 posts.
When I first stumbled upon fluid simulations in game dev I was amazed on how good the effect could be. I really wan...
I had free access to GitHub Copilot for about a year, I used it, got used to it, and slowly started to take it for granted, until one day it was taken away. I had to re-adapt to a life without Copilot, but it also gave me a chance to look back at how I used Copilot, and reflect - had Copilot actually been helpful to…
JavaScript and C both make you maintain your invariants the most painful way possible. Happily, there are better alternatives these days.
A list of things that were not supposed to be Turing-complete, but are.
Robert O'Callahan. Christian. Kiwi. Software guy. All content human-authored unless otherwise noted.
A blog about modern PHP, the web, and programming in general. Follow my newsletter and YouTube channel as well.
Just so, generic code is replaced by its concrete instances, which are faster and easier to comprehend (at first).
Grocery shopping has been one of my least favorite chores, even before the pandemic. Unlike many people I know, I always preferred online shopping over going to the supermarket. Now it’s not a matter
“Hey, you. Yes you, that function over there. When you’re cleaning up please remember to restore all of my registers. Yes, that one too – what do you think this is, Linux?”That’s the problem I was …
The {fmt} formatting library is known for its small binary footprint, often producing code that is several times smaller per function call compared to alternatives like IOStreams, Boost Format, or, somewhat ironically, tinyformat. This is mainly achieved through careful application of type erasure on various levels…
Any company using Kubernetes eventually starts looking into developing their custom controllers. After all, what’s not to like about being able to provision resources with declarative configuration: Control loops are fun, and Kubebuilder makes...
Concise learning resource for beginner to intermediate level Vim users
Sometimes compilers can surprise and delight even a jaded old engineer like me
A couple of Sundays ago, I wrote an implementation of Dijkstra’s algorithm in Clojure. The core algorithm came to twenty-five lines. I banged out the code as...
Complexity has to live somewhere; but it does not have to live everywhere.
The following article summarizes my lessons learned from the books Deep Work and Flow. It can be the way to achieve a fulfilled life. Cal Newport and Mihaly Csikszentmihalyi have written outstanding books in their ...
SQLite has evolved far beyond a simple embedded database. Explore modern features like JSON, FTS5, window functions, strict tables, and more.
How far can I get in Advent of Code if I do all the problems in Dreams?
Copyright 1999 by Craig A. Finseth. Contact the author with questions about distribution rights.
The Spring Lisp Game Jam 2024 ended one week ago. 48 games were submitted, a new record for the jam! This past week has been a time for participants to play and rate each other’s games. As I explored the entries, I noticed two distinct meta-patterns in how people approached building games with Lisp. I think these…
Understanding large codebase can be incredibly difficult. In this post I walk through how I learn a codebase use turbopack as my case study.
Explore SQLite Internals: How The World's Most Used Database Works by Abdur-Rahmaan Janhangeer. Deep dive into database internals, systems engineering, and advanced Python.
The heap is a data structure that I use all the time and that others somehow use rarely. (I once had a coworker tell me that he knew some code was mine because it used a heap) Recently I was writin…