Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 14,544 posts.

Any year
13711

Navtive FlameGraphViewer

This website is for sale! laladrik.xyz is your first and best source for information about laladrik. Here you will also find topics relating to issues of general interest. We hope you find what you are looking for!

13721

When can glibc be built with Clang?

Updated in 2026: glibc 2.43 added experimental support for building with Clang. In September 2021, I wrote "So, dear glibc, will you be happy with my sending Clang patches?" in Build glibc with LLD 13. We have come to a turning point. In Linux Plumbers Conference 2021, at the glibc Birds of a Feather session, I asked…

13723

Understanding lvalues and rvalues in C and C++

The terms lvalue and rvalue are not something one runs into often in C/C++ programming, but when one does, it's usually not immediately clear what they mean. The most common place to run into these terms are in compiler error & warning messages. For example, compiling the following with gcc :

13725

Shrinking a Kotlin Binary by 99.2%

We'll get to the shrinking, but first let's motivate the binary in question. Three years ago I wrote the "Surfacing Hidden Change to Pull Requests" post which covered pushing important stats and diffs into PRs as a comment. This avoids surprises with changes that affect binary size, manifests, and dependency trees.

13726

Closures as Win32 Window Procedures

Back in 2017 I wrote about a technique for creating closures in C using JIT-compiled wrapper. It’s neat, though rarely necessary in real programs, so I don’t think about it often. I applied it to qsort , which sadly accepts no context pointer. More practical would be working around insufficient custom allocator…

13727

Lua/APR - proper standard library for Lua

Lua/APR is a binding of the Apache Portable Runtime (APR) for the Lua programming language . APR powers software such as the Apache webserver and Subversion and Lua/APR makes the APR operating system interfaces available to Lua, serving as an extended standard library. Thus far the following modules have been…

13730

Understanding Concurrency, Parallelism and JavaScript

Up until now, I was not aware that concurrency and parallelism were actually different things since they are often used interchangeably by some. I just learned that this is not the case while reading Chapter 9 of the book “Clojure for the Brave and True.” This made me want to learn more about concepts related to…

13731

Adding a new statement to Python

This article is an attempt to better understand how the front-end of Python works. Just reading documentation and source code may be a bit boring, so I'm taking a hands-on approach here: I'm going to add an until statement to Python.

13733

Super-Flat ASTs

In my previous post, I introduced the simp le programming language. Near the end of that post, I mentioned that the parser isn't very efficient.

13735

MongoDB and Riak, In Context (and an apology)

There has been quite a bit of furor and excitement on the Internet this week regarding some very public criticisms (and defenses) of MongoDB and its creators, 10gen . Unfortunately, a ghost from my recent past also resurfaced as a result. Let me begin by apologizing to 10gen and its engineers for what I said at JSConf…