Eighteen months of Django
Some best practices I've picked up after working on Django products over the past 18 months
Topics /
The most popular blog posts about software engineering on Hacker News. 21,844 posts.
Some best practices I've picked up after working on Django products over the past 18 months
How do git worktrees help you work on more than one branch at the same time, and how does that differ from virtual branches in GitButler?
A primer and very high-level overview on what Golem Network is and what it can do.
prompt engineering is nothing but an attempt to reverse-engineer a non-deterministic black box for which any of the parameters below are unknown: - training set - weights - constraints on the model - layers between you and the model that transform both your input and the model's output that can change at any time …
Do you remember how we first met, back in 2012? I thought your functional approach was fresh, and different. For a while I believed we were made for each other. A first project was a success; on my own I was comfortable with the good parts of you. But as soon as I started working in teams writing Scala, your immense…
Before we get into this kind of stream-of-consciousness outline, I'd like to note that very topically to this, over at the Spritely Institute (where I'm CTO, did I mention on here yet that I'm the CTO of a nonprofit to improve networked communication on the internet on this blog? because I don't think I did) we…
For MS-Windows, download the self installing executable . Signed MS-Windows files are available on the vim-win32-installer site ( gvim_8.2.0012_x86_signed.exe is recommended) For Unix you probably want to get the latest version using git, see the github page Otherwise see the Download page for options.
Update: This post received quite a lot of healthy discussion on Hacker News. You can follow that conversation here: https://news.ycombinator.com/item?id=18119570
You visit a seemingly simple website with little or no interactivity, yet somehow it sends you 2 MB of JavaScript to digest. You're half way down the article that you're reading and suddenly: client-side rendering kicks in, resets everything. You try to find your way back but the page is now janking around. Your…
Legacy software systems in 2026: why they are still used, myths about legacy and Java, tips from our engineers, and when to upgrade Java.
Results dashboard with the yearly (unofficial) Advent of Code participant survey
I've noticed more than once that some programmers are confused about the direction in which the stack grows on x86, and what "top of the stack" and "bottom of the stack" mean. It appears that this confusion is caused by a basic mismatch in the way people are used to thinking about stacks, and in the way the stack on…
4NF presented in a straightforward way, with some investigation of history of teaching 4NF.
One of Common Lisp’s more advanced features is its condition handling system, which is a powerful generalisation of other languages’ exception handling systems. I first became aware of condition handling from Peter Seibel’s Practical Common Lisp , chapter 19 . But if I’m honest I’ve only very recently understood what…
A deep dive into how I automated my now page on my personal website by creating a Go script and making use of GitHub Actions.
This tutorial will walk you through building a 3x5 LED matrix controlled by a Raspberry Pi Pico using tscircuit.
Claude computes a nine-loop amplitude in N=4 super-Yang-Mills
Using graph theory and Ryanair route data to find cheap multi-city flight loops through Europe.
Game Off, our annual game jam (a hackathon for building games) returns this weekend. Participants will be given a secret theme on November 1 and will have the entire month…
There is a pattern I’ve learned while using Zig which I’ve never seen used in any other language. It’s an extremely simple trick which - when applied to a data structure - reduces memory usage, reduces memory allocations, speeds up accesses, makes freeing instantaneous, and generally makes everything much, much…
The current structure definition of the ion system heap involves a zero sized array:
Perhaps, readers remember my article titled Last line effect. It describes a pattern I′ve once noticed: in most cases programmers make an error in the last line of similar text blocks. Now I want...
How to ship your apps on Debian and derivatives.
A common situation in asyncio Python programs is asynchronous initialization. Some resource must be initialized exactly once before it can be used, but the initialization itself is asynchronous — such as an asyncpg database. Let’s talk about a couple of solutions.