"He who has begun is half done; dare to know, begin!" (Horace)

I wanted to take the process seriously, to give myself a fair chance of being accepted. As soon as I decided to apply I had a mindset switch into one I might have when applying for a full-time job, or some other important consideration.

I’d been self-employed for a very long time and had fallen out of practice with this kind of process, so before I’d even started the application this shift was already interesting and useful for me.

The application process has 3 main steps:

1. Written application

This was a bit more involved than just filling out a simple form. Apart from the usual personal details there were also questions that required more of a lengthy response in prose. This created an opportunity to be expressive and tell a story.

It felt like RC wanted to start getting an idea of who I was qualitatively, not just quantitatively. I liked that.

2. Conversational interview

This was a pleasant, informal Zoom call. In my case the interview (just a chat really) was with an RC alum. We had an easy conversation, a bit of a laugh and we had overlapping interests (this pattern repeated throughout RC, everybody was easy to get along with and commonality was… common).

3. Pair programming

I felt a little anxious about this stage. I’d never done pair programming before. I hear so much talk of pair programming… people doing it at work, using it as part of job interviews. I wasn’t sure I’d know how to do it.

Some things I’d read from RC earlier in the application process had made it clear that the pair programming wasn’t a test, that there was no need to stress about it. I gathered that it was more about finding out how I approach coding problems, and how I can communicate about them during collaboration.

You can choose from several suggested ideas about what to pair on. The ideas are diverse, from Computer Science stuff to more what I’d call jobbing, everyday programming tasks. You can also suggest your own. I think the goal is just to show that you are able to write code and to communicate it and your thought processes.

One of the suggestions was to make some form of Space Invaders game. I already had the beginnings of a game engine from another game I’d built, so I took the opportunity to generalise what I had and re-shape it into Space Invaders.

I was paired with another lovely person, another alum who was again kind, supportive and easy to talk to. By chance, and unlike any of the other code I ever write, ever, my Space Invaders had some bugs. So we just worked through a couple of those.

It was a short session and time whizzed by. Actually it was fun.


The application process had been beneficial in itself. Whether I’d be accepted onto a batch or not:

  • I’d clarified some of my thinking on things like ‘my story so far’ in terms of being a programmer, and my aims
  • I’d had a couple of Zoom calls with (nice) strangers thousands of miles away, which was helping to normalise video calls for me
  • I’d even done my first little bit of pair programming!

Already, I’d gained from this endeavour. Even if I didn’t get invited to a batch I was still up on the deal.

Want to become a better programmer? Join the Recurse Center!