3 minute read

Daily dispatches from my 12 weeks at the Recurse Center in Summer 2023

I’m tired, man, tell you what. So impressed with all the recursers around me who are finding the time to write actual, thoughtful blog entries and check-ins, not just a couple bullet points. Goals.

I’ll take a quick, daddy’s-tired stab at it once I get those bullet points out of the way. Here’s what I did today:

  • Pair programming workshop with paired implementation of Conway’s Game of Life
  • ML (reading?) group where we did some planning
  • Implementing the Game of Life again, solo, just to see if I could make a really rudimentary command-line version (I could!)

Pairing Workshop

This was wonderful and really helped set the tone for what many say is the most important part of a Recurse Center batch. In fact, I regularly hear former recursers say that this is the one thing they wish they did more. I’m trying to take that advice to heart, but already I can see why folks don’t get in as much of it as they would have liked.

For instance, I’ve already discovered that it’s extremely easy to overbook yourself at RC when there are a thousand tantalizing groups and meetings (more on that later), which means I’ve also discovered how easy it is for dedicated coding time to slip away. My guess is at that it can feel easy to kick the pairing can down the road when the alternative is to hammer alone and unimpeded, which in the short term can certainly be more efficient. Note to self: Don’t do that.

Tantalizing groups and meetings

Don’t be fooled by the lack of a bullet point. Yes, I did indeed also manage today to sign up for more than I can reasonably handle. What, you ask?

  • Neetcode Study Group: Feeling like I gotta commit to this one for some weekly algo and data structures practice. May turn out that pairing on Leetcode problems is a better option, but still plan to check this out.
  • ML Reading Group: Way out of my league with these folks! There’s a plan to do a deep learning course over the coming weeks, so I think maybe I’ll do the first lecture and see whether this is at or beyond my edge.
  • Creative Coding: Excited to check this out, seems like a fun and low-stakes way to do some highly impractical things.
  • Nand2Tetris: Really excited about this group, which, from what I understand, is devoted to building a computer from logic gates, and that’s something I’ve been wanting to do since binge-ing Ben Eater’s series on building an 8-bit breadboard computer. Curious to see where everyone is in this process and how feasible it is for me to jump in. I’ve build clocks, latches, combinatorial circuits, and adders, but nothing beyond.
  • Career Switchers: Counting on meeting some kindred spirits in this one.
  • Data Disco: For all my talk of wanting to resist the impulse to blindly charge into datasets, it’s a fun thing to do, and this seems like a good place to do it.
  • Weekly Presentations: Excited to see others present what they’re doing each week.
  • SICP: Almost forgot this one since it’s brand new and not on the calendar yet, but excited about this group devoted to going through The Structure and Intepretation of Computer Programs, which, among other things, feels like a great excuse to dabble in Scheme/Lisp.

Wavered some more on whether C is my destiny

Right, also skipped this bullet point. Still wavering here. I posed the question yesterday to my fellow recursers, asking for a swift and decisive kick toward C or Rust, and was absolutely humbled by the generous, thoughtful, and detailed suggestions. I think I’m going to commit to C. I think. Going to set a goal this week to try it on with the first few chapters of the Kernighan and Ritchie book.

Game of Life (again)

My pairing partner earlier was a seasoned developer, which was an amazing experience for me, since it meant being able to watch, in real time, someone solve a problem like this in a very focused and structured way and without getting sucked into false or extraneous problems. I learned a lot. But I wanted to see if I could do it again based on what I could remember. Here’s the result:

During the pairing workshop, my partner rather brilliantly leveraged matplotlib to render the grid, which I didn’t even know what possible. I’d been thinking more along the lines of a command-line GUI, so I also wanted to take this opportunity to pursue that lower-tech and less colorful option. I’m happy with the results.