sophie alpert
@sophiebits.com
9.9K followers 230 following 480 posts
you have the ability to understand things principal engineer, react person, super gay, still masking
Posts Media Videos Starter Packs
sophiebits.com
h/t @simonwillison.net for writing a lot about AI security
sophiebits.com
More blogging! I don't want AI agents controlling my laptop. Not because that's not useful, but because it's incredibly hard (impossible?) to do securely: sophiebits.com/2025/09/09/a...
I don’t want AI agents controlling my laptop
sophiebits.com
sophiebits.com
yes! I didn’t realize until this week that it used similar techniques
sophiebits.com
no need to deviate from the style you use for everyone!
sophiebits.com
love it! (btw I use she/her pronouns)
sophiebits.com
probably cases where all three make sense! I know some providers eg Materialize also offer subscriptions on top of materialized views so you can have both in the same system
sophiebits.com
I wonder why you still need memory turned on at the account level to enable it!
sophiebits.com
I keep getting into conversations with engineers where I talk about how desperately I want my database to support materialized views with incremental updates and too often I get a blank stare in response.

so I wrote a new post about why you should care! sophiebits.com/2025/08/22/m...
Materialized views are obviously useful
sophiebits.com
sophiebits.com
right now I'm at Clay! hiring mostly in NYC and SF only for now www.clay.com/jobs
Open roles at Clay | Clay.com
www.clay.com
sophiebits.com
"there’s no way to get at those thinking traces via the API; all you get is silence" — this isn't true, you can pass {"reasoning": {"summary": "auto"}} in Responses API to get similar "thinking summaries" streamed
sophiebits.com
you gotta say which processes!
sophiebits.com
if you’re seeing it in screen recordings then it’s probably this

if you’re seeing it IRL then idk maybe something else
sophiebits.com
I have a confession to make. I've gone back and forth on whether to say anything, but I can't keep quiet any longer—not only does this look bad, it makes no sense. Please stop doing the cursor-smoothy effect that Screen Studio does. It's so bad. Not how hovering on things works!! Hello!
sophiebits.com
(logos are kimi, deepseek, qwen, openai, anthropic, gemini)
sophiebits.com
A provider component like in your screenshot makes this mostly moot.
sophiebits.com
so that if `theme` changes and App rerenders, then it won’t also rerun MainContent and its children and their children, just the descendants that actually listen to the theme.
sophiebits.com
I’m pretty sure what I meant is like if you have

function App() {
const [theme, setTheme] = useState();
return (
<ThemeContext value={theme}>
<MainContent route={…} />
</ThemeContext>
);
}

then you want MainContent to have a memo()…
sophiebits.com
you’re just like Padparadscha
sophiebits.com
you can always do the “5 whys” in your incident review but be careful about going past that because after like 8 whys it’s just “capitalism”
Reposted by sophie alpert
sophiebits.com
every time you think "maybe I should add a layer of caching in the application", take that energy and make the database faster instead
sophiebits.com
every time you think "maybe I should add a layer of caching in the application", take that energy and make the database faster instead