Ben Congdon
benjamincongdon.me · Personal blog · on HN since 2018
Ben Congdon is a software engineer who writes about Go, Rust, developer workflow, databases and DIY electronics projects.
What HN saysHN commenters point to his stacked PRs post as a reference on that workflow, and to his Go io/fs guide and DIY air quality sensor write-up.
34HN people shared it
8linked it in comments
50stories submitted
2.5Kstory points
10 months agolast shared
2018people per year2026
Most-shared posts
- 1In Praise of Stacked PRs4 people · 233 points · first shared 2022 · 228 comments on HN
- 2A Tour of Go 1.16's io/fs package4 people · 9 points · first shared 2021 · discussion on HN
- 3Avoid Load-Bearing Shell Scripts4 people · 5 points · first shared 2023 · discussion on HN
- 4Solving the “Miracle Sudoku” in Prolog3 people · 288 points · first shared 2020 · 34 comments on HN
- 5Python Idioms in Rust3 people · 184 points · first shared 2018 · 78 comments on HN
- 6B-Trees: More Than I Thought I'd Want to Know (2021)2 people · 558 points · first shared 2021 · 63 comments on HN
- 7The Value in Go’s Simplicity2 people · 368 points · first shared 2019 · 360 comments on HN
- 8Mental Model: Difficult Problems vs. Hard Work2 people · 162 points · first shared 2022 · 45 comments on HN
- 9Building a DIY Pen Plotter: MidTbot2 people · 13 points · first shared 2020 · discussion on HN
- 10DIY Air Quality Sensor2 people · 7 points · first shared 2021 · discussion on HN
- 11Scraping the Web in Golang with Colly and Goquery2 people · 4 points · first shared 2018 · discussion on HN
- 12Sinc Split Mechanical Keyboard Build Log2 people · 3 points · first shared 2020 · 1 comments on HN
- 13Goodbye IFTTT1 people · 357 points · first shared 2020 · 152 comments on HN
- 14AI slop, suspicion, and writing back1 people · 231 points · first shared 2025 · 175 comments on HN
- 15The Coming Need for Formal Specification1 people · 64 points · first shared 2025 · 52 comments on HN
What HN people wrote when they linked it
rektide · 2023-05-04
For any long work, I love having a draft PR going, and then making PR's into that. Its basically like stacked PRs but I don't need each PR to be shippable independently.
The advantage is so nice. You can make a bunch of finer-grained PRs that have really good descriptions for what happened, what's changing. And it builds a big PR that has the top-down view. It creates a very understandable hierarchy of understanding. And it shows work over time.
Edit: apologies... maybe this is also Stacked PRs? I think of Stacked PRs as a series of PRs into main. But I see posts like this which show PRs into PRs, which is what I'm describing above. https://benjamincongdon.me/blog/2022/07/17/In-Praise-of-Stacked-PRs/
heyjamesknight · 2025-02-26
I don't think its a question of whether there is an essential reality or not, but rather whether we have access to essential reality. Donald Hoffman makes a strong game theoretical argument for how natural selection chooses effective presentations of reality rather than necessarily accurate ones [1]. Based on your level of interest in this conversation I'd expect you would really enjoy that book!
The game is certainly easier than the mind—I like it as an example because most of us have a hands-on knowledge of what the qualitative experience of "playing a game" is like. But the game still only emerges because the game developer, computer manufacturer, and player jointly give it a emanating system into which it can emerge. On its own, the raw game data doesn't really mean anything at all—if the bitstream of Diablo IV washed up on the beach, there's nowhere in that data encoding the experience of killing Diablo for the first time. One wouldn't even recognize it as something that could be decoded into such an experience [2].
I agree with you that the "why" is tough. Why have a conscious experience? Why have a sense of self at all? Why experience emotions rather than have them be—like you described—a purpose-driven internal signal? And then you get into theories like Internal Family Systems, which has empirical support at least within a prescriptive context if not necessarily a descriptive one [3].
The whole thing is a mess. A great, big, beautiful mess.
[1:…
fosterfriends · 2023-07-25
++ to stacking - google has lots of folk's writing on this, ie: https://benjamincongdon.me/blog/2022/07/17/In-Praise-of-Stacked-PRs/
The general idea is that you have a chance to parallelize waiting for review with you writing more code, leading to high-velocity small PRs and never being blocked.
roflchoppa · 2021-09-08
I ordered like 5 of them the other day from JLCPCB it was like 6 bucks shipped to my place.
I saw this post online, I’ve had the pm2.5 sensor sitting around for a long time…
https://benjamincongdon.me/blog/2021/08/08/DIY-Air-Quality-Sensor/
kyrra · 2021-02-17
Official docs may not be there yet, but lots of people have written guides, like: https://benjamincongdon.me/blog/2021/01/21/A-Tour-of-Go-116s-iofs-pack…
homarp · 2020-05-25
https://benjamincongdon.me/blog/2020/05/23/Solving-the-Miracle-Sudoku-… has the list of all the boards that are 'miracle' sudoku. Only 72.
bcongdon · 2020-04-07
https://benjamincongdon.me/blog
I like to write about productivity, Go/Rust, and my various web development projects. I also tend to write pretty frequently about programming language ergonomics.
Popular posts:
* https://benjamincongdon.me/blog/2019/11/11/The-Value-in-Gos-Simplicity…
* https://benjamincongdon.me/blog/2018/03/23/Python-Idioms-in-Rust/
* https://benjamincongdon.me/blog/2018/03/01/Scraping-the-Web-in-Golang-…
Favorite posts:
* https://benjamincongdon.me/blog/2019/03/07/Generative-Doodling/
* https://benjamincongdon.me/blog/2018/10/07/Wordscapes/
---
I also have a blogroll of other blogs I think are interesting: https://benjamincongdon.me/blogroll
... and a list of books that I've read: https://benjamincongdon.me/books
LeifCarrotson · 2022-06-30
For me, it depends on the type of problem I'm trying to solve. Specifically, I ask is it hard work or a difficult problem? (see also [1], [2], and HN commentary at [3] from a short time ago).
Hard work is something that a big corp can solve by throwing bodies at the problem. A proprietary data format or protocol but with an available, thorough specification (eg. a giant PDF from an international standard, an industrial protocol, and associated XML schema with a bunch of separate devices to talk to by just reading through thousands of pages of PDFs...). Another example of hard work is handling a high volume of support requests, just communicating to individual users might involve more hours in a single day than are available to a single user, and it might require supporting 3 shifts or 7 days a week, which a solo dev just can't do. These are tasks that a solo dev is likely to burn out on and which I would not entrust them with.
On the other hand, a difficult problem is something that can be solved by a single contributor, but which often cannot be solved by throwing bodies at it. The output may be something as tiny as a few hundred lines of code that realize a single critical insight. That insight might synthesize a lot of complicated and inaccessible concepts available only to someone who is an expert in multiple fields and who has experience gained over many consecutive years of work in a single field. A company that can put 20 people with 1 year experience and 4 year…