Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
Very funny, gdb. Ve-ery funny
Have you ever opened a core dump with gdb, tried to print a C++ std::vector element, and got the following?
How to read Haskell like Python
Have you ever been in the situation where you need to quickly understand what a piece of code in some unfamiliar language does? If the language looks a lot like what you’re comfortable with, you can usually guess what large amounts of the code does; even if you may not be completely familiar how all the language…
Sublime Text 2 Build 2139 Released
Sublime Text 2 Build 2139 is out! Some of the notable new features in this beta are:
Jsonb: Stories about performance
As such, there’s really no “standard” benchmark that will inform you about the best technology to use for your application. Only your requirements, your data, and your infrastructure can tell you what you need to know.
SubQ 1.1 Small
Subquadratic is a frontier AI research and infrastructure company building a new class of LLMs.
Revisiting Apple Notes (6): The Protobuf
TL;DR : This post explains portions of two protobufs used by Apple, one for the Note format itself and another for embedded objects. More importantly, it explains how you can figure out the structure of protobufs.
Let's Embed a Go Program into the Linux Kernel (2023)
Today, we would like to present a lesser-known feature of the Linux kernel. Instead of launching a program from a file system, regardless of whether it's virtual or not, it is also possible to embed a user-space program directly into the kernel image itself and start it from there.
Stakes Are High in Oracle v. Google, But the Public Has Already Lost
Attorneys for the Oracle and Google companies presented opening statements this week in a high-stakes copyright case about the use of application-programming interfaces, or APIs. As Oracle eagerly noted, there are potentially billions of dollars on the line; accordingly, each side has brought “...
Generalized Knights
Knights in chess move in an L-shape: 2 squares in one direction and 1 square perpendicular. But what if it didn't have to be like that?
The I-JSON Message Format
The Olde ASCII is at rfc7493.txt . I’ll put a nicely-formatted HTML version here as soon as I pull a few pieces together. This is really, really simple stuff and should be about as controversy-free as an RFC can be.
Simpler Backoff
Exponential backoff with jitter is de rigeur for making service calls. This code, or something like it, probably looks really familiar: func do(ctx context.Context) error { const ( maxAttempts = 10 baseDelay = 1 * time.Second maxDelay = 60 * time.Second ) delay := baseDelay for attempt := range maxAttempts { err :=…
Microsoft OCR Library for Windows Runtime
This blog was written by Jelena Mojasevic, Program Manager at Microsoft. We are pleased to announce that Microsoft OCR Library for Windows Runtime has been released as a NuGet package. The library empowers you to easily add text recognition capabilities in your Windows Phone 8/8.1 and Windows 8.1 Store apps. OCR…
Vite 4.0
Vite 4 Release Announcement
SICP in Clojure
Personal blog of Wojtek Gawroński, a passionate software developer.
The Frink Is Good, the Unit Is Evil
One day Alan Eliasen read a fart joke and got so mad he invented a programming language. 20 years later Frink is one of the best special purpose languages for dealing with units. “But why do we need a language just for dealing with units?” Glad you asked! Intro to Units A unit is the physical property a number…
Avoiding the Distributed Monolith
If you’re considering a microservices implementation, and you enjoy this post, you might also enjoy my more recent post Gasp! You Might Not Need Microservices. I recently read a post called The False Dichotomy of Monoliths and Microservices by Jimmy Bogard, which I absolutely loved. While reading through it I noticed…
Introducing Qt 3D Studio
Explore the Qt Blog for the latest insights on e.g. Qt Creator, your go-to source for cross-platform development tips and updates.
Running C unit tests with Pytest
In this post I will describe my approach to C unit testing using pytest. In particular, we get to see how to gracefully handle SIGSEGVs and prevent them from stopping the test runner abruptly. Furthermore, we shall try to write tests in a Pythonic way.
Everyday performance rules for Ruby on Rails developers
Delve into best practices for HTTP, Ruby on Rails, and databases, and discover when to adhere to the rules or when breaking them could set your code apart.
/dev/audio
Software Engineer in Auckland, New Zealand.
Curl those funny IPv4 addresses
Everyone knows that on most systems you can specify IPv4 addresses just 4 decimal numbers separated with periods (dots). Example: 192.168.0.1 Useful when you for example want to ping your local wifi router and similar. "ping 192.168.0.1" Other bases The IPv4 string is usually parsed by the inet_addr() function or at…
Summing ASCII encoded integers on Haswell at almost the speed of memcpy
“Print the sum of 50 million ASCII-encoded integers uniformly sampled from [0, 2³¹−1], separated by a single new line and sent to standard input.”
How I Built an Apartment Buzzer for Multiple Roommates
Full disclosure: a lot of people have talked about this idea, this is just my implementation of it for our apartment. You can check out Buzzeromatic.com i...