Topics /

Software Engineering

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

2020
1146

Building a high performance JSON parser

JSON is important, damn near everything that we do as programmers or operators involves JSON at some point. JSON decoding is expensive, if your product talks JSON then performance of marshalling data in and out of JSON is important. This is a talk about designing an efficient replacement for encoding/json.Decoder .

1147

On the Beauty of Python's ExitStack (2015)

I believe Python's ExitStack feature does not get the recognition it deserves. I think part of the reason for this is that its documentation is somewhere deep down in the (already obscure) contextlib module because formally ExitStack is just one of many available context managers for Python's with statement . But…

1148

Text layout is a loose hierarchy of segmentation

I love text layout, and have been working with it in one form or other for over 35 years. Yet, knowledge about it is quite arcane. I don’t believe there is a single place where it’s all properly written down. I have some explanation for that: while basic text layout is very important for UI, games, and other contexts…

1151

Per Brinch Hansen's books on compilers

Brinch Hansen was one of the pioneers of concurrent programming and operating systems (kernels). In the 1960s, Brinch Hansen worked at the Danish computer company Regnecentralen, first in the compiler group headed by Peter Naur and Jørn Jensen, and, later, as the chief architect of the RC 4000 minicomputer and its…

1152

A gentle intro to assembly with Rust

One of the things I’ve wanted to do for a while is really dig into assembly and get into the weeds of how programs actually run. A rework of the asm macro has recently landed in nightly rust so it seemed like a good time.

1153

The future of .NET Standard

Since .NET 5 was announced, many of you have asked what this means for .NET Standard and whether it will still be relevant. In this post, I'm going to explain how .NET 5 improves code sharing and replaces .NET Standard. I'll also cover the cases where you still need .NET Standard.

1157

Timeouts and cancellation for humans (2018)

Your code might be perfect and never fail, but unfortunately the outside world is less reliable. Sometimes, other people's programs crash or freeze. Networks go down; printers catch on fire . Your code needs to be prepared for this: every time you read from the network, attempt to acquire an inter-process lock, or…

1162

What the Heck Is Pyproject.toml?

Recently on Twitter there was a maintainer of a Python project who had a couple of bugs filed against their project due to builds failing (this particular project doesn't provide wheels, only sdists). Eventually it came out that the project was using a pyproject.toml file because that's

1170

PyOxidizer 0.8

I am very excited to announce the 0.8 release of PyOxidizer , a modern Python application packaging tool. You can find the full changelog in the docs . First time user? See the Getting Started documentation.