Half Batch Summer 2 Recurse Center Return Statement
A reflection on my time and experience during a 6-week half batch
TL;DR
RC is a lot of fun, if you like programming, or want to get better at programming on your own, apply to a batch. There isn't a syllabus, or course. Just you, your computer, and a (zoom) or physical room, of other like minded folks doing the same thing, scratching a programming itch that they didn't have the time or space to before.
Its a great way to learn about what you don't know you don't know
I initially joined recurse center's programming community in the Winter 2 '16 batch. While I didn't technically write a return statement then, I did write a little bit about my experience here.
Goals
I had an idea of what I was looking for out of my batch. Overwhelmingly, the goal was to have fun this time around. Not to get too hung up on anything and just enjoy the time for what it is. That and to program with as many people as I could.
One of my regrets from my first batch was not pairing with other people enough. Pairing at RC is uniquely different than pairing at a job. There's no code review, no need for anything other than enjoying the creative process with others, having fun and learning something new along the way. Pairing is one of the best ways I found to learn generously during a batch.
Learning generously takes many forms. It means sharing your curiosities, interests, and struggles with others; being open to collaboration; and listening well and asking good questions when others share their work with you. If you’re very social and enjoy variety, it might mean hosting events or pairing on other people’s projects. If you’re focused on one project and work best alone, it might mean presenting your work and sharing updates as you go.
I broke down the half-batch as much as I thought made sense, While I ended up not sticking to the initial plan, but I did mostly stick to having fun with my time and programming at the edge of my ability which build your volitional muscles.
Building your volitional muscles means growing your ability to make decisions about your work and learning based on your own curiosity and joy, rather than external pressures and fears.
My initial outline of how I planned my half-batch is here
I ended up loosing about about a week to holiday, sick days and family obligations, which really made the time fly even faster.
Projects
Done
✅ linear todo comment VSCode plugin and here on the VSCode market place
✅ game of life 3D WASM. this was my first real Rust project. I got a lot of help, and learned a whole bunch, was a great push toward your edge type of project.
✅ SVG generator
In progress
⏰ mdx blog
Failed
🛑 Getting a Rust module to ffi into an expo react-native project.
🛑 Doing react-native animations (I just didn't do them)
📲 I didn't stick with writing swift or expo modules - Blob / Spline in react-native
Day-to-day
✅ I ended up both pairing for the first 13 days straight, which the goal was to pair daily, but I felt like I wasn't getting into work I wanted to really dig into
✅ I picked a project or task to commit to for a couple of days, but always had something else to work on to interleave / keep moving on if I felt the need to procrastinate or just needed to take a break with a change of code scenery.
learning resources
😢 spent a good bit of time on three-journey but abandoned it.
⏰ got through about half of rustlings
⏰ I did a good amount of the type-challenges (most of the easy and a couple medium)
🙃 I did a good amount of LeetCode, but probably should have done more and more consistently
good
🧑🏻💻 I programmed everyday. I didn't commit to Github daily, which I stupidly have anxiety about.
🎨 I went to creative coding most every week. I had a great time! Creative coding was a time / space where there was a prompt, and folks would make digital art. The meetings had a tight time box, and a theme to focus on. It was the perfect short scope time to work with others, or try something new to get your head out of whatever you were currently working on.
bad
🥺 anxiety never sleeps! never stops creeping, ever. I think I could have found better ways to deal with it.
📝 I stopped checking in on zulip after the 3rd week, which is silly! Both from the learning generously side of things, because other batch mates cannot lurk on what you're doing, and join in if it's something they're interested in. Also, to myself, posting regularly is a great habit to get into. It's just generally a great way to reflect on the time spent, and recalibrate if needed.
okay
📲 I wish I would have done more react-native and Swift / Kotlin
Final Thoughts
6-weeks is a short period of time to do anything, which was a great forcing function to not get too hung up on any one project or problem, and just focus on having fun and programming.