Topics /

Software Engineering

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

2024
1056

Ditching PaaS: Why I Went Back to Self-Hosting

I had never been a fan of devops/server-admin work. The sheer number of headaches involved in setting up the services, configuring them, automating them, and ensuring their reliability were just annoying and time-consuming. PaaS offerings like Heroku, AWS—and later—Railway, and Render, were appealing options out of…

1057

Good code is rarely read

The other day I was interviewing a developer for a position at Wallapop. The candidate was a little bit junior, but I enjoyed their technical assignment and the conversation was going great. One of the questions I had to ask was

1061

Ruby might be faster than you think

I saw a project a couple weeks back which allows writing and running Crystal methods inline inside a Ruby file. It’s a neat project, and I don’t want to take away from it but something in the README example looked off to me. require 'crystalruby' require 'benchmark' module Fibonnaci crystalize [n:

1064

Integrated assembler improvements in LLVM 19

Within the LLVM project, MC is a library responsible for handling assembly, disassembly, and object file formats. Intro to the LLVM MC Project, which was written back in 2010, remains a good source to understand the high-level structures. In the latest release cycle, substantial effort has been dedicated to refining…

1066

Implementing the Goodfellow GANs paper

Generative Adversarial Networks (GANs), discovered by Ian Goodfellow in 2014, were an early method in the area of generative AI. I will focus on image generation as set out in the paper Generative Adversarial Nets 1 . This paper is the focal point of the post, I will guide you through the implementation of the paper…

1070

Move semantics in Rust, C++, and Hylo

I just finished reading the paper Borrow checking Hylo . It outlines the basic design of Hylo . Hylo is an early-stage programming language, but unlike other contenders of C++, it provides memory safety like rust. Specifically it merges rust’s borrow checking ideas into the framework of moveable value semantics (MVS)…

1076

Bringing Faster Exceptions to Rust

Three months ago, I wrote about why you might want to use panics for error handling. Even though it’s a catchy title, panics are hardly suited for this goal, even if you try to hack around with macros and libraries. The real star is the unwinding mechanism, which powers panics. This post is the first in a series…

1077

Well-Known Secrets of AmigaDOS

In keeping with the Commodore tradition of cost cutting, most consumer models of their Amiga line of computers came with severely watered down documentation. The Amiga 500 was an exception from this rule, but owners of later machines - such as the A1200 - may not have gotten any documentation for the command line part…

1080

Bump Allocation: Up or Down?

Back in 2019, Nick Fitzgerald published always bump downwards, an article making the case that for bump allocators, bumping “down” (towards lower addresses) is better than bumping up. The biggest reasons for this are bumping up requires 3 branches vs 2 for bumping down and rounding down requires fewer instructions…