Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,826 posts.
Advanced programming languages (2009)
Students often ask for a recommendation on what language they should learn next. If you're looking for a job in industry, my reply is to learn whatever is hot right now: C++, Java and C#--and probably Python, Ruby, PHP and Perl too.
Why Concatenative Programming Matters
Introduction There doesn’t seem to be a good tutorial out there for concatenative programming, so I figured I’d write one, inspired by t...
Why CVE-2022-3602 was not detected by fuzz testing
So recently a very hyped memory corruption security vulnerability was discovered in the OpenSSL punycode parser. Some folks including Hanno ...
Is software abstraction killing civilization? (2021)
Or: Jonathan Blow is wrong but also right and we still need to prevent the collapse of civilization
iOS 17 makes iPhone more personal and intuitive
Apple today announced iOS 17, a major release that upgrades the communications experience across Phone, FaceTime, and Messages.
The combined power of F# and C#
Where C# is the most dominant language in the .NET world, other languages are built on top of the Framework that deserves their respective place. F# is strong when it comes down to functional programming! In this blog post, we will leverage the power of F# and C# to showcase where both excel!
The Play Framework at LinkedIn
I’m excited to announce the next step in LinkedIn’s service infrastructure: the Play Framework. Play is a modern web framework that combines the performance and reliability of Java and Scala, the power of reactive programming, and the productivity of full hot reload support. We’ve been running Play
Parallel ./configure
I paid good money for my 24 CPU cores, but ./configure can only manage to use 69% of one of them. As a result, this random project takes about 13.5× longer to configure the build than it does to actually do the build.
The anatomy of a Godot API call
UPDATE: This article has started an ongoing conversation with the Godot devs. They care about the issues raised, and would like to improve things. Significant improvements will almost certainly be made, although it’s still early days and it’s unclear what will change and by how much. I am encouraged by the response. I…
Intercal, YAML, and Other Horrible Programming Languages
Discover the bizarre world of INTERCAL, a parody programming language that will leave you scratching your head. Then, delve into the blurred line b...
Write documentation first, then build
The best way to build a great product is to write the whole idea out first.
Request bodies in GET requests
12 years ago I asked on Stack Overflow: Are HTTP GET requests allowed to have request bodies? . This got a 2626 upvotes and a whopping 1.6 million views, so clearly it’s something lots of people are still curious about, and in some cases disagree with the accepted answer.
Filenames and pathnames in shell: How to do it correctly (2020)
This article explains how to correctly handle filenames in Bourne shells (the primary shell of Unix/Linux/POSIX systems), based on the issues discussed in 'Fixing Unix/Linux/Filenames'. Many programs fail to work properly on filenames that include spaces, begin with dash (-), include newlines, and so on, because…
Things that suck in AngularJS
Every once in a while, I find that someone is interested in AngularJS, but not sure if they should stick to their jQuery comfort zone or mak...
Don’t Let Architecture Astronauts Scare You (2001)
When great thinkers think about problems, they start to see patterns. They look at the problem of people sending each other word-processor files, and then they look at the problem of people sending…
So We've Got a Memory Leak
A story of finding, understanding, and fixing a memory leak in our Rails app. With graphs and code!
Looking Ahead to Postgres 19
Discover the top PostgreSQL 19 features, including built-in REPACK CONCURRENTLY, SQL property graph queries (SQL/PGQ), and logical replication updates.
The God Login
I graduated with a Computer Science minor from the University of Virginia in 1992. The reason it’s a minor and not a major is because to major in CS at UVa you had to go through the Engineering School, and I was absolutely not cut out for that kind
Five months treating bugs like patients and coding agents like a medical team
How Cockroach Labs built MOLT Sinai, an AI coding “teaching hospital” that shipped IBM Db2 migration support in under two days.
Fsyncgate: Errors on fsync are unrecoverable (2018)
This is an archive of the original "fsyncgate" email thread. This is posted here because I wanted to have a link that would fit on a slide for a talk on file safety with a mobile-friendly non-bloated format .
CKEditor 5: New approach to rich text editing on the web
The heart of the new CKEditor Ecosystem is undoubtedly our brand new editor, CKEditor 5.
Test-driven development with an LLM for fun and profit
Welcome to the very first post in a new blog! Here I will discuss software development, SRE work, and other fun stuff. Sometimes an idea is just too good to pass up. I hope this blog will motivate me to turn sparks and little pieces into general knowledge in writing the words down. The other day I was discussing Tabby…
Curl is just the hobby
Jan Gampe took things to the next level by actually making this cross-stitch out of the pattern I previously posted online. The flowers really gave it an extra level of charm I think. As a cross-stitch As a pillow This quote is from a comment by an upset user on my blog, replying to one … Continue reading curl is just…
Linear types are merged in GHC
Looking back at the journey which brought us there, and forward to what still lies ahead.
WTH is happening to Rails? I'll tell you.
I just read the blog post that got some traction on HN last night, entitled “ What the hell is happening to rails? ” It goes on to list a litany of complaints against changes in Rails 3.x, ranging from the default commenting of the catch-all route to, yes, of course, CoffeeScript. They all end up sounding a lot like…