I’m learning to code (#1)—Introduction
The last few years have been non-stop. I guess that’s a given, seeing as that’s how time seems to work. But my story…
Week one has come to an end and it’s time for me to look back at the work I’ve done so far at the Recurse Center.
Show up and code
As I mentioned in my previous post—Recurse Center is completely self-guided. This was somehow extremely difficult to describe to my mother (love you mom, thanks for reading!) so let’s see if I can do a better job here.
Basically, self-guided means no specific/defined goals, other than those you choose to set for yourself. No explicit check-ins, outside of wanting to share with peers or present a demo. No requirements in terms of lines of code written, products/prototypes built, or anything else. The only real requirement is to show up and code.
My first week was a nice and healthy mix of feeling overwhelmed and accomplished. I had a meeting with one of the facilitators to discuss the fact that I’m super excited to go down all of these different paths, and what my approach should be. The facilitator’s suggestion was so plain and straightforward, I am happy it was presented as easily as possible. She stated that most success at Recurse comes from people who write a lot of code. She suggested that I pick the path that would get me to write the most amount of code.
The crafts of design and development are not all that different. They are both creative endeavors which require a level of consistent engagement to improve. A story I keep referring back to in my career comes from the book Art & Fear by David Bayles and Ted Orland. The story is about a beginner’s ceramics class:
The ceramics teacher announced on opening day that he was dividing the class into two groups. All those on the left side of the studio, he said, would be graded solely on the quantity of work they produced, all those on the right solely on its quality.
His procedure was simple: on the final day of class he would bring in his bathroom scales and weigh the work of the “quantity” group: fifty pound of pots rated an “A”, forty pounds a “B”, and so on. Those being graded on “quality”, however, needed to produce only one pot — albeit a perfect one — to get an “A”.
Well, came grading time and a curious fact emerged: the works of highest quality were all produced by the group being graded for quantity. It seems that while the “quantity” group was busily churning out piles of work — and learning from their mistakes — the “quality” group had sat theorizing about perfection, and in the end had little more to show for their efforts than grandiose theories and a pile of dead clay.
Recurse Center is seemingly built upon the idea that quantity leads to quality. This prevents overthinking, delaying, and waiting for inspiration. To be successful at Recurse, I’m responsible for showing up, doing the work, and to keep going. I’ve recently started reading the blog Excellent Journey, and it discusses a lot of these same learnings and values.
In positive psychology theory there is a concept called flow. It’s a mental state in which one is fully-immersed in the activity he or she is performing. It’s a form of energized focus, full involvement, and enjoyment in the process of the activity. I can say for sure that only few moments in my life have been definitely moments of flow. However, this week has been full of these moments.
How I’ve spent my days
In the afternoons, I spend my time hacking on a personal project of mine. The product in a nutshell is a tool to help teams and individuals run more action-oriented and collaborative meetings. The features are constantly being pared down instead of added to—my goal is to have a prototype by the time I leave the program. This is the depth component of my experience at Recurse.
This past week was my first time ever pair programming with another developer.
Pair programming is a technique in which two developers work together at one workstation. One plays the role of the driver and writes code. The other, the navigator, reviews and talks through each line of code as it is typed in. The two developers switch roles frequently.
Pairing for the first time felt incredibly intimidating, but I need to go back to what I’ve stated many times before—Recursers are focused on helping others’ success. My partner was incredibly helpful, thoughtful, and fun to work with. Pairing was one of the most fun things I did all week.
Every day, I’ve tried to get a coffee, tea or meaningful conversation with at least one or two new Recursers. I’ve recognized that I’m much better and more attentive in a smaller, more intimate conversations, so this is my way of engaging with the community around me. Everyone is working on incredibly impressive work, whether it’s a cryptocurrency exchange API, or someone’s first foray into hardware and electronics.
How far I’ve come along
Well, here’s the collaborative meeting product I’ve built so far:
It’s a super simple text editor. Like, totally barebones. Barely anything. But… there’s some magic under the hood which I feel really proud of.
I’m using Google’s Firebase to update the content of the notes in realtime, across the web. That means one single realtime version of the meeting agenda and notes across multiple users.
Still definitely a long way to go, but if you told me on Monday that I would have had this working on Friday, I can whole-heartedly say I wouldn’t have believed you.
The journey is long, but if this first week was any indication, Recurse is going to be a great experience.
I would love to start pairing with more fellow Recursers. Every project I see others work on gets me excited and makes me want to push myself more.
Time management is a real thing, and by the time the evening comes I get exhausted and cannot look at my computer screen any more. I am looking forward to finding a sustainable way of staying involved after-hours without my recurse experience becoming overwhelming.
One thing I can say for sure—I’m excited to get going again by the time it’s the morning and I get set up for another day of coding.
This story is part of a series on my experience learning to code at Recurse Center. Continue reading part 3—Frameworks and fundamentals.
I am a user experience designer from New York. I grew up in Toronto. I’m also the co-founder of SIBlings, a group of designers and developers that design and bring crazy ideas to life. We’re the co-creators of Emoji Salad, an emoji Pictionary SMS game that makes friends out of enemies and enemies out of friends.