Summer of Sharpening

As we head into fall, I wanted to write up a bit of an experience report on a project I ran this summer with a few other people on the SpiderMonkey team.

A few of us on the team chose to block off some time during the summer to do intentional professional development. Exploring topics that we hadn’t looked into, often due to a feeling of time starvation.

Myself, I blocked off 2 hours every Friday through the summer.

In order to turn this into a team exercise, rather than just a personal development period, I create a shared document where I encouraged people to write up their experiments, so that we could read about their exploits.

How did it go?

Well, I don’t think -anyone- did 2 hours every week But I think most people did a little bit of exploration.

I’ve blogged already a bit about some of the topics I worked on for sharpening time: Both my blog posts about eBPF were a result of this practice. Other things I looked into that I didn’t get a chance to blog about include:

  • Learning about Instruments, and in particular Processor Trace (so painfully slow)
  • Exploring Coz, the causal profiler (really focused on multihreaded workloads in a way that didn’t produce value for me)
  • Playing with Zed (clangd so slow for some reason)
  • ‘vibe coding’ (AI can do some things, but man, local minima are a pain).
  • Exploring different options for Android emulation
  • Watching WWDC videos on performance optimization (nice overview, mostly stuff I knew).

I was very happy overall with the results, and have already created another document for next year to capture some ideas that we could look into next year.