What I Learned From Practicing Live Coding with Another Student at Launch School

Practicing with a partner can be beneficial towards learning a skill well

Prior to joining Launch School, programming always seemed to me like a task that you had to brute force your way through sleepless nights and endless hours of debugging. But I have never thought that it could actually be interactive — that you could actually code in front of another person, receiving and giving feedback along the way. And it’s important other than just for the preparation of interview assessments at Launch School. I actually found this experience — sitting in front of someone and solving exercises beneficial towards my journey at Launch School.

First here’s a little bit background about myself at Launch School.

At the time of writing, I have been in Launch School for 5 months since the start of Prep course. I took my time throughout the course, spending about 20–25 hours a week in 101 — Programming Foundations, and began scheduling live coding sessions with students since week 3 during the course of 101. I have recently passed my 109 interview assessment, which I wouldn’t have easily did it without the help of other students and the weekly 109 study groups.

Although I would love to share my 109 written and interview assessment experience here, but that could be in itself a separate post so I would leave it for now.

Practicing with a Regular Student

For about 2.5 weeks, I practiced with a regular LS student on a 1-on-1 basis. Since we live in vastly different time zones, I usually wake up at 7AM to begin our practice sessions, and they typically last up to 3 hours long.The student has written a few Medium blog posts including How Hard is Hard Work.

How Hard is Hard Work gave me a perspective on how a student turned his adversity into motivation towards success. Until today, I think it is still one of the best articles that I have read at Launch School.

Bernard Maisel is the LS student who wrote that article. Bernard is not just an ordinary student — he has an enormous drive to succeed in Launch School. What I admire about him is not only his desire to succeed, but his honesty about himself — he is not afraid to open up his strengths/weaknesses to other people and ask for suggestions to improve on a specific skill (such as the ability to articulate code with fluency). He also sought out to help other students — me myself included. We even tried to come up with sessions where other students can join us to practice live coding.

During our practice sessions, we not only took turns to solve small problem exercises, but also discussed on alternative approaches and tried to come up with a succinct solution. We practiced on 101–109 Small Problems, Codewars, and discussed on various techniques like the * splat operator, and using Regex. We did not only gave each other feedback, but also helped each other unstuck at a challenging problem, no matter how long it took either of us to figure it out. Lastly, we encouraged and motivated each other that we would do well in 109 interview assessment.

As I have seen a lot of improvement from him since the last 3 weeks, I am confident that he will do well in it. Bernard and I are also excited to continue on practicing together in 120 (Object-oriented Programming) after he passes his test.

Helping a Student to Practice Live Coding

One thing that I appreciate is that Bernard encouraged an LS student (Annie) during her early stage of going through the 101 course to participate in one of our practice sessions.

In one of our morning (or late night for Bernard) practice sessions, we had Annie Liu join us and have her watch us live code, and later gave her a few exercises to solve. She told us that it is pretty much her first live coding experience, and although it did made her a little nervous at first, she was open to trying out simple exercises in front of us. At the end I thought she had a pretty solid approach towards problem solving.

I can see that Annie has a systematic way of breaking down a problem. Even without advanced knowledge of some Ruby methods, she is not afraid to look up documentation and test them out in irb, until she eventually got it. We gave feedback on how she approached the problems, and suggestions on ways that she could improve. She later thanked us for helping her to gain confidence in live coding and she found our session to be helpful. Bernard and I were both glad that we could help another student starting out LS to gain some confidence. And we probably would like to do more of that in the future.

Practicing with a more experienced LS Student

Try to break down the problem one step further, and you will be able to solve it.

That was an advice I received from an LS student who aced his 109 interview assessment before me — Antonio Constandinou. Even after passing the assessment, he was generous enough to sit down with me for an hour to help me practice the interview format.

Practicing with someone who is more experienced can help you perform better under pressure

And he was professional — yes, just like an interviewer would by asking basic questions, providing appropriate context and instructions before giving me exercises to solve. I appreciate that he was serious about the practice session. He kept silent most of the time just like a real interviewer would, when I was coding and explaining my approach. Honestly, I was a tad nervous during it and it certainly gave me a taste of how other students experienced their first interview assessments. I remember being temporarily stuck at a problem where you need to select hash elements based on a filtering criteria. That made me aware of an anxiety that was about to surface as I was monitoring his reaction, which was a good practice.

Antonio helped me with a couple of things:

  • When I was stuck at a problem, he didn’t just point out the correct way to arrive at the solution, but instead he asked me how I can further break down that problem into smaller parts. I was surprised that just by following that, I was able to unstuck that problem myself.
  • He was confident that I was ready and encouraged me to take the test. He certainly helped me to gain some confidence towards scheduling the interview assessment before I procrastinate longer than I should.

I scheduled my interview a couple of days after and took my test in the following week. And he was right: the interview went easier than I thought. Nonetheless, I wouldn’t have done it better without his help —to get used to coding under pressure.


Summary

Practicing with another LS student is more than preparing for interview assessments, it’s about supporting each other throughout the LS journey, forming new friendships, and learning something beyond what you can do alone. It certainly takes time commitment out of my regular studying schedule to meet and code with another student, but I believe that the benefits are worth it for the long run. To the students who are willing to practice with me, including: Robin (first student whom I practiced with), Bernard, Antonio, Annie and Eden — thank you for spending the time with me, helping me to gain valuable perspectives and inspiration towards writing this article.


** Effort has been made to ensure accuracy of the examples given in this article, based on personal experience. However, if you notice discrepancies or misrepresentations in any way, please let me know and I will review and make changes as appropriate.