J. B. Rainsberger
banner
jbrains.ca
J. B. Rainsberger
@jbrains.ca
A professional 5-pin bowler who helps software professionals work with less stress for ready money. tdd.training jbrains.ca
Pinned
I also accept questions in English. #IngaTidsestimater
Reposted by J. B. Rainsberger
December 26, 2025 at 2:40 PM
Software design techniques represent, at their core, a guess about what a hypothetical future reader will understand more with a lower investment in effort, time, and money.

I consider "guess" the key word of that claim. What makes you guess more accurately? Experience, knowing the audience, ...
December 26, 2025 at 5:52 PM
Designing software means forever balancing two opposing consequences of the limits of working memory:

- wanting conciseness and relying more on tacit knowledge to make writing code feel easier
- wanting clarity and relying less on tacit knowledge to make understanding code feel easier

No escape.
December 26, 2025 at 5:43 PM
Something something great minds thinking alike... #refactoring #evolutionarydesign

Different articulations of a mental model will click with different people, but those models tend to be much more alike than they are different. :)
December 18, 2025 at 2:02 PM
Reposted by J. B. Rainsberger
I've been focusing a lot recently on refactoring. Simultaneously one of the most valuable and rarest developer skills.

In this post, I talk about the different levels of refactoring:

* Primitive (the basic "moves")
* Tactical
* Strategic

codemanship.wordpress.com/2025/12/18/r...
Refactoring Is Like Chess
When I’m introducing developers to refactoring, I draw a parallel between this hugely valuable – but much-misunderstood – design discipline and chess. Primitive refactorings are l…
codemanship.wordpress.com
December 18, 2025 at 7:49 AM
Apparently they liked it enough for us to do it again. We are Refactoring Astro for at least two hours next week, live and in public. Join us!

dateful.com/eventlink/32...
See the event start time
See when the event starts in your local timezone.
dateful.com
December 9, 2025 at 8:15 PM
🧵 As we figure out what role LLMs and Gen AI systems will play in developing software, I await with interest actual experience reports, such as this one:

(> next)
December 9, 2025 at 2:51 PM
Sometimes we struggle getting buy-in from others about improving our software designs. I think I know one of the ways that happens: blog.jbrains.ca/permalink/a-...
A Central Conflict in 'Readable' Code
Programmers routinely complain about code being
blog.jbrains.ca
December 4, 2025 at 3:44 PM
Vague musings about software design in the age of Generative AI. At least it's relatively short: blog.jbrains.ca/permalink/in...
In the Age of Generative AI, Better Design Remains Up to Us
When Common Practice becomes even more commonly-practised, the economic forces on software design change in a way that both creates more opportunities and ma...
blog.jbrains.ca
December 1, 2025 at 5:16 PM
How's this for fortunate timing?! Just after writing a thread about the "ask your programmers!" strategy from _Frictionless_ (thread linked), I read the following in one of those email newsletters that we all subscribe to and never read. (next post)

bsky.app/profile/jbra...
On the one hand, it amazes me that this very simple and obvious strategy isn't the first thing that executives think of when they wonder how to improve results in their software development groups.

On the other hand, it doesn't surprise me at all that a person would shy away from it.
Finally, someone wrote it down in a book:

To understand what is going well/poorly inside your engineering org: ask the devs what this is! Talk to a bunch of them to get a good picture

From the excellent new book by Nicole Forsgren and Abi Noda called "Frictionless"

Arrived yesterday
November 28, 2025 at 2:46 PM
On the one hand, it amazes me that this very simple and obvious strategy isn't the first thing that executives think of when they wonder how to improve results in their software development groups.

On the other hand, it doesn't surprise me at all that a person would shy away from it.
Finally, someone wrote it down in a book:

To understand what is going well/poorly inside your engineering org: ask the devs what this is! Talk to a bunch of them to get a good picture

From the excellent new book by Nicole Forsgren and Abi Noda called "Frictionless"

Arrived yesterday
November 28, 2025 at 2:08 PM
I'm doing some refactoring/adding tests in public on an Open Source project on December 2, in case you'd like to join us:

discord.gg/astro-lounge...
Join the Astro Lounge Discord Server!
The official community server for the Astro framework. Learn more at https://astro.build | 35680 members
discord.gg
November 28, 2025 at 2:06 PM
If you do the Saff Squeeze and you _don't_ finish by laughing out loud at your own mistake, then did you really Squeeze? 🤔
November 27, 2025 at 5:05 PM
Does this sound like you?

Evolutionary Design/TDD has, for me, been an adaptive response to uncertainty (even anxiety!) I have felt while trying to write software.
November 25, 2025 at 3:47 PM
I'm looking for a client interested in getting help to simply think more clearly for an experimental 3-month program.

What could you do with weekly conversations with a wise, caring partner, whose primary concern was helping you make sense of your world?
November 20, 2025 at 7:07 PM
How can writing things down in an Inbox be so powerful? blog.jbrains.ca/permalink/bl...
Blue Tape and Inbox Technique
Many people struggle to apply the ideas in Getting Things Done, partly because those ideas seem like abstract
blog.jbrains.ca
November 20, 2025 at 7:02 PM
I try not to be quite so blunt about this these days, but I stand by the overall message: you have probably been trying to go too fast.

And I get it. No blame, really! If you don't have at least one impatient customer, then you have a hobby and not a business, right? :shrug:
Metaphor for software development.
Reminds me of a classic @jbrains.ca saying:

“But test-driven development will slow us down.”
J.B.: “Good.”
The slower pace means each machine only makes 23 to 28 meters of hoodie fabric per hour, but this also ensures quality (e.g., no holes or runs in the material). When hoodies are cheap, companies have to maximize output, but this can also mean they have lower quality control.
November 19, 2025 at 2:49 PM
I have a new challenge for 2026 and I have spent approximately 20 minutes on it so far.

This resource, I presume, is going to help me.

dexonline.ro
dexonline
dexonline.ro
November 11, 2025 at 7:25 PM
Before you react to this story one way or the other, please listen to the podcast I've shared. Even if just in the background.

It quite literally the least you can do.

www.cbc.ca/listen/cbc-p...
November 11, 2025 at 7:23 PM
Well, my newest Master Class was a hit. As it is with my live work with programmers, we start with all the technical issues, then pivot hard in the last 30% to the deeper interpersonal problems.

codecamp.ro/masterclasse...
Dealing with Regret in Software Design
Join Codecamp in Iasi, Bucharest, Cluj, Timisoara to learn, share, and connect with the IT community.
codecamp.ro
November 7, 2025 at 10:35 PM
"Yes, but we don't live in Qazaqstan, we live in Königswiesen!"
November 2, 2025 at 9:42 PM
I formally submit my application for the role of CEO of #HTMX @htmx.bsky.social @htmx.org

🤷
October 30, 2025 at 5:01 PM
The limit of making prompt libraries more precise is a programming language.
October 30, 2025 at 10:12 AM
A telling of the story of how Carl Sagan tried to encourage young people to learn more about critical thinking.

youtu.be/-Pc3IuVNuO0

#codecamp
The Controversial Exam Carl Sagan Gave His Students
YouTube video by Tibees
youtu.be
October 30, 2025 at 8:53 AM
When we use LLMs to generate code, we get Common Practice amplified and thrown back into our faces. We also entrench Common Practice.

So... Which practices are common? Would you like more or less of that?

#codecamp
October 30, 2025 at 8:39 AM