i386 Assembly Language trick for storing data in .text
Don’t want a big old bloated multi-kilobyte executable with a data segment, but you do need to store some data?
Topics /
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
Don’t want a big old bloated multi-kilobyte executable with a data segment, but you do need to store some data?
A structure where software architects work on a team separate from the development team can lead to dysfunction, reduced quality, and poor morale.
In his book On War, Clausewitz defines friction as the difference between military theory and reality: Thus, then, in strategy everything is very simple, but not on that account very easy. Everything is very simple in war, but the simplest thing is difficult. These difficulties accumulate and produce a friction, which…
It took more than ten years of full-time work for Rama to go from an idea to a production system. I shudder to think of how long it would have taken without Clojure. Rama is a programming platform …
This post is a case study of writing a Rust application using only minimal, artificially constrained API (eg, no dynamic memory allocation). It assumes a fair bit of familiarity with the language.
Joe Duffy's Blog | Adventures in the high-tech underbelly
One of the challenges of application engineering within an established company like Dropbox is to break out of the cycle of incremental improvements and look at a problem fresh. Our colleagues who do user research help by regularly reminding us of the customer’s perspective, but so can our friends and family when they…
The division instruction is one of the most expensive instruction in your CPU. Thus optimizing compilers often compile divisions by known constants down to a multiplication followed by a shift. However, in some lucky cases, the compiler does not even need a shift. I call the corresponding divisors ideal. For the math…
This is the first part of a series of posts on big changes for SymPy with particular focus on speed. What I am going to describe in these posts are:
This is the story of an investigation conducted by Jochen Sprickerhof, Helmut Grohne, and myself. It was true teamwork, and we would have not reached the bottom of the …
If you aren’t wowed by Python’s super() builtin, chances are you don’t really know what it is capable of doing or how to use it effectively. Much has been written about super() and much of that wri…
One year minus one week ago to the day I published an article announcing the new Scheme implementation I was writing, scheme-rs . Today I am excited to announce that scheme-rs has reached its first version, 0.1.0 . You can check it out at it’s website ( scheme-rs.org , which should be updated to scheme.rs at some…
I scraped hundreds of Reddit comments that compare Claude Code and Codex, and used Claude Haiku to build a sentiment analysis dashboard. The dashboard and my interpretations are shared here.
Essentially a flick is just a really big number, specifically the number 705,600,000 and tries to solve a problem that nobody in digital media actually has.
CockroachDB 19.2 improves latency, reliability, and usability. We’re bringing the speed of distributed transactions closer to the theoretical minimum.
Some people believe that carrying out a large software project is like building a bridge. You look at your past projects and use the data to estimate the time and resources needed. This view has been debunked decades ago; this analogy was frequently seen as an aspiration for the future when I did my Master in Software…
I’d like to share my experience of encountering Hotwire from the team at Basecamp which was extracted from the tooling used to build their…
Today, we’re happy to announce RethinkDB 1.15 ( Lawrence of Arabia ). Download it now!
Earlier this year, I lost the ability to use a keyboard and mouse for extended periods. Fortunately, this wasn't as catastrophic as it sounds! This article chronicles my experience using adaptive tools like dictation and eye-tracking as my primary mechanisms for writing code.
Distributed computing and designing a system that supports modern commerce and other high-priority applications remains one of the most difficult tasks in computing. We provide expert tips.