Joy Gao

@joygao.bsky.social

software engineer at ClickHouse; prev: Figma, WePay long-form ✍️: https://expertofobsolescence.substack.com

Interviewed an LLM recently for a system design interview. Candidate responded every question with a 5 second lag. There was a bit of eye shifting, but *very* subtle. The answers were unnaturally fluent and canonical.

I think I have completed my five stage of grief (AI edition): denial:"AI is overhyped" anger: "AI code is a sloppy mess!" bargaining: "maybe AI will stay at jr. eng level..." depression: "does craftsmanship still matter?" acceptance: "well, at least I don't have to write boilerplate code anymore..."

This has been my observation, but curious if anyone else feel this way: - if you are a builder at heart, using AI to code energizes you - if you are a craftsman at heart, using AI to code feels like it’s taking something away from you

The second edition of Designing Data-Intensive Applications, by myself and @chris.blue, is finished and sent off to the printers! Ebooks should be available in the next week, and print books in 3–4 weeks. Sigh of relief. 😅 (BTW, this is a good opportunity to support your favourite local bookshop!)

Book cover of "Designing Data-Intensive Applications, 2nd edition". It has a similar wild boar on the cover as the first edition, but it uses O'Reilly's new cover design, and the boar is now slightly colourised.

Nobody: Me: honey I think I finally have an explanation for why you have better senses (taste/smell/vision) than me: my ancestors invented agriculture earlier than yours, and evolution pruned my expensive sensory hardware to adapt to the modern world, while you are still fit for hunter-gatherer

This is so cliche but it is also so true — every time I grow in life/career is when I find myself in a situation I’m not ready/comfortable with. I love routine, but have to keep reminding myself to break it from time to time.

Just like how human are bad at writing correct concurrent code, we are also bad at solving concurrent problems in our lives (both leads to *panic*, lol) So the advice of only introduce concurrency if you must applies as life advice too: solve one problem at a time, multitask only if you must.

People are like programming languages, with personalities on a spectrum between strongly typed and weakly typed. The strongly typed prefer routines, structures, and consistency; the weakly typed prefer and thrive in a dynamically changing environment. Yes I am strongly typed 😆

One of my favourite things about working at ClickHouse (and storage systems in general) is we get to nerd out on performance optimizations constantly.

When working on an international team, one thing I learned is that interpersonal communication and team culture is navigated very differently from when the entire team comes from a similar cultural background.

Netflix had it all wrong, don’t waste engineering resources to build your own chaos monkey infrastructure, just put production on AWS us-east-1 and you get chaos monkey for free. Just kidding, just kidding…