Dave Copeland
banner
davetron5000.com
Dave Copeland
@davetron5000.com
Author of BrutRB, our last best hope for Rubykind (https://brutrb.com) - former Mood Health, Stitch Fix, LivingSocial, Opower. I play bass and love to scuba dive.
Google could have chosen to promote recipe websites that show you a recipe and not someone's culinary journey. But they did not.

ibid for literally everything. This is why an LLM trained on the internet is far superior to searching that same internet.
Every time I search online for a recipe (today: pinco de gallo) - the #1, #2 #3 results on Google are endless text, 5 ads and then MAYBE you get the recipe.

Had enough now just asking an LLM that browses using sources - today, Perpexity.

FINALLY get what I actually wanted:
December 13, 2025 at 6:12 PM
One of my design goals for https://brutrb.com is that requiring a file should never execute any code. It should always be totally safe to require a file without fear.

https://adrs.cloud/shared_adrs/padr_03b5cf8e34bb7900a38f6de27e50adaa
December 11, 2025 at 3:17 PM
One of my least favorite Ruby cultural norms is being so obsessive about users not having to learn how to configure a gem that the gem, just on being required by Bundler, sets up a lot of default configuration.

Currently: honeybadger sets up very slow at_exit hooks if you don't configure it not to
December 11, 2025 at 3:14 PM
I have a Yamaha MT8x (30 years old) that has been repaired once and needs repair again. Probably more in repairs than it cost.

I also have a Tascam Porta02 (35 years old) that was serviced by a pro before I bought but I still have had to replace two belts in it.

Neither has parametric EQ or XLR in
December 10, 2025 at 4:48 PM
NGL, I could do with less building new things and changing shit.

We need more people wanting to make existing things incrementally better.
There is no denying that there's a pull towards promotion-driven development at many Big Tech companies.

But if you think further: a lot of this not a bad thing for the company. It's how engineers + teams stay nimble, unafraid of building new stuff + migrating

Which is critical
Impact-driven promotions almost always (eventually) lead to promotion-driven development. Little wonder it's so widespread throughout Big Tech and larger companies.

Full: newsletter.pragmaticengineer.com/p/preparing-...
December 9, 2025 at 2:42 PM
I really wish working in IT for the US Government was different. There are so many interesting problems to work on and a million easy ways to make people's lives better or at least not worse.

Example: Census. I got a letter to fill it out. I did. Then I got another letter
December 5, 2025 at 6:50 PM
A tale of trying to pay a medical bill in the US of A:

1. Get a paper bill in the mail. It contains no clear indication of what the bill is for, and is from a company you definitely did not interact with to get healthcare. Hopefully, your doctor's name is on it so you have some clue.
December 4, 2025 at 2:56 PM
I have this pathological desire to block the domains of all spammers. I even go into my spam folder and do this. Spam Zero. Looking at the domains, I wonder if blocking all .us would be fine. Almost every spam is from «random characters».us
December 2, 2025 at 2:28 PM
knob? Is that an en_GB thing?
@davetron5000.com has swears! They've used 37 profanities in their last 547 posts.

🥇 "shit" (6 times)
🥈 "knob" (6 times)
🥉 "fuck" (5 times)
December 1, 2025 at 2:00 AM
@profanity.accountant how am I doing?
December 1, 2025 at 1:51 AM
This pathological payment pattern I can't wrap my head around why it exists, because it just happened with STRIPE, who should know better: 1) default method is expired and has failed, 2) add new method, charge goes through, 3) expired payment method is still default, fails next time.
November 30, 2025 at 9:35 PM
Just spent the last week on a fancy TUI library for https://brutrb.com and it almost works, but is janky in a lot of ways and I think it's at the point where I have to basically nuke it and start over. This is the "one to throw away" but I really don't want to write all this again.
November 29, 2025 at 10:47 PM
Our industry’s obsession with preventing programmers from ever being inconvenienced feels truly user hostile. Shit doesn’t need changing as frequently as we think. It’s ok to think through and plan stuff. Just because the CEO hired a bunch of programmers doesn’t mean they must be 100% utilized.
"AI can generate code in minutes - so why does shipping software still take forever?"

YES

It's the right question to ask
Such a timely book! Recommended. The website of the book where you can get it: developerexperiencebook.com
November 28, 2025 at 4:28 PM
1 hour into getting 1password + firefox to work. Main sticking point so far is getting it to start when I log in. It just always produces a crash dialog, but then seems to actually start. (Please don't tell me about other password managers, I'm not switching)
November 26, 2025 at 3:29 PM
Reposted by Dave Copeland
The final boss of every Linux install is — get my 4-in-1 printer/scanner/copier/fax working.
November 26, 2025 at 3:21 AM
I've probably posted this before, but copy/paste shortcuts are super important to me, and I think any long-time mac user would feel the same way. Knowing that whatever app you are in can be copied/pasted with the same key everywhere is hugely empowering
November 26, 2025 at 3:20 AM
I have some downtime and am revisiting "Make Linux Remotely Usable for a Long Time Mac Person". Step 1 is "make Firefox respond to mac-like key shortcuts" and…xremap!! 100% works.

GETTING it to work is a byzantine nightmare the exemplifies why Linux on the desktop will never ever ever be a thing.
November 26, 2025 at 3:13 AM
I initially bought into "software craftsmanship", but soon soured on it, as it seemed to be couched as moral imperative, not a practical/outcome-based one. But now that LLMs allow a lot of rank&file devs to get work done in a much more industrialized way, I'm wondering if "craft" has new meaning?
November 23, 2025 at 7:42 PM
If I'm understanding this Cloudflare thing right, it looks like the smug use† of monads took down the entire internet?

†is there any other kind?
November 19, 2025 at 3:17 PM
I'm usually pretty emotionally, even? But I just made the final update to Sustainable Rails and have taken it out of print. It doesn't feel good, even though it is the right call for me. I enjoyed writing&updating the book over the years & the advice it contains is still highly recommended. But…
November 17, 2025 at 6:55 PM
Looking at Rails 8.1 to update https://sustainable-rails.com. The CI stuff is…really poorly designed IMO. What was something that could be created, managed, and expanded using shell scripts is now an inflexible DSL that I'm guessing most teams will jettison immediately.
November 10, 2025 at 7:06 PM
I don't need much from my iPhone, really, but being notified when a contact calls me or when I get a text would be awesome.

I have a sneaking suspicion that installing RoboKiller - to the tune of $80 - is why I no longer get notifications for most calls/texts.
November 7, 2025 at 10:58 PM
Reason # 467 to not rely on software produced by 37 Signals:

https://github.com/hotwired/turbo/issues/1456

My only surprise is that David Rails didn't just post a picture of the fuck you slide and actually wrote a response
Is turbo in maintenance mode? · Issue #1456 · hotwired/turbo
At the moment, there's 247 issues and 74 pull requests open. More than half of the issues that are older than a year have gone unreplied. I've discovered as I dealt with a scroll to anchor bug, not...
github.com
November 5, 2025 at 6:03 PM
I was on the Dead Code Podcast talking about https://brutrb.com (and a bit about #looptober and synths). Had a good convo about why Brut is currently the way it is and where it might go.
Discussing Brut on Dead Code Podcast
Discussing Brut on Dead Code Podcast
naildrivin5.com
November 5, 2025 at 5:56 PM
Reposted by Dave Copeland
Take two of my interview with @davetron5000.com. We talk alternative Ruby web frameworks, synthesizers, and how Rails might be easy, but it's not necessarily simple. shows.acast.com/dead-code/ep...
Brut-al Death (with David Bryant Copeland) | Dead Code
shows.acast.com
November 4, 2025 at 9:51 PM