Sign in

Ben Sheldon

@bensheldon.bsky.social
896 followers 196 following 67 posts

I help small teams do big things and help big teams have big impact. And I build GoodJob, Day of the Shirt, Panlexicon, and Brompt too.

PostsRepliesMedia
Ben Sheldon @bensheldon.bsky.social · 06/10/2026
I finally cracked on GoodJob and implemented something I've been avoiding: patching Active Job to make *my* callback always run last. (this became necessary to make Concurrency rules be checked last last last after anything else that might modify the rules/conditions has run)
github.com
Fix: Run the enqueue concurrency check always after the job's other enqueue callbacks by bensheldon · Pull Request #1850 · bensheldon/good_job
The Concurrency extension registers its before_enqueue callback when it is included, so it ran before any before_enqueue/around_enqueue callbacks defined later in the job class or its subclasses. L...
000
Ben Sheldon @bensheldon.bsky.social · 29/09/2026
It's possible to disable rich text, but that disables the toolbar. So you have to make and connect (with js) a custom toolbar... but seems to work.
010
Ben Sheldon @bensheldon.bsky.social · 28/09/2026
I saw Lexxy 1.0 was released. Anyone know if I can use it as a text/markdown editor without it rendering to HTML? I like the plugin system, I like consolidating libraries, but (for one project) I also can't have HTML/formatting.
120
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
At the finish 🏁
2 swimmers approaching a beach.
020
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
I appreciate you writing this so much! It helped me reflect a lot on what I like historically/currentlt about Rails and Ruby community, and (historically) DHH: The weight of people talking about, I dunno, "good taste" (developing it, in ux, in code, socially, in business). That keynote, nothing.
040
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
Still swimming.
Two swimmers, blue water, with a giant white fog bank in the background.
100
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
About 10 miles. They've got a 2.5kt current helping too.
100
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
Had a little delay because of fog, but swimmers are in the water. Doing a "Prison Break" route today: Alcatraz to San Quentin.
Two swimmers in blue water, arms aloft. Map of San Francisco Bay, with line between Alcatraz and San Quentin. About 10 miles.
210
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
Good morning!
View of a fog covered Golden Gate Bridge from the bow of a boat.
100
Ben Sheldon @bensheldon.bsky.social · 25/09/2026
Another peaceful evening at home taping zipties to energy gels.
A kitchen table pile of honeystinger packets with zip tie loops attached, a wire cutter and pile of cut ziptie ends.
120
Ben Sheldon @bensheldon.bsky.social · 16/09/2026
Conference talks in the age of AI: Here's a list of 30 things on a topic to tell your agent to do. No details. And still it will run long. I don't hate it tbh. I like a good survey study, so long as it's good. SO LONG AS IT'S GOOD.
022
Ben Sheldon @bensheldon.bsky.social · 14/09/2026
@rubycademy.bsky.social your emails seem broken. Also commenter email confirmation on the launchkit blog is broken. (assuming this is you; I see no ref who is behind the project ❤️)
Delivery status failure screenshot
000
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
Alcatraz Open ✅ Every year my swim club hosts an open-to-the-public swim from Alcatraz. This morning: 550 swimmers, 300 volunteers. I helped launch boats and then kept the kitchen-chowder-coffee pipeline flowing.
550 swimmers at 630 in the morning in front of Ghirardelli square. Setting up a rowboat in the water with kayaks and support boats behind. Angelina and me smiling on the dock with dirt mason and the Golden Gate Bridge behind us.
030
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
I guess to close out my thoughts for now: Yes, it would be interesting to see repositories directly offer a business contract with SLA/indemnity. ...but I'm skeptical that making it obligatory paired with revenue sharing with maintainers, would address the current systemic problems.
000
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
Yeah. I guess I see the "celebrity" coming from the nature/necessity of marketing one's services. Thinking of myself, i have different stages over time of like "do I even care about money for this?" and "would caring about money for this change my approach?" And "jfc I should be paid for this"
110
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
(thinking aloud not debating) I don't imagine the pennies the majority of maintainers would receive is strong motivation. I take the current model for $ in open source: free software, offer paid service contracts... and how few devs do that. I'm skeptical of any "passive income" model.
110
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
I guess the piece addresses this with "Won't companies just switch to a free mirror?" If I play the scenario out, I imagine my infra provider (who I try to consolidate services to) would bundle a mirror, and I'd just pay them. I dunno. I don't disagree with the piece. But change is scary.
110
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
I guess my reading of the piece is: complex/tiered licenses are not successful. Maybe software+license != service+tos ... but they seem analogous to me. I guess the "find out" is whether a tiered TOS would lead to package manager competition, where "we give it away...profit" is re-attempted.
111
Ben Sheldon @bensheldon.bsky.social · 13/09/2026
I appreciate you writing all of this. Especially the diagnosis at the beginning 🎯 I am lightly skeptical of the medicine you propose tho. Just on the practicality of “for profit company” being handwavy or reminiscent of unlikable ASCAP chasing down bars & restaurants for their background music.
110
Ben Sheldon @bensheldon.bsky.social · 07/09/2026
@byroot.bsky.social congrats and thank you for JSON 3.0 🙇
190
Ben Sheldon @bensheldon.bsky.social · 07/09/2026
Less than 30 days left to get your SF Ruby conference ticket. If you're local to the Bay, definitely please come! In addition to me being a speaker (💅), it should be a really nice experience at the SFJAZZ Center 📍 sfruby.com
sfruby.com
San Francisco Ruby Startup Conference 2026 - SF Ruby
November 10-12, 2026 at SFJAZZ. A conference for engineers who read and write Ruby, and the founders who come to meet them. Keynote by Garry Tan of Y Combinator.
053
Ben Sheldon @bensheldon.bsky.social · 06/09/2026
This was a new pattern for me using Ruby Fiber: island94.org/2026/09/converting-a-r…
island94.org
Converting a Ruby block interface to start/stop methods with a Fiber | Island94.org
010
Ben Sheldon @bensheldon.bsky.social · 05/09/2026
Oh no my gems!
110
Ben Sheldon @bensheldon.bsky.social · 25/08/2026
Though then you end up with something like this, of which I still actively work on... one of them. island94.org/2011/09/proj...
island94.org
Project fecundity | Island94.org
000
Ben Sheldon @bensheldon.bsky.social · 25/08/2026
I agree with your portfolio premise, maybe. I think you maybe end up with a portfolio but that's a bad way to start. Biggest squeeze I see is people not fundamentally being excited to help other people in the domain, or are unable to sustain their interest/motions that's not immediately gratifying.
210
Ben Sheldon @bensheldon.bsky.social · 25/08/2026
Nuts, my wife has a big swim that weekend so I couldn't attend. Have you talked to @johnnunemaker.com ? Founder Cafe is adjacent to Microconf. It's a few longtime slightly depressed people interrupted by lots of one-post-never-again hype people.
110
Ben Sheldon @bensheldon.bsky.social · 25/08/2026
I have Day of the Shirt. I was active in Founder Cafe for a minute. Whatcha want to chat about?
100
Ben Sheldon @bensheldon.bsky.social · 20/08/2026
I worked at GH about 1.5 yrs ago. My interpretation: Load balancer == HAProxy+Istio. Internal traffic (like auth service) gets routed through the LBs too. More simply: LB wasn’t appropriately autoscaling, and once that impacted critical services (auth) then 💥
042
Reposted by Ben Sheldon
Hanakai @hanakai.org · 19/08/2026
It’s week two of our sponsorship drive! Thank you so much to the ten Rubyists who became Hanakai sponsors in the last week! You’re standing up and showing us there's power in numbers. Read more about it here, including a special Q&A with Pat Allan! hanakai.org/blog/2026/08...
hanakai.org
Power in numbers, and Pat Allan
“In code like in life, healthy relationships should have respectful boundaries.” Week two of our sponsorship drive.
145
Ben Sheldon @bensheldon.bsky.social · 11/08/2026
I wrote some thoughts about Information Technology. And also about two technical interview designs. Something for everyone! 😆 I would love to chat if you have thoughts/experiences about building/designing case management or customer support software. island94.org/2026/08/two-...
island94.org
Two interviews and Information Technology thoughts | Island94.org
010
Ben Sheldon @bensheldon.bsky.social · 04/08/2026
This is an exciting (new?) thing I learned that allows a lot of workflows I want on GitHub Actions: island94.org/2026/08/prog...
island94.org
How to programmatically upload attachments to GitHub Issues, Pull Requests, and Comments, finally, for now | Island94.org
010
Ben Sheldon @bensheldon.bsky.social · 25/07/2026
This is an awesome follow up: tekin.co.uk/2026/07/over... btw, the keyword I would search is Active Record "validation" error message format. I don't think the post specifically says "validation" (otherwise it might be confused with an exception). Nor "Active Record" nor "model" either.
tekin.co.uk
Overriding Rail's default error message format
A follow-up to my recent Rails i18n post that describes a way to override the error message format without leaving the default error messages as incomplete sentences.
100
Reposted by Ben Sheldon
Luke Plunkett @lukeplunkett.com · 23/07/2026
20114542650
Reposted by Ben Sheldon
charlie @spacehearts.bsky.social · 03/07/2026
my brother & his partner are telling me an insane story about this local deity called "st. rat" which is apparently a mosaic relief put up by some queers in seattle. the city kept trying to paint over it, but people would repeatedly just use acetone and remove the paint until the city gave up
a mosaic relief to st. rat
10588222998
Reposted by Ben Sheldon
InfoWars @realinfowars.bsky.social · 06/07/2026
If you're not outraged, you should be
A horse running through a river, looking how men should look
222118512419
Ben Sheldon @bensheldon.bsky.social · 11/06/2026
I can sympathize with the imposter syndrome of like "but what if that marketing platform understands our business and our customers and their intents and our value prop and motions better than I do?" I assume the worst that this client has like 1 reengagement motion and like 2 other templates.
110
Ben Sheldon @bensheldon.bsky.social · 11/06/2026
It's simple, just sync a gajillion customer attributes and behaviors into this external system and then *waves hands* the proprietary smart segmentation takes over. It basically prints money /s
100
Reposted by Ben Sheldon
Undi "Doctor Fraiser C.R.E.A.M." Galaga @herzogbae.bsky.social · 31/05/2026
Odysseus: Do I need to give sacrifice to Poseidon before we set sail? Alex: All the information is in the task.
095195
Reposted by Ben Sheldon
Benoit Daloze @eregon.me · 30/10/2025
If you know of any open-source program using Ractors, let me know, I'd be interested to try it with ractor-shim.
032
Ben Sheldon @bensheldon.bsky.social · 30/10/2025
How short lived to make passing it to a ractor be worth it? That's the like real examples I'm looking for.
110
Ben Sheldon @bensheldon.bsky.social · 30/10/2025
Anything you see moving to Ractors right now? I can't think of any large manipulations that fit into the constraints in the context of the products I work on. Like maybe a ViewComponent but getting the data into a state to ractorize seems exhausting. Or how to invert flow of child queues on parent.
110
Ben Sheldon @bensheldon.bsky.social · 30/10/2025
1.1 I think it was ratomic gem that surprised me: github.com/mperham/rato... 1.2 my real question I guess was: what's changed in Ruby 3.5 that makes this possible? (Or easier)
github.com
GitHub - mperham/ratomic: Ractor-safe mutable data structures for Ruby
Ractor-safe mutable data structures for Ruby. Contribute to mperham/ratomic development by creating an account on GitHub.
100
Ben Sheldon @bensheldon.bsky.social · 30/10/2025
Ooh! Questions: - the last time we looked at this Ractors required a c extension to work. Did that all get into Ruby 3.5? - Say I already have calculated fibonacci.... what else might I use this for?
100
Ben Sheldon @bensheldon.bsky.social · 25/10/2025
that's good stuff! post more bangers as you find them.
110
Ben Sheldon @bensheldon.bsky.social · 22/10/2025
Yep. to_i on a AS::Duration does the same math you did. Just a little more wordy
000
Ben Sheldon @bensheldon.bsky.social · 21/10/2025
You could do: + 7.days.to_i Also TIL. Also, wouldn't you want it to end at the same local time? (Like is the test assertion itself wrong)
100
Ben Sheldon @bensheldon.bsky.social · 20/10/2025
There is no Microsoft stack. MS does not care what GitHub's stack is. A few decisions have influence (Azure dropping their Ruby SDK) but GH can trivially work around that. imo, GitHub is same as Jean described about Shopify: the eng leaders they have (ic & mgt) simply want to do something else
010
Ben Sheldon @bensheldon.bsky.social · 20/10/2025
... and obvs given this thread that didn't happen 🫠 Though now that's all in my rearview and I feel ok, given what I knew at the time and my skills and abilities and so forth.
020
Ben Sheldon @bensheldon.bsky.social · 20/10/2025
💛 And a majority of GitHub's engineers work in Ruby; the largest language cohort internally. And my intention (and sorta my role, though with downleveling who knows) was to turn that into a cohesive *program* (both in concrete resources but also as a conceptual narrative) across and outside the co
120
Ben Sheldon @bensheldon.bsky.social · 20/10/2025
Which isn't to be defensive about it. But to explain the perspective from inside the company. It's not *just* a communications problem, but I think examples of what it looks like to be contributing to Open Source internally were really hard to get written and published through the company blog.
110