Tomorrow is my first day at the Recurse Center. I just reread the manual, and it made me think a bit about what I’m comfortable with, what I’m not, and how I’m hoping to use my time at RC.

The manual lists the traits of an awesome Recurser:

  • be rigorous
  • strive for greatness
  • reflect on your progress

I feel fairly set with the first two. I’m rigorous almost to a fault, and strive for at least some definition of greatness.This blog post is start on my reflection on progress, and I’ll keep posting here as the summer progresses. I want to force myself to put more time into writing down what I’m learning than I think is reasonable; we’ll see how that turns out!

From the rest of the user’s manual, I came up with a list of relevant things make me feel (un)comfortable.


  • getting and giving code review, particularly in Python or C++
  • writing code slowly
  • agonizing over details1 and being idiomatic in whatever tool or language (this leads directly to the above)


  • pair programming (there is a huge section on pairing in the manual)
  • writing code quickly
  • writing unidiomatic code that works now
  • pair programming
  • also, pair programming

The ‘uncomfortable’ list is particularly telling, and points to where I should focus on the not-entirely-technical side of things. I’ll definitely be reflecting on progress there throughout the summer, along with many other areas.

And now to sleep!

  1. eg, I spent a non-zero amount of time thinking about: whether to spell it ‘Center’ or ‘Centre’; how many times to include pair programming in the ‘uncomfortable list’; and what symbol set to use for footnotes: numbers or *, †, ‡, §, …—I eventually settled on using the built-in footnote feature of the kramdown Markdown processor used by Jekyll