Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,842 posts.
Lisp: More is less
There’s recently been a resurgence of interest in Lisp (specifically, Clojure) in my neighborhood. I have some kind of a fondness for Lisp, but I think some of its characteristics make it poorly suited for use in large programming efforts. Indeed many of the unique properties that Lisp devotees (myself once included)…
Result is all I need
Rocky Jaiswal. Christian developer living in Berlin. Blogs about programming & technology.
Build Unix, Not Uber
I spent the last three weeks in Seoul, partly visiting family I hadn’t seen in years and partly taking a vacation from my usual work in my usual city in my usual context of life. While I haven’t been able to work much at all, I spent my subway rides and waiting-in-line times reading the Singularity Sky series of…
Sum Types Are Coming (2015)
Just as all mainstream languages now have lambda functions, I predict sum types are the next construct to spread outward from the typed functional programming community to the mainstream. Sum types are very useful, and after living with them in Haskell for a while, I miss them deeply when using languages without them…
Rust 1.x seems to not always be backward compatible in practice
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Path Isn't Real on Linux
where my words occasionally escape /dev/null
window.showDirectoryPicker opens up a whole new world
Chrome introduced a new API, window.showDirectoryPicker() that allows the user to grant access to a directory on their computer and allow a website to read/write everything inside.
A Case for Upserts
Some thoughts on why upserts are necessary to write reliable web applications.
Will Claude Code ruin our team?
AI coding is blurring the lines between engineers, PMs, and designers. In the short-term, it's going to cause havoc. What happens long-term?
An analysis of the Rabbit R1 APK
Emerge Tools analysis of the Rabbit R1 APK.
C++ Programming Questions to Ask on Interview (2017)
All C++ interview questions have everything you need on live interview – explanation, possible right/wrong answers, following questions.
The myth of the Lisp genius
I'm fascinated by the myth of the Lisp genius, the eccentric programmer who accomplishes super-human feats writing Lisp. I'm not saying that such geniuses don't exist; they do. Here I'm using "myth" in the sense of a story with archetypical characters that fuels the imagination. I'm thinking myth in the sense of…
When if is just a function
what does this mean and does it matter
How much can a Clojure developer do alone?
A response to a developer weighing Clojure's benefits, explaining the REPL workflow through human-computer interaction and reflecting on individual productivity.
Terminal Latency on Windows (2024)
UPDATE 2024-04-15: Windows Terminal 1.19 contains a fix that reduces latency by half! It’s now competitive with WSLtty on my machine. Details in the GitHub Issue.
Malleable Software
In the AI era, the winners won’t be the tools you adapt to — they’ll be the tools that adapt to you.
Current issues with the Qt project from the outside looking in
I want to start with that Qt is still IMHO the best way to develop C++ apps. This post is not supposed to be a rant. This is for the decision maker at Qt. If you have any question about Qt feel free to join our /r/QtFramework subreddit! The Qt developers are wonderful to work with, and every new Qt version makes it…
Programs are games, programming is a game
(This post is now also listed on the Pickcode Blog) In 11th grade, I wrote my first program, Dingo Hopper. In the game, the player controls a png of a din...
Namedtuple in a Post-Dataclasses World
namedtuple has been around since forever, and over time, its convenience saw it used far outside its originally intended purpose. With dataclasses now covering part of those use cases, what should one use named tuples for? In this article, I address this question, and give a few examples from real code.
The History of Windows 95
The Dawn of Microsoft's Golden Age
Java BitSet performance-flicker mystery
Why does the performance of this prime sieve, using a Java BitSet, flicker between either decent performance and half of that?
A Universal I/O Abstraction for C++ (2020)
This article is the sequel to A Universal Async Abstraction for C++ , in which I talk about the Executor proposal targeting C++23. Quite a bit happened since then.
How to trigger races reliably in the Linux kernel
What's a race anyways? Most of the readers, for sure, do know what a race condition is. Let me however include short description just fo...
Don’t design like a programmer (2010)
Get honest, expert UX feedback on your AI-built product before you ship. Prioritized recommendations within 24 or 72 hours.
Static HTML Comments
Derek Sivers official site. Thoughts on philosophy, culture, self-improvement. Author of Useful Not True, How to Live, Hell Yeah or No, Anything You Want.