Topics /

Software Engineering

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

2024
932

The costs of the i386 to x86-64 upgrade

If you read my previous article on DOS memory models, you may have dismissed everything I wrote as “legacy cruft from the 1990s that nobody cares about any longer”. It's time to see how any of that carried over through the 16-bit to 64-bit evolution.

937

Defining Statistical Models in Jax?

This is Bob. And I’d like to know the best way for us to code a bunch of models in JAX to use to evaluate parallel algorithms including normalizing flows. I’m going to dump out my current thinking, but I’m really hoping to get feedback from experts on the best way to do this without starting a flame war in the…

938

What factors explain the nature of software?

I sometimes find myself asked to give advice on how organisations should go about creating software, but often my advice doesn’t gel with those who sought it. Sometimes that’s because only one answer was ever considered acceptable; sometimes I am ignorant of important wider context and my answer is unworthy of…

950

Let futures be futures

In the early-to-mid 2010s, there was a renaissance in languages exploring new ways of doing concurrency. In the midst of this renaissance, one abstraction for achieving concurrent operations that was developed was the “future” or “promise” abstraction, which represented a unit of work that will maybe eventually…

953

Bit-banging a BASIC Birthday

I spent this summer building a new app, for a machine that hasn’t been on the market since 1980 and wasn’t built to support graphics, sound, connectivity or even lowercase letters, sold by a company that went bankrupt a decade ago, tailor-made for an audience of one: my dad, who celebrated his 70th birthday this past…

955

X is justifiably slow (2022)

I regularly hear or read statements like this: “X is slow but this is to be expected because it needs to do a lot of work”. It can be said about an application or a component in a larger system, and can refer to other resources that aren’t time. I often find these profoundly unhelpful as they depend much more on the…

959

Borrow checking without lifetimes

This blog post explores an alternative formulation of Rust’s type system that eschews lifetimes in favor of places . The TL;DR is that instead of having 'a represent a lifetime in the code, it can represent a set of loans , like shared(a.b.c) or mut(x) . If this sounds familiar, it should, it’s the basis for polonius…