Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 14,534 posts.
Detecting when LLMs are uncertain
A deep dive into a new reasoning technique called Entropix.
Modern Functional Programming: The Onion Architecture
The onion architecture may be the future of large-scale FP
Build your own Google TV using Raspberry Pi, Node.js and Socket.io
If you’re connecting to your rPi via SSH, you’d have to update your DISPLAY environment variables by issuing
Game Programming in Prolog
This article explains how a game can be made in Prolog by leveraging the hidden power of logic programming. Inspired by the elegance of data-driven design and declarative programming paradigms, I will be explaining a new way of designing game rules which can at the same time be used as the source code of the gameplay…
Prolog Basics Explained with Pokémon
Demonstrating the basics of logic programming with data from the Pokémon games.
The first Django site to run on Python 3
This page was generated by Django 1.5.dev20120815104632 and Python 3.2.3 (default, Aug 15 2012, 13:02:32) [GCC 4.4.5] on Sept. 1, 2012, 3:42 p.m. (Paris time).
Curl Security Audit
"the overall impression of the state of security and robustness of the cURL library was positive." I asked for, and we were granted a security audit of curl from the Mozilla Secure Open Source program a while ago. This was done by Mozilla getting a 3rd party company involved to do the job and footing … Continue…
Signed distance functions in 46 lines of Python
A walkthrough of 46 lines of code that render a 3D ASCII donut using signed distance functions.
What Zig felt like, coming from Rust
What Zig felt like, coming from Rust Intro I’ve spent the last 7 years as a Rust developer, working mostly on open source projects, and I’d like to think I’ve built a solid feel for the language and its ecosystem along the way. I gravitate toward the functional side of Rust like clean functions, expressive types, that…
100 days with Rust: a series of brick walls
A few thoughts on Rust after a few months of regular use.
C++ 20: The Core Language
My last post C++20: The Big Four started with an overview of concepts, ranges, coroutines, and modules. Of course, C++20 has more to offer. Today, let’s continue my overview of the core language.
I've been merging microservices back into the monolith
Ben Nadel explains why his team has been hard at work merging "microservices" back into the "monolith". His team is not anti-microservices. And, in fact, both the expanding and the contracting of serv
Less is more agile
Dave Farley and Allen Holub are two people that I respect hugely when it comes to Software Development. I’ve been following them on twitter for quite a while, and am always taken in about their takes on driving continuous delivery and “lowercase agile” forward. So when both came together for Dave’s Engineering Room…
Low Code Software Development Is a Lie
I’ve been writing custom software for a long time and one of the things that annoys me most is when a client adopts the position that there is a silver bullet which will reduce or remove the inherent complexity of this task. This happens more often than you’d think and guess what? They are almost always wrong. Perhaps…
Verb-Noun vs. Noun-Verb
Behind the scenes - how I'm making redblobgames.com - interactive explanations of game development algorithms and math
Optimizations can have unexpectedly large effects when combined with caches
This post is about a non-obvious interaction between performance optimizations and LRU/time limited caching.
Solving Factorio Quality
I play Factorio the normal way: by writing matrix math code to plan the factory.
Text showdown: Gap Buffers vs. Ropes
I have been working on a hobby project to reimagine the C core of Emacs in Rust. On this journey, I reached the point where I needed some way to represent the text of a buffer. The simplest approach is to just use a large string or array of lines. However these each suffer from poor performance as either the size or…
Rustgo: Calling Rust from Go with near-zero overhead
Go has good support for calling into assembly, and a lot of the fast cryptographic code in the stdlib is carefully optimized assembly, bringing speedups of over 20 times.
How close can pure functional programming get to C?
In Why Lean is Faster Than Rust , the author shares an impressive result: a DEFLATE compression library written in Lean 4 , a functional programming language and proof assistant, outperforming an equivalent Rust package that crates.io says has been downloaded over a billion times. From the article:
LLM function calls don't scale; code orchestration is simpler, more effective
TL;DR: Giving LLMs the full output of tool calls is costly and slow. Output schemas will enable us to get structured data, so we can let the LLM orchestrate ...
Any program can be a GitHub Actions shell
In GitHub Actions, you can use the shell keyword to specify the shell that runs a given run: block. This keyword is optional for workflows but mandatory for action definitions.
Git Diagramming "The Weave"
We all know the current US President is one hell of an orator and often assures us that he has “the best words”: