Sign in

Duncan Davidson

@duncan.dev
382 followers 354 following 129 posts

Software developer and engineering leader. Ex-[Shopify, Microsoft for Startups, Wunderlist, JavaSoft,...]

PostsRepliesMedia
Duncan Davidson @duncan.dev · 19/10/2025
bsky.app/profile/dunc...
000
Duncan Davidson @duncan.dev · 19/10/2025
Full post of my thoughts and permalink: duncan.dev/link/rubygem...
duncan.dev
RubyGems repository transitions to the Ruby organization
After a tumultuous month, the RubyGems repository transitions to the Ruby organization. This probably should have happened a long time ago, but at least it’s happened now.
100
Duncan Davidson @duncan.dev · 19/10/2025
What a mess. I personally believe that everyone was acting with the best of intent from their point of view under a lot of pressure. I can’t help but think how much better this would have gone if everyone had sat down first over a meal and a beverage to talk through how to accomplish this.
110
Duncan Davidson @duncan.dev · 19/10/2025
Finally, last month Ruby Central took some much needed steps to consolidate control and accountability over the RubyGems GitHub repositories. It was the right general thing to do but the execution of it was… not the greatest. Blame flew hard and fast.
100
Duncan Davidson @duncan.dev · 19/10/2025
That didn’t help as much as it should have and things have been in an uncomfortable state since then. During my entire tenure at Shopify, I worked closely with the Ruby and Rails teams there and we were incredibly concerned about the security of the Ruby ecosystem software supply chain
100
Duncan Davidson @duncan.dev · 19/10/2025
A bit of history: For a while after its creation, RubyGems was loosely supported by the community. Then, Rails-hosting provider Engine Yard stepped in and provided support until 2015 or so. Then, André Arko and several others formed Ruby Together to serve as a vehicle for sponsorship of the work.
110
Duncan Davidson @duncan.dev · 19/10/2025
I’m really happy to see the RubyGems repository transferred to the Ruby organization. This is probably 20 years overdue. www.ruby-lang.org/en/news/2025...
ruby-lang.org
The Transition of RubyGems Repository Ownership
120
Duncan Davidson @duncan.dev · 18/10/2025
I’m really happy that Ruby core is stepping in for the repos/governance. Gems is core to Ruby now, and has been for a long time. It should be there, imo.
100
Duncan Davidson @duncan.dev · 18/10/2025
I’ve been staying out of it but I know that there are layers and layers, probably most of which aren’t visible and therefore making what we see in the surface seem really weird.
100
Duncan Davidson @duncan.dev · 06/10/2025
It’s a fascinating example of how LLMs generate what *ought* to exist rather than what *does* exist. Pattern matching, not truth retrieval. Theia Vogel has a great deep-dive on why this happens: vgel.me/posts/seahor...
vgel.me
Why do LLMs freak out over the seahorse emoji?
Investigating the seahorse emoji doom loop using logitlens.
000
Duncan Davidson @duncan.dev · 06/10/2025
There is no seahorse emoji. But GPT-5, Claude, and most other LLMs are absolutely convinced there is—and will confidently try to give you one if you ask.
110
Duncan Davidson @duncan.dev · 01/10/2025
I like the slight change in attitude that Sonnet 4.5 has. When it was reviewing my latest link blog post and adding in the confidence it had in its answers (in my preference prompt), it replied: “Confidence level: Pretty high - I write and edit regularly, though of course taste varies.” 🤣
010
Duncan Davidson @duncan.dev · 01/10/2025
Good timing for sure!
010
Duncan Davidson @duncan.dev · 10/09/2025
Really cool to see that @flox.dev keeps expanding where Nix and reproducible environments can go.
020
Duncan Davidson @duncan.dev · 08/09/2025
I really like how Reeder renders the `external_url` property in JSON feed and finally got off my butt and implemented a JSON feed for my site. Yay for the open web!
020
Duncan Davidson @duncan.dev · 01/09/2025
KPop Demon Hunters is on heavy rotation in the house these days, which means those damn catchy tunes are ear-wormed into my brain. Solution: Headphones and a thorough metal cleanse followed up by some good beats. Today’s treatment is the new Linkin Park followed up by some Chemical Brothers.
020
Duncan Davidson @duncan.dev · 19/08/2025
Halcyon on and on… so good
010
Duncan Davidson @duncan.dev · 19/08/2025
Reminder: the ‘Rona is still out there even in the summertime on the beach where I’ve been. This time pretty mild so far, thankfully.
030
Duncan Davidson @duncan.dev · 19/08/2025
Well… you know.
030
Duncan Davidson @duncan.dev · 27/07/2025
I’m a fan of Satya and hold Microsoft stock.But I’m not a fan of this zero-sum approach to the near future. I may be naïve. But I still believe there’s a positive-sum version of AI disruption—one that values people and builds new leverage for teams, not just balance sheets.
030
Duncan Davidson @duncan.dev · 27/07/2025
That inversion? It’s the shift from human-driven productivity to AI-driven margins. It’s a vision where profitability can grow—without so many of those messy human costs.
100
Duncan Davidson @duncan.dev · 27/07/2025
Satya’s memo is polished and clear. It lays out Microsoft’s pivot toward an AI-first future and positions layoffs as an inevitable consequence of reinvention at scale. “For years, the sector has been generous to its employees… AI, however, inverts that relationship.” says Om.
100
Duncan Davidson @duncan.dev · 27/07/2025
Microsoft lays off ~15,000 people in a year where it reports record profits. Satya Nadella sends a memo framing the pain as necessary and leadership as embracing it early. Om Malik took a closer look: om.co/2025…
om.co
110
Duncan Davidson @duncan.dev · 13/07/2025
One door closes and the next opens. God speed my friend.
030
Duncan Davidson @duncan.dev · 16/06/2025
Almost four and a half years ago in early 2021, I went to work at Shopify. It was one of the best jobs I’ve had. But every tour of duty comes to a close. I’m going to take a few months this summer to really reflect on what I want to take forward with me. duncan.dev/post/free-ag...
duncan.dev
A free agent again, for now
After over 4 years at Shopify, I’m a free agent again. The AI revolution feels like 1997’s web all over again. It’s time to step back and reflect on what I’ve learned and what’s next.
191
Duncan Davidson @duncan.dev · 14/06/2025
Neither do a lot of people. 🤷🏼
100
Duncan Davidson @duncan.dev · 14/06/2025
I've found that leaning into Daniel Kahneman’s "Thinking fast and slow" has really improved the way I work with LLMs. It’s all about the mindset you arrive with. duncan.dev/post/ai-thin...
duncan.dev
AI thinks fast, so think slow
It’s useful to treat LLM outputs as System 1 thinking (fast, reflexive, pattern-matching) while you provide System 2 oversight (deliberate, logical). This framework helps maintain thoughtful human jud...
130
Duncan Davidson @duncan.dev · 13/06/2025
Claude can create 50 API designs in minutes. ChatGPT can write endless variations. The new superpower isn’t generating work — it’s knowing what to reject. duncan.dev/post/art-of-...
duncan.dev
The art of saying no
Claude can create 50 API designs in minutes. ChatGPT can write endless variations. The new superpower isn’t generating work — it’s knowing what to reject. Curation is becoming the primary creative act...
1183
Duncan Davidson @duncan.dev · 11/06/2025
I picked up a new MacBook Pro on recent travels and the model I wanted at the Apple Store had a nano-texture screen. And oh boy, yah. Me like. It’s gooooood.
060
Duncan Davidson @duncan.dev · 27/05/2025
Especially when enhanced by jet lag.
120
Duncan Davidson @duncan.dev · 27/05/2025
I type as I walk down a hall very unlike the Severance halls but … oddly disturbing as well.
120
Duncan Davidson @duncan.dev · 27/05/2025
Maybe a grunge version of Severance.
010
Duncan Davidson @duncan.dev · 26/05/2025
This used to be a Walgreens that i shopped at. Now, i want to shoot a movie here with some sort od fitting plot line of emptiness and a state of being discarded.
Empty store interior that was used for decades as a drug store and is now empty
580
Duncan Davidson @duncan.dev · 26/05/2025
Setting up a new personal laptop and digging into @flox.dev to set things up. We’ve been using Nix a lot more at work, but I really like the layer on top of Nix that Flox gives.
151
Duncan Davidson @duncan.dev · 22/05/2025
Happy to see the Shopify logo up in the Anthropic presentation!
040
Reposted by Duncan Davidson
BWJones @bwjones.bsky.social · 21/05/2025
James Duncan Davidson @duncan.dev In SLC, UT bryanwjones.com/2025/05/jame...
A black and white photograph of a brilliant renaissance man, and all around good human being, James Duncan Davidson looking into the camera.
061
Duncan Davidson @duncan.dev · 21/05/2025
I wish I’d been in an A seat for this approach. Still, it always brings a smile to my face to see the Bay Area out the window.
040
Duncan Davidson @duncan.dev · 21/05/2025
What’s up?
Escalator at Munich airport.
030
Duncan Davidson @duncan.dev · 20/05/2025
Thanks @craigmod.com craigmod.com/books/other_...
191
Duncan Davidson @duncan.dev · 07/05/2025
I’m totally stoked about this: zed.dev/agentic. Yes, Cursor and Windsurf and even using Copilot in VScode are good. But, I’ve got a soft spot for @zed.dev and I’m so happy to see their new agent mode ship. Great agent in a super fast editor. 🎉
zed.dev
Zed — Agentic Editing
Collaborate with agents at 120fps in a natively multiplayer IDE.
030
Duncan Davidson @duncan.dev · 23/04/2025
You know what I really dislike about GraphQL? All requests look the same in HTTP logs. I really miss not having that when I’m trying to figure out why something something that somebody is doing in their app is blowing up our SaaS provider. (intentionally left vague to protect the guilty)
040
Duncan Davidson @duncan.dev · 25/03/2025
I think the lesson I’m taking away is that I should accept more invitations to group chats that I don’t recognize. 😳
040
Duncan Davidson @duncan.dev · 25/03/2025
Plz send again.
010
Duncan Davidson @duncan.dev · 14/03/2025
Make it bourbon. 🥃
010
Duncan Davidson @duncan.dev · 09/03/2025
And arrive. Early. 45 mins early.
Airplane flying over the Rocky Mountains
030
Duncan Davidson @duncan.dev · 09/03/2025
PS: I love you Canada. But I don’t feel the same way about your airlines.
040
Duncan Davidson @duncan.dev · 09/03/2025
I ended the day in a warm room and a comfy bed with a laptop in my lap. So, success? 😆😀
020
Duncan Davidson @duncan.dev · 09/03/2025
Watch the sunrise.
View out an airplane window of a sunrise. A wing is in the foreground.
240
Duncan Davidson @duncan.dev · 09/03/2025
Wake up. Nothing from first airline. Incomplete reservation. So I call again. And hold. And pack. And go back to airport. Still on hold. Time to call it. Check in for my backup. Drop off bag. Security. Coffee. Exit row to myself. It’s time to fly.
120
Duncan Davidson @duncan.dev · 09/03/2025
Get to NY. First airline says call us. So I do. And hold. And hold. Hours. I book a new ticket. Fully refundable. I have a safety net. Relief. Fall sleep before I get off hold.
110