You can't make C++ not ugly, but you can't not try (2010)
...everything that's wrong with C++ comes down to that. Background: I've been programming in C++ since about 1993; that's 17 years now. As...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,544 posts.
...everything that's wrong with C++ comes down to that. Background: I've been programming in C++ since about 1993; that's 17 years now. As...
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…
Farewell, Rust for web. For now…
To type or not to type: quantifying detectable bugs in JavaScript Gao et al., ICSE 2017 This is a terrific piece of work with immediate practical applications for many project teams. Is it worth th…
For the past several weeks, I've been trying to fix a cranky spec in Karafka integrations suite, which in the end, lead me to become a Ruby on Rails micro-contributor and submitting similar fix to several other high-popularity projects from the Ruby ecosystem. Here's my story of trying to make sense of my specs and […]
In my last post about Zig and Rust, I mentioned that Rust is a scalable language. Let me expand on this a bit.
On Canada Day (July 1), 2026, Anthropic shipped a surprising "easter egg" to users of Claude Code: `2.1.198` includes an efficiency bypass which allows agents to continue on without being blocked on direction from a human.
Microservices work best as a polytree with clear dependencies and no cycles. Learn how this structure reduces complexity and makes systems easier to scale and maintain.
Famously, engineers tend to make wrong assumptions about a lot of things: Names and time are two well-known examples. Maps are a rich source of edge cases. Especially when you start dealing with gl…
Jujutsu (`jj`) is a new version control system from a software developer at Google. I have been using it full time for 6 months. Here’s why you should switch, too.
Software development blog of Joe Wright
In the last 10 years many new text editors became available for Mac OS X. Since I have tried most of them I wanted to give an overview and a brief description about each one of them. This is for developers that are looking for decent editors on the mac to get their job done.
Chad Nauseam Home
Out of all Lisps the ones I’ve come to appreciate the most are Scheme and Common Lisp.
Writing a faster wc utility in Go
A look at three relics of a not-quite-bygone era. In picture-listicle form.
Difference between strings and symbols in Ruby
I noticed today that Evernote was in the Windows Store. I went to the store, ...
A new top-level syntax for programming languages is proposed to show advantages of this method. New syntax is arguably as simple, but more consistent, better preserves visual structure and solves some issues in code formatting.
I wrote a lambda-calculus interpreter and an implementation of Hindley-Milner to type check it.
It's not about technology for its own sake. It's about being able to implement your ideas.
Learning how htmx works by building one from scratch.
“If you don’t know how compilers work, then you don’t know how computers work. If you’re not 100% sure whether you know how compilers work, then you don’t know how they work.” — Steve Yegge There you have it. Think about it. It doesn’t really matter …