Topics /

Software Engineering

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

2021
242

From First Principles: Why Scala?

Scala, first appearing in 2004, is neither an old stalwart nor a new player in the programming language market. This post will discuss the unique combination of features that Scala provides and how it compares to other languages on the market, diving beneath the superficial experience to explore the fundamentals of…

249

Io_uring is not an event system

I’ve been hearing about io_uring on and off for the last couple of years. Its a relatively new technology in Linux to allow high-performance IO with very few overheads. Whenever its been mentioned, its usually been presented as a new alternative to select, poll and epoll. This led me to believe that it was just the…

250

Firefox's Optimized Zip Format

This post is about minimizing amount of disk IO and CPU overhead when reading Zip files. I recently saw an article about a new format that was faster than zip. This is quite surprising as to my mind, zip is one of the most flexible and low-overhead formats I’ve encountered. Some googling showed me that over past 11…

251

Power consumption of Game Boy flash cartridges

Flash cartridges (= "carts") are commonly used to run Game Boy ROMs, such as homebrew games or dumped officially released games, on real hardware. Different kinds of flash carts with various features and performance characteristics have been available for a long time, but flash carts have in general the reputation of…

259

Python Best Practices for a New Project in 2021

Intro The goal of this tutorial is to describe Python development ecosystem. It can be helpful for someone coming to Python from another programming language. They say that you should stick to algorithms and data structures, that you can learn a new language in just a couple of weeks, that it’s just a new syntax. I…

260

Word-Aligned Bloom Filters

Programmers often need to 'filter out' data. Suppose that you are given a database of users where only a small percentage are 'paying customers' (say 5% or less). You can write an SQL query to check whether a given user is indeed a paying customer, but it might require a round trip to your database … Continue reading…

264

On navigating a large codebase

A while ago, I’ve been working on a very large codebase that consisted of a few million lines of code. Large systems are usually a big mess and this one was no exception. Since this is a rather common problem in software engineering, I thought the internet would be littered with stories about this topic. There is a…

267

Things I learned while developing a billing system

Half a year ago, I joined Pleo, a FinTech startup with around 15,000 customers (we’re always hiring at Pleo!). I joined to take on and further develop the billing infrastructure. When I joined, I was actually a bit concerned about the narrowness of the new role and the new team. I mean, really… How much […]