Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,835 posts.
The State of Desktop Applications in Node.js
It's possible to use Node.js with a browser shell to build cross-platform desktop applications using HTML, CSS and JS. Let's look at some of the options.
Clojure – Fascinated, Disappointed, Astonished (2016)
I’ve had a pleasure to work with Piotrek Jagielski for about two weeks on Clojure project. I’ve learned a lot, but there is still a lot to know about Clojure for me. In this post I’ll write what fasci
Gaslight-driven development
Computers are starting to have opinions on how our APIs should look like
Emacs on an iPad
With my iPad having replaced my MacBook, the last thing I was missing was Emacs , which I not only enjoy hacking on, but is also how update my blog and resume! Let’s just say that it’s an integral tool in my life which I wanted access to, and I managed to make it happen.
LLMs are getting better at character-level text manipulation
Recently, I have been testing how well the newest generations of large language models (such as GPT-5 or Claude 4.5) handle natural language, specifically counting characters, manipulating characters in a sentences, or solving encoding and ciphers. Surprisingly, the newest models were able to solve these kinds of…
Visual Studio 2022
Announcing Visual Studio 2022, the next major version of Visual Studio. Read about our vision for empowering developers everywhere.
Encoding tic-tac-toe in 15 bits
I recently stumbled upon a blog post by Alejandra González (a.k.a @blyxyas) that seeks to compress a tic-tac-toe game state into as few bits as possible. She arrived at a solution in 18 bits. This got me thinking, can we do better?
How to store a chess position in 26 bytes (2022)
Made in Notion, the connected workspace where AI agents and teams organize docs, projects and knowledge together.
A Critique of GPUI
Personal Notes
How to implement strings
There are many alternatives to C strings. Here we explore the design space.
GitHub lock-in?
There has been a lot of noise recently on how GitHub is bad, and how developers should stop using it.
Remix Vite Is Now Stable
Support for Vite is now stable in Remix v2.7.
The Two Things about Computer Programming
In The Two Things about the Two Things, it's noted that people are unlikely to agree what the two things are, especially when it comes to computing. So I'm going to cheat.
How SerenityOS declares ssize_t
This post explores one of my favorite hacks in SerenityOS. I don’t recommend doing this in your codebase, but it has worked for us so far. :^)
Everything You Never Wanted to Know About CMake
Just hearing the word CMake is typically enough to make a shiver run down my spine. I’ve been deep in the muck of its behavior and tooling the last few weeks as I finish up a CMake library titled IXM. While the various minutiae of how IXM works, why I wrote it, and all the nice little usage details are definitely for…
From Java code to Java heap (2012)
The Java programming language is a high-level, object-oriented language. It is rapidly evolving across several fronts to simplify and accelerate development of modern applications.
Wild performance tricks
Last week I had the pleasure of attending RustForge in Wellington, New Zealand. I gave a talk titled “Wild performance tricks”. You can watch a recording of my talk . If you’d prefer to read rather than watch, the rest of this post will cover more or less the same material. The talk shows some linker benchmarks, which…
Understanding contravariance
The concept of contravariance, contravariant functors, and the Contravariant typeclass defined in the ‘contravariance’ Haskell library.
Programmer proverbs
To be a programmer is to learn relentlessly. A short and deep collection of advices.
Calculating Pi: My Attempt at Breaking the Pi World Record
Before I go into the specifics of my record attempt, it is important for you to have some background information. Over the past few years I have been steadily acquiring server hardware to increase my knowledge of system administration and cyber security. This is not only for personal growth: it has also helped me…
Release Notes for Ghostty 1.1.0
Release notes for Ghostty 1.1.0, released on January 30, 2025.
Dropped IE support for Instapaper
Update: This has been frontpaged on Hacker News and I’ve posted Instapaper’s browser usage stats .
Python List Comprehensions Explained Visually
Sometimes a programming design pattern becomes common enough to warrant its own special syntax. Python’s list comprehensions are a prime example...
Porting Graphing Calculator from C++ to Swift
Developer Spotlight is a series highlighting interesting Swift developers from around the world. This post is authored by Ron Avitzur, author of the Pacific Tech Graphing Calculator.
Logging can be tricky
The Corner is Square's technical blog covering software engineering, APIs, data, open source and more.