Topics /

Software Engineering

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

2023
1411

PostgreSQL 16 Bi-Directional Logical Replication

Introduction In this blog, we'll be going over some more advanced topics new in Postgres 16. Having some experience with Linux, Postgres, and SQL is necessary as we'll not only be going over these new features but also how to implement them. This blog was written using PostgreSQL 16 (Development Version) running on…

1416

Rust for Professionals

This is a short introduction to Rust, intended for developers that already know another language. In the examples, Rust is compared with TypeScript, JavaScript or Java, sometimes with C++ or Kotlin.

1423

The Case for Bash (2021)

Bash is oft-maligned: you hear it sneered at in sentences like “our continuous integration pipeline is just a pile of bash scripts .” It is commonly regarded as unintelligible and thus unmaintainable. The pile of bash scripts are the toxic byproduct of an infrastructure team understaffed, pressed for time, unwilling…

1427

-Werror Is not your friend (2017)

22 May 2017 by Phillip Johnston • Last updated 27 October 2023I want to make a few points up front to short-circuit common misunderstandings with this article: I have a zero warning policy on my projects. I turn on a lot of warnings. -Wall, -Wextra, and a whole host of specific warning flags. I supplement … Continue…

1430

Practical Libc-free threading on Linux

Suppose you’re not using a C runtime on Linux, and instead you’re programming against its system call API. It’s long-term and stable after all. Memory management and buffered I/O are easily solved, but a lot of software benefits from concurrency. It would be nice to also have thread spawning capability. This article…

1431

Who invented vector clocks?

Back in spring 2020, I was wrapping up the distributed systems course I was teaching, and for the last lecture, decided to spend a little time poking at the question of who actually invented vector clocks. Most people who need something to cite for vector clocks cite Friedemann Mattern’s “Virtual Time and Global…

1432

Iterating on Testing in Rust

With the release of rust 1.70, there was some surprise and frustration that unstable test features now require nightly , like all other unstable features in Rust. One of the features most affected is --format json which has been in limbo for 5 years . This drew attention to a feeling I've had: the testing story in…