Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 21,827 posts.
How my open source hobby project became my job: 10 years of OptaPlanner
@{siteConfig.tagline}
A friendly tour of process memory on Linux
A deep dive into how Linux manages process memory, page tables, and virtual address spaces
Fast Way to Load Data into PostgreSQL Using Python
From two minutes to less than half a second!
Algebraic Semantics for Machine Knitting
As programming languages researchers, we’re entitled to a certain level of mathematical rigor behind the languages we write and analyze. Programming languages have semantics , which are definitions of what statements in the language mean. We can use those semantics to do all sorts of useful things, like error…
64-bit bank balances ‘ought to be enough for anybody’?
“640K ought to be enough for anybody.” - Supposedly Bill Gates, circa 1981.
Should managers still code?
Ah, the eternal question, straight from the mailbag.
Why Tracebit is written in C#
A retro on some of the reasons we chose to build Tracebit in C#.
Git archive checksums may change
We are reverting this change for now. More details to follow. The default compression for Git archives has recently changed. As result, archives downloaded from GitHub may have different checksums…
Meta developer tools: Working at scale
Every day, thousands of developers at Meta are working in repositories with millions of files. Those developers need tools that help them at every stage of the workflow while working at extreme sca…
A look at Crystal, a programming language for humans
I recently implemented a Brainfuck interpreter in the Crystal programming language and I’d like to share my honest opinion about working in the language.
I’m joining the Go team at Google
I am honored to share that I have joined Google as a member of the Go team and will be primarily based in NYC.
An incoherent Rust
Coherence and the orphan rules are a frequent source of complaints about Rust, and a common topic of language proposals. This post covers most of the existing proposals around coherence and my vision for how we should solve coherence once and for all.
Zig's (.{}){} Syntax
A look at some unfriendly Zig syntax
Porting 4.5K lines of C to Go
Porting Yoga (Facebook's CSS flexbox implementation) from C to Go.
I am a terrible programmer
I recently got this from the co-founder of Artsicle, a startup I interned for over the summer after my freshman year: From: Scott Carleton Subject: just re
Undebt: How We Refactored 3M Lines of Code
Undebt: How We Refactored 3 Million Lines of Code Evan H., Software Engineering Intern Aug 23, 2016 Peter Seibel wrote that to maximize engineering effectiveness, “Let a thousand flowers bloom....
Don Libes' Expect: A Surprisingly Underappreciated Unix Automation Tool
In this article, I will attempt to convince you that Expect is an extremely underappreciated tool for automating terminal applications in Unix.
Fly Machines: An API for Fast-Booting VMs
Announcing Fly Machines
How to Generate Secure Random Numbers in Various Programming Languages
This blog post will maintain the industry best practices for securely generating random data in Ruby, Node.js, Java, etc.
Text Processing in the Shell
A quick overview of the most common text processing terminal tools and why they should be part of your day-to-day toolbox.
Vulkan video extensions for accelerated H.264 and H.265 encode
In April 2021, the Vulkan® Working Group at Khronos® released a set of provisional extensions, collectively referred to as ‘Vulkan Video’ which provide seamless encoding and decoding of video streams using a variety of video coding standards. The December 2022 release of Vulkan 1.3.238 saw the finalization of the…
How to stop Linux threads cleanly
Stopping a Linux thread is a surprisingly annoying affair. In this post I present common pitfalls and some solutions -- although no truly satisfactory method exists.
SQLite 3.8.0 Release with next-generation query planner
Beginning with this release, SQLite will not compile on Windows version prior to Windows Vista (circa 2007), due to a switch to using Slim Reader/Writer Locks (SRWLs) which are faster but which are not available on WindowsXP and earlier.
It's 2012, HTML5 is awesome, and I'm surfing a PDF
Designer, researcher, strategist.