Marc Brooker
Serverless, databases, and serverless databases at AWS. Views my own.
Check out my blog: brooker.co.za/blog/
- The world if MacOS supported SECCOMP_RET_USER_NOTIF
- I'm still learning how easy it is to go from "software I wish existed" to "software that exists" now, especially for anything that's a script, automation, or small utility. Everything I internalized in 20 years about the cost of building things has changed in less than two years.
- Reposted by Marc Brooker[Not loaded yet]
- New blog post "Pass@k is mostly bunk" brooker.co.za/blog/2026/01... Pass@k, especially for k>3, can make basically anything look good.
- In my first blog post of the year: The Box. Constraining what AI agents can do is required for making them safe and reliable. Pushing that control out of the agent itself, into its environment (The Box), is the only way to get the outcome we need. brooker.co.za/blog/2026/01...
- Reposted by Marc Brooker[Not loaded yet]
- Reposted by Marc Brooker[Not loaded yet]
- Reposted by Marc Brooker[Not loaded yet]
- New short blog post, touching on how I'd redesign UUIDv7 to keep the database performance benefits while mitigating most of the downsides. Short version: replace unix_ms with H(unix_ms, unix_ms >> 13 | salt). Get yer extremely niche RFC commentary here: brooker.co.za/blog/2025/10...
- New blog post, reflecting on nearly seven years since the Firecracker launch, and how we're using Firecracker to power serverless databases (in Aurora DSQL) and infrastructure for AI agents (in Bedrock AgentCore). Here's the post: brooker.co.za/blog/2025/09...
- Reposted by Marc Brooker[Not loaded yet]
- Reposted by Marc Brooker[Not loaded yet]
- People often ask me about the differences in architecture between Amazon Dynamo (the 2007 SOSP paper), DynamoDB (the AWS serverless NoSQL database), and Aurora DSQL (the AWS serverless SQL databases). I memoized the response on my blog. brooker.co.za/blog/2025/08...
- Reposted by Marc Brooker[Not loaded yet]
- LLMs are more powerful, more dependable, more efficient, and more flexible when deployed as a component of a carefully designed system. New blog post: brooker.co.za/blog/2025/08...
- I had a great time talking to Ben and Will from Antithesis on the BugBash podcast about software testing and validation at AWS. In this wide-ranging hour we talk deterministic simulation testing, fuzzing, formal methods, the history and future of testing, and much more.
- Reposted by Marc Brooker[Not loaded yet]
- Prototyping agents is easy, fast, and fun (especially if you use Strands). But how to you get them into production with all the scalability, security, and resilience you need? We've been building Bedrock AgentCore to answer exactly that question. Check it out: aws.amazon.com/blogs/aws/in...
- I sat down with Darko Mesaros to talk about Kiro, specification-driven development, and putting AI-powered development in context of the history of computing. Is an LLM a compiler? What is a spec? How are specs like SQL? Check it out: www.youtube.com/watch?v=OdD9...
- I've been using Kiro as my primary IDE for a couple months, and am super happy to see it launch. Spec-driven development is super powerful. More reliable, more repeatable, and easier to control than prompt-based vibe coding. Kiro's hooks are also pretty great. I use them to keep clippy happy :)
- Finally got to fixing the "related posts" feature in my blog. The Amazon Titan embedding model on Bedrock, plus cosine similarity, does a nice job:
- Reposted by Marc Brooker[Not loaded yet]
- New blog post, with some career advice: brooker.co.za/blog/2025/06...
- Here's the answer. On the left, we see the great "exponential benefit at linear cost" impact of redundancy. But that quickly tapers off as the single point of failure dominates. What can this teach us about building good HA architectures?
- Wrote a monte carlo simulator in Python. Took 300 seconds to run. Asked Q CLI to translate it to Rust, compile, and run. Took 48 seconds, including the translation, and gave exactly the same result. Is Claude 4 the best Python compiler?
- Availability intuition quiz! I have an architecture with N redundant components, each available 99% of time time, and one non-redundant component available 99.999% of the time. Sketch, on the provided axes, the end-to-end availability curve versus N.
- New blog post, about some of my favorite papers from this year's HotOS program. Love Little's law? Hate fork? Think static analysis of shell programs sounds fun? Had enough of the f threshold model? Check it out for some papers to read: brooker.co.za/blog/2025/06...
- "You will never experience eventuality. Eventual consistency is an abstract concept, not a guarantee you can count on."
- Interested in how we test systems at Amazon? In a new article in Communications of the ACM, Ankush and I write about the evolution of systems correctness and testing practices at AWS. We cover classic and formal approaches, and new ones like deterministic simulation. cacm.acm.org/practice/sys...
- Aurora DSQL is now Generally Available! I couldn't be more proud of the team that brought DSQL to life, and excited about how our customers are going to build on it. 🧵
- Reposted by Marc Brooker[Not loaded yet]
- Last week I had the privilege to give a keynote at the International Conference on Performance Evaluation (ICPE'25). It wasn't recorded, so I captured the key points as a blog post: brooker.co.za/blog/2025/05...
- Recently, one of our testing tools at AWS found an issue with transaction visibility in PostgreSQL, where the order that transactions become visible differs between the primary and replicas. Sergey Melnik dives deep on the AWS Database Blog: aws.amazon.com/blogs/databa...
- I enjoyed @alexmillerdb.bsky.social's "Decomposing Transaction Systems" blog so much I had to write up how I'd decompose Aurora DSQL in a new blog post: brooker.co.za/blog/2025/04...
- This is an excellent insight into the nature of transaction systems. Worth reading if you have any interest in databases.
- New blog post on the mental model I've used when working through complex or confusing papers on transactional systems. transactional.blog/b...
- I generally like Mitutoyo products, but this travel comb sucks.
- Exciting to see another great step forward in the Rust standard library verification contest with the addition of VeriFast. www.linkedin.com/posts/r%C3%A...
- Reposted by Marc Brooker[Not loaded yet]
- It's widely known that sharing a queue across multiple servers, rather than queue-per-server, often helps reduce latency and improve utilization. But when is one queue better? In my new blog post, I look at one case: different classes of work. Read it here: brooker.co.za/blog/2025/03...