Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 1,535 posts.

2024
882

Creating an autopilot in X-Plane using Python

Introduction Today’s post will take us in a slightly different direction than the last few. Today’s post will be about hooking up some Python code to the X-Plane flight simulator to enable development of an autopilot using PID (proportional-integral-derivative) controllers. I’ve been a fan of flight simulators for…

883

Big Ball of Mud (1999)

While much attention has been focused on high-level software architectural patterns, what is, in effect, the de-facto standard software architecture is seldom discussed. This paper examines the most frequently deployed architecture: the BIG BALL OF MUD

887

Async Rust in Three Parts

Async/await, or "async IO", is a new-ish ​ Rust added async/await in 2019. For comparison, C# added it in 2012, Python in 2015, JS in 2017, and C++ in 2020. language feature that lets our programs do more than one thing at a time. It's sort of an alternative to multithreading, though Rust programs often use both…

888

Dividing unsigned 8-bit numbers

Division is quite an expensive operation. For instance, latency of the 32-bit division varies between 10 and 15 cycles on the Cannon Lake CPU, and for Zen4 this range is from 9 to 14 cycles. The latency of 32-bit multiplication is 3 or 4 cycles on both CPU models.

889

How to improve the RISC-V specification

My main project is to create an executable spec of the Intel Architecture but, every now and then, I get to take a broader look at ISA specifications and think about the strengths and weaknesses of other ISA specs: what makes them work well; and what techniques they could borrow from other specifications. Earlier this…

890

Keeping a Changelog at Work (2020)

What did you do at work today? How about last week? I spent a couple of days in quarterly business reviews, and wrapped up yearly planning activities for AWS Data Exchange and AWS Marketplace. I also added some unit tests to a project that I am onboarding into.

891

To Nerves from Elixir

I adore Nerves. I recently joined the core team. And I'll be doing my best to help people get along with this lovely way to co-mingle hardware and massively concurrent reliable software.

893

Rust's Ugly Syntax (2023)

People complain about Rust syntax. I think that most of the time when people think they have an issue with Rust's syntax, they actually object to Rust's semantics. In this slightly whimsical post, I'll try to disentangle the two.

894

LLMs can't do probability

I've seen a couple of recent posts where the writer mentioned asking LLMs to do something with a certain probability or a certain percentage of the time. There is a particular example that stuck in my mind which I've since lost the link to (If you're the author, please get in touch so I can link through to you): The…

900

The Birth of Standard Error (2013)

Earlier today Stephen Johnson, in a mailing list run by the The Unix Heritage Society , described the birth of the standard error concept: the idea that a program's error output is sent on a channel different from that of its normal output. Over the past forty years, all major operating systems and language libraries…