The Animated Guide to Emacs Paredit
Dan's blog
Topics /
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
Dan's blog
Registers in Vim are best thought of as scratch spaces for text, some of which are automatically filled by the editor in response to certain actions. Learning how to use registers fluently has a lot of subtle benefits, although it takes some getting used to because the syntax for using them is a little awkward.
Github recently drafted an update to their Terms Of Service. The new TOS is potentially very bad for copylefted Free Software. It potentially neuters it entirely, so GPL licensed software hosted on Github has an implicit BSD-like license. I'll leave the full analysis to the lawyers, but see Thorsten's analysis .
It has been a year and a half since I wrote the first version of this tutorial and it is time for an update. Knet (pronounced “kay-net”)...
I recently picked up an embedded project in which I needed to build a highly customized full system image with minimal boot times and NetBSD was the best choice for it. Let's look at why its build system helps.
In this tutorial, you’ll learn how to build a game like Cut the Rope with SpriteKit in Swift, complete with animations, sound effects and physics!
I'm pleased to announce the 1.0 release of spaCy, the fastest NLP library in the world. By far the best part of the 1.0 release is a new system for integrating custom models into spaCy. This post introduces you to the changes, and shows you how to use the new custom pipeline functionality to add a Keras-powered LSTM…
This article will teach you about self-attention mechanisms used in transformer architectures and large language models (LLMs) such as GPT-4 and Llama.
We write about Windows Internals, Hypervisors, Linux, and Networks.
Numerical Optimization is one of the central techniques in Machine Learning. For many problems it is hard to figure out the best solution directly, but it is relatively easy to set up a loss function that measures how good a solution is - and then minimize the parameters of that function to find the solution.
This is really the same article as Part 1 - Hello CUDA, but with the focus on OpenCL, so I'll skip most of the narration and just show you the code.
Lambda Screen allows you to draw images using terms of pure lambda calculus. By using fixed-point combinators, you can even create infinitely detailed fractals.
This was a post on [Quora](https://qr.ae/pG0hvt) and I thought I have more to say than I can write in a reply, so here goes, a blog article inst...
CVE is a database used for categorizing and reporting security vulnerabilities in software. There are various kinds of vulnerabilities that can be reported. Some of them are caused simply by bugs in the program logic (like a recent CVE reported in Cargo), but some of the most nasty ones are caused by memory unsafety…
Every now and then, there’s a post predicting the death of the Java language. The funny thing is that none of them writes about a date. But to be honest, they are all probably true. This is the fate of every language: to disappear into oblivion - or more precisely to be used less and less for new projects.
Will the programmers of tomorrow be shipping products written without touching too much code?
This couple of months I’ve been casually looking at daily CPAN uploads, because I entered the Once-a-day-releases game. I notice that the uploads are getting scarcer and scarcer. So today I d…
A short post about a neat little Zig idiom. Consider your average {sum type, variant, tagged union, enum, alt}:
Why I swapped GNU stow's symlink farm for chezmoi: one command to bootstrap a Mac with Homebrew packages and macOS settings, a small daily sync loop, and agent skills shared between Claude Code and Codex.
After quite a long while, Hyprland 0.55 is upon us! This is an enormous update by each measurable metric - commits, contributors, features and changes.
DSLs are suggested to be an aid for the users that want to extend the programs they work with easily, but do they work?
Every March, developers worldwide each try to make a roguelike game in less than 168 hours as part of the 7DRL Challenge . Roguelike games are hard , involving procedural level generation, pathfinding, line-of-sight algorithms, and more dijkstra maps than you can imagine.
Will ML code generation like GitHub Copilot replace coding by hand? We say no: developers still maintain generated code, so abstraction matters.
I’m a big fan of “sharp tools”. These are tools that are powerful enough to be hugely helpful or harmful, depending on how they’re used. Most forms of direct…
Learn how memory maps (mmap) accelerate file I/O, reduce latency, and improve app performance in Unix and Go with real-world benchmarks.