Sam Rose
@samwho.dev
That guy who makes visual essays about software at https://samwho.dev.
Developer Educator @ ngrok.com. Want to pair on something ngrok related? Let's do it! https://cal.com/samwho/workhours
He/him.
Developer Educator @ ngrok.com. Want to pair on something ngrok related? Let's do it! https://cal.com/samwho/workhours
He/him.
Pinned
Sam Rose
@samwho.dev
· Dec 24
Hi 👋 I'm Sam, I create interactive visualisations about programming.
My posts from 2024:
- samwho.dev/bloom-filters
- encore.dev/blog/queueing
- samwho.dev/turing-machi...
I also appeared on 2 podcasts:
- hanselminutes.com/953/computer...
- www.youtube.com/watch?v=ur9c...
My posts from 2024:
- samwho.dev/bloom-filters
- encore.dev/blog/queueing
- samwho.dev/turing-machi...
I also appeared on 2 podcasts:
- hanselminutes.com/953/computer...
- www.youtube.com/watch?v=ur9c...
A lil' look at what's in the kitchen at the moment. Spent the day making this very high level visual of LLM inference.
November 10, 2025 at 6:13 PM
A lil' look at what's in the kitchen at the moment. Spent the day making this very high level visual of LLM inference.
I was reading the Anthropic documentation on prompt caching and noticed this line:
> Organization Isolation: Caches are isolated between organizations. Different organizations never share caches, even if they use identical prompts.
Which got me wondering why. Is this to prevent timing attacks?
> Organization Isolation: Caches are isolated between organizations. Different organizations never share caches, even if they use identical prompts.
Which got me wondering why. Is this to prevent timing attacks?
November 10, 2025 at 10:26 AM
I was reading the Anthropic documentation on prompt caching and noticed this line:
> Organization Isolation: Caches are isolated between organizations. Different organizations never share caches, even if they use identical prompts.
Which got me wondering why. Is this to prevent timing attacks?
> Organization Isolation: Caches are isolated between organizations. Different organizations never share caches, even if they use identical prompts.
Which got me wondering why. Is this to prevent timing attacks?
The tragic reality of being a parent: all of your precious little free time comes when you are too tired to do anything with it.
November 9, 2025 at 8:57 PM
The tragic reality of being a parent: all of your precious little free time comes when you are too tired to do anything with it.
A couple of weeks ago I moved my home office from the 3rd floor to the ground floor. 3rd floor was just way too anti-social, I prefer to be closer to my family.
My wife thought a dark wall behind me would be cool and I agree! Getting some shelves on Tuesday, can’t wait.
My wife thought a dark wall behind me would be cool and I agree! Getting some shelves on Tuesday, can’t wait.
November 9, 2025 at 6:18 PM
A couple of weeks ago I moved my home office from the 3rd floor to the ground floor. 3rd floor was just way too anti-social, I prefer to be closer to my family.
My wife thought a dark wall behind me would be cool and I agree! Getting some shelves on Tuesday, can’t wait.
My wife thought a dark wall behind me would be cool and I agree! Getting some shelves on Tuesday, can’t wait.
Reposted by Sam Rose
Hey #FrontEndSky, do you have good resources for building React applications with ideas and examples for scalable, easy to extend architectures? I’m working in a massive codebase and as a React noob I struggle to identify good patterns from bad ones
November 9, 2025 at 10:13 AM
Hey #FrontEndSky, do you have good resources for building React applications with ideas and examples for scalable, easy to extend architectures? I’m working in a massive codebase and as a React noob I struggle to identify good patterns from bad ones
Alright, who have you got in your RSS feeds? I only have a few and I’d like more. Ideally the feeds where you genuinely read every single post they make.
Molly White would be in this list but I consume her stuff via podcast instead.
Molly White would be in this list but I consume her stuff via podcast instead.
November 9, 2025 at 8:04 AM
Alright, who have you got in your RSS feeds? I only have a few and I’d like more. Ideally the feeds where you genuinely read every single post they make.
Molly White would be in this list but I consume her stuff via podcast instead.
Molly White would be in this list but I consume her stuff via podcast instead.
@joshwcomeau.com in the video demo near the top of www.joshwcomeau.com/blog/hands-f..., you manage to capture the pop zoom effect Talon does. How on earth did you do it? All of the screen recording software I’ve tried so far won’t capture it, and they also don’t capture the Talon overlay.
November 8, 2025 at 4:14 PM
@joshwcomeau.com in the video demo near the top of www.joshwcomeau.com/blog/hands-f..., you manage to capture the pop zoom effect Talon does. How on earth did you do it? All of the screen recording software I’ve tried so far won’t capture it, and they also don’t capture the Talon overlay.
My 6yo has been very difficult lately. Refuses to leave the house, so my wife and I have to split up on the weekends so our 5yo can go out and do things.
For the first time since August, 6yo asked to go to soft play and has actually come in. He’s done this before and had a meltdown on arrival.
For the first time since August, 6yo asked to go to soft play and has actually come in. He’s done this before and had a meltdown on arrival.
November 8, 2025 at 3:42 PM
My 6yo has been very difficult lately. Refuses to leave the house, so my wife and I have to split up on the weekends so our 5yo can go out and do things.
For the first time since August, 6yo asked to go to soft play and has actually come in. He’s done this before and had a meltdown on arrival.
For the first time since August, 6yo asked to go to soft play and has actually come in. He’s done this before and had a meltdown on arrival.
These slides are by ITA Software, which got bought by Google and became Google Flights. I was fortunate to see an updated version of these slides in a talk someone from the ITA acquisition gave while I worked at Google. Totally bonkers.
www.ai.mit.edu/courses/6.03...
www.ai.mit.edu/courses/6.03...
www.ai.mit.edu
November 8, 2025 at 2:29 PM
These slides are by ITA Software, which got bought by Google and became Google Flights. I was fortunate to see an updated version of these slides in a talk someone from the ITA acquisition gave while I worked at Google. Totally bonkers.
www.ai.mit.edu/courses/6.03...
www.ai.mit.edu/courses/6.03...
This is unbelievably well done.
November 8, 2025 at 2:20 PM
This is unbelievably well done.
Ross is one of the most gloriously British and wonderful people. Enjoyed this talk.
Oh, yay! I didn’t think my LoopConf talk recording was going to be free to watch. But it’s out on YouTube.
This was an epic labour of love. I’m so glad I can share it with you.
My 25 Lessons from 25 years of software development in (a little over) 25 minutes.
youtu.be/cyxQ82L298Y
This was an epic labour of love. I’m so glad I can share it with you.
My 25 Lessons from 25 years of software development in (a little over) 25 minutes.
youtu.be/cyxQ82L298Y
25 Lessons from 25 Years
YouTube video by LoopConf
youtu.be
November 7, 2025 at 10:45 PM
Ross is one of the most gloriously British and wonderful people. Enjoyed this talk.
I went and set all of these to “warn” when I first saw this a couple of days ago and I’m yet to see any of them in my feed.
Y’all are too delightful.
Y’all are too delightful.
If you aren't seeing skeets from some of your fave people, they might have been labeled "Rude" by bsky mods. Idk what they are thinking, I don't need a mommy to tell me who to be buddies with. Anyway, go into Settings > moderation > bluesky moderation (advanced) and turn Rude off.
November 7, 2025 at 7:50 PM
I went and set all of these to “warn” when I first saw this a couple of days ago and I’m yet to see any of them in my feed.
Y’all are too delightful.
Y’all are too delightful.
It’s remarkable how useful keyboard shortcuts are. I frequently navigate my laptop using voice. I use talonvoice.com to do this and if your app has keyboard shortcuts, it means it is by-default accessible to me. I can map my voice to keyboard shortcuts very easily. If it doesn’t, it’s a nightmare.
November 6, 2025 at 11:43 PM
It’s remarkable how useful keyboard shortcuts are. I frequently navigate my laptop using voice. I use talonvoice.com to do this and if your app has keyboard shortcuts, it means it is by-default accessible to me. I can map my voice to keyboard shortcuts very easily. If it doesn’t, it’s a nightmare.
Reposted by Sam Rose
Nick Mohammed is a national fucking treasure.
November 6, 2025 at 11:24 PM
Nick Mohammed is a national fucking treasure.
Got to the part of "temperature" and I'm aware that a higher temperature == less predictable but never knew why.
Turns out it's very simple. Before the "score" for a set of tokens is turned into a probability distribution it's divided by the temperature. Higher values "flatten" the distribution.
Turns out it's very simple. Before the "score" for a set of tokens is turned into a probability distribution it's divided by the temperature. Higher values "flatten" the distribution.
November 6, 2025 at 5:47 PM
Got to the part of "temperature" and I'm aware that a higher temperature == less predictable but never knew why.
Turns out it's very simple. Before the "score" for a set of tokens is turned into a probability distribution it's divided by the temperature. Higher values "flatten" the distribution.
Turns out it's very simple. Before the "score" for a set of tokens is turned into a probability distribution it's divided by the temperature. Higher values "flatten" the distribution.
Very pleasant surprise to hear that ittybit.com are sponsoring @mostlytechnical.com now. They’re my first and only sponsor and they’ve been an absolute delight to work with.
November 6, 2025 at 12:45 PM
Very pleasant surprise to hear that ittybit.com are sponsoring @mostlytechnical.com now. They’re my first and only sponsor and they’ve been an absolute delight to work with.
I’m having such a blast working through “Build a Large Language Model (From Scratch)” by Sebastian Raschka. I realise I’m only scratching the surface of a field with decades of history, but I feel much more able to understand things I read now I’ve seen how a model works.
November 6, 2025 at 9:17 AM
I’m having such a blast working through “Build a Large Language Model (From Scratch)” by Sebastian Raschka. I realise I’m only scratching the surface of a field with decades of history, but I feel much more able to understand things I read now I’ve seen how a model works.
Remember you used to be able to create a “briefcase” in Windows? I used to put my homework in one because it felt more serious.
I just learned that they existed all the way through to Windows 10 and they had a file sync feature?! Anything you drag to it would be synced if you saved it again.
I just learned that they existed all the way through to Windows 10 and they had a file sync feature?! Anything you drag to it would be synced if you saved it again.
November 6, 2025 at 7:55 AM
Remember you used to be able to create a “briefcase” in Windows? I used to put my homework in one because it felt more serious.
I just learned that they existed all the way through to Windows 10 and they had a file sync feature?! Anything you drag to it would be synced if you saved it again.
I just learned that they existed all the way through to Windows 10 and they had a file sync feature?! Anything you drag to it would be synced if you saved it again.
Alright, so for the last couple weeks I've been working on dark mode for samwho.dev. It has been really hard work. This is my first time designing a dark mode theme, and I didn't make it easy on myself, so I am very humbly asking for your feedback 🙏
samwho.dev/big-o?theme=...
samwho.dev/big-o?theme=...
Big O
A visual introduction to big O notation.
samwho.dev
November 5, 2025 at 10:42 PM
Alright, so for the last couple weeks I've been working on dark mode for samwho.dev. It has been really hard work. This is my first time designing a dark mode theme, and I didn't make it easy on myself, so I am very humbly asking for your feedback 🙏
samwho.dev/big-o?theme=...
samwho.dev/big-o?theme=...
Oh so _that’s_ how people are going to connect to it.
The software architecture of my PETaflop Kubernetes cluster for kubecon is coming along
November 5, 2025 at 8:03 PM
Oh so _that’s_ how people are going to connect to it.
Videos on landing pages: yay or nay? Do you watch them or scroll past?
November 5, 2025 at 9:50 AM
Videos on landing pages: yay or nay? Do you watch them or scroll past?
Reposted by Sam Rose
Now I’m between jobs I can tell the story of the company I spent 18 hours of my life interviewing for only to get a generic rejection and no feedback.
It started out with their CTO reaching out to me excitedly wanting to sell the idea of the company to me.
It started out with their CTO reaching out to me excitedly wanting to sell the idea of the company to me.
August 11, 2025 at 2:15 PM
Now I’m between jobs I can tell the story of the company I spent 18 hours of my life interviewing for only to get a generic rejection and no feedback.
It started out with their CTO reaching out to me excitedly wanting to sell the idea of the company to me.
It started out with their CTO reaching out to me excitedly wanting to sell the idea of the company to me.
Are you going to Kubecon NA next week? The @ngrok.com team are going to be there at booth #1341. They're lovely and they have stickers and donuts, you should go say hi!
ngrok.com/blog/kubecon...
ngrok.com/blog/kubecon...
November 4, 2025 at 4:08 PM
Are you going to Kubecon NA next week? The @ngrok.com team are going to be there at booth #1341. They're lovely and they have stickers and donuts, you should go say hi!
ngrok.com/blog/kubecon...
ngrok.com/blog/kubecon...
Reposted by Sam Rose
reading: "Inline Custom Identifiers"
blog.kizu.dev/inline-custo...
good and simple ideas here! sucks the `anchor` attribute isn't happening. Naming stuff in CSS is a real pain.
I use the `attr(type())` trick but it's chrome only 😔
dbushell.com/2025/11/01/b...
blog.kizu.dev/inline-custo...
good and simple ideas here! sucks the `anchor` attribute isn't happening. Naming stuff in CSS is a real pain.
I use the `attr(type())` trick but it's chrome only 😔
dbushell.com/2025/11/01/b...
Inline Custom Identifiers
This is a quick post about a pattern that I use more and more: a way to connect elements that require named custom or dashed identifiers for various CSS features.
blog.kizu.dev
November 4, 2025 at 7:49 AM
reading: "Inline Custom Identifiers"
blog.kizu.dev/inline-custo...
good and simple ideas here! sucks the `anchor` attribute isn't happening. Naming stuff in CSS is a real pain.
I use the `attr(type())` trick but it's chrome only 😔
dbushell.com/2025/11/01/b...
blog.kizu.dev/inline-custo...
good and simple ideas here! sucks the `anchor` attribute isn't happening. Naming stuff in CSS is a real pain.
I use the `attr(type())` trick but it's chrome only 😔
dbushell.com/2025/11/01/b...
Reposted by Sam Rose
We often hear that folks want "wrap detection" in CSS (i.e. when a flex item shifts into a position where it wraps over to the next line)
What is a real-world example of a use-case you would need this for?
What is a real-world example of a use-case you would need this for?
November 3, 2025 at 7:43 PM
We often hear that folks want "wrap detection" in CSS (i.e. when a flex item shifts into a position where it wraps over to the next line)
What is a real-world example of a use-case you would need this for?
What is a real-world example of a use-case you would need this for?