Mutexes are faster than Spinlocks
(at least on commodity desktop Linux with stock settings)
Topics /
The most popular blog posts about software engineering on Hacker News. 14,532 posts.
(at least on commodity desktop Linux with stock settings)
I fancied getting an eink screen to use for future projects. I bought a wee one with a raspberry pi "hat" attached. However, I realised later that I could maybe just re-purpose an old Amazon Kindle eb…
I’ve spent 15 years of my life working on Bundler. When I introduce myself, people say “oh, the Bundler guy?”, and I am forced to agree. I didn’t come up with the original idea for Bundler (that was Yehuda). I also didn’t work on the first six months worth of prototypes. That was all Carl and Yehuda together, back…
I'm awarded the Swedish Polhem Prize 2017. (Link to a Swedish-speaking site.) The Polhem Prize (Polhemspriset in Swedish), is awarded "for a high-level technological innovation or an ingenious solution to a technical problem." The Swedish innovation must be available and shown competitive on the open market. This…
You’ve almost certainly encountered Conventional Commits before. It may have reared its ugly head in the changelog of an open source project you’ve used. It may have been the enforced commit format for an open source project you contributed to. A lot of people swear by it. I swear at it. Even though it is used by a…
A couple of days ago I watched a How Computers Learn talk by Peter Norvig. In this talk, Peter talked about how Google did machine learning and at one point he mentioned that at Google they also applied machine learning to hiring. He said that one thing that was surprising to him was that being a winner at…
After 2 years of learning German I’ve noticed that, for the most part, you can go a long way by mapping foreign concepts to ones that you already know. In particular, I’ve had success mapping aspects of German grammar to programming concepts I use every day. After all, programmers deal with weird grammars all the…
This is a response to the Rust call for blogs 2021 and also a followup to last year’s entry. It will be entirely focused on GUI.
I'm a big advocate of Empirical Software Engineering. I wrote a talk on it. I wrote a 6000-word post covering one controversy. I spend a lot of time reading...
List of 30 interesting commands and tips for the Linux shell that I have collected over the years.
A Hacker’s Guide to Git is now available as an e-book. You can purchase it on Leanpub. Introduction Git is currently the most widely used version control system in the world, mostly thanks to GitHub. By that measure, I’d argue that it’s a...
Introduction Last week, we talked about using a new Apple M1 based Macintosh as a development workstation and how installing Apple’s development system XCode also installed a large number of open s…
If this isn’t your first time visiting my blog, you may recall that I’ve spent the past several years building an elaborate microcontroller graphics demo using C++.
A surprisingly common complaint I see from developers who have tried using LLMs for code is that they encountered a hallucination—usually the LLM inventing a method or even a full …
It appears that most of the old iOS conceptual documents have been moved to the documentation archive and are now unsupported.
Finding the median in a list seems like a trivial problem, but doing so in linear time turns out to be tricky. In this post I’m going to walk through one of my favorite algorithms, the median-of-medians approach to find the median of a list in deterministic linear time. Although proving that this algorithm runs in…
it's not working
Frameworkism is now the dominant creed of today's frontend discourse, and it's bullshit. We owe it to ourselves and to our users to reject dogma and embrace engineering as a discipline that strives to serve users first and foremost.
Note from 2025 me - I largely still agree with myself - and I still see the same crappy OO code getting pumped out. The final point in "Exceptions" is worth emphasising more.
After careful consideration, we’ve decided on a meaningful way to use the generous donations from our community: funding longtime Xfce core developer Brian Tarricone to create xfwl4, a brand-new Wayland compositor for Xfce.
Regular expressions are extremely powerful. This is something I read at least once or twice every day while reading articles and blogs on the Web.
There are many online sites that accept reading input from remote locations. For example a site might try to extract all the text from a webpage, or show you the HTTP-headers a given server sends back in response to a request.
a blog post by @azwinkau
Facts about React that should be known before using Redux (or MobX). Most important: Learn React first, then opt-in Redux but only if you need it. There are various techniques in React.js for scaling your local state management. Only if these are not sufficient, use a library like Redux ...
Day 16: gzip + poetry = awesome
A riveting tale of how good data can lead to bad decisions.