What I’ve learnt from a Launch School’s assessment

After going through a few assessments in the Launch School’s curriculum, I thought I’d share some thoughts on what I’ve learnt during one of the assessments.

However, I’m not going to talk about specific programming concepts I was exposed to during the assessment. Rather, I’d like to discuss a certain mindset that I’ve found to be critical in being successful not just in Launch School’s assessments, but also in the mastery of any topics or skills.

I hope this blog post could help in some way those of you going through the same struggle as I’ve experienced (and continue to experience) when learning to program or when learning new skills in general.

The story began after I finished a 1 on 1 interview for the assessment 1**. I was quite confident that I could pass the exam, all the basic syntaxes covered in the courses up to that point perfectly committed to muscle memory.

I felt a little bit discouraged after being given the result of “Conditional Pass” and told to submit a written answer to one of the topics covered during the interview.

Feeling a bit desperate, I tried to submit the answer as quickly as possible, thinking of the revision process as an obstacle that prevented me moving forward (also, I was going to meet a friend of mine the next day, a friend who I hadn’t seen for a long time. This also served as a psychological pressure which made it difficult to focus on the problem at hand. I didn’t want to see the friend with an unresolved problem within my consciousness). Consequently, the way to achieve this was to “hack and slash” by googling and stackoverflowing the concept while not quite caring much about the implications of the information found. What is interesting here is that I somehow “felt” that the answer thus prepared would not be the right one, which turned out to be the case with the instructor saying “This isn’t a good example of what I’m looking for”.

At this point, I felt tired. So much so that I decided to shut down the computer.

Let’s take a break…

The next day, I had a chance to watch a webinar at Launch School entitled “Our Secret Sauce — Mastery Based Learning” (you should definitely check it out if you haven’t already, along with the book Mastery: The Keys to Successful and Long-Term Fulfillment, which is specified as a reading assignment in the webinar) where the instructor explains what mastery based learning is and how this learning process is important for us would-be professional software engineers. Though I’ve already checked the video once, the information provided during the webinar has been remaining a theory which I didn’t quite put into action. This time, however, I felt I could finally appreciate what was explained in the webinar. The mistakes I made during the revision process also served as a remainder of the importance of “mastery based learning”. As a result, I felt my mindset toward Launch School’s courses, or more broadly, the idea of learning itself, slowly change. I started to be conscious of the change in my “energy” when I was in a hurry — when I try to get ahead of myself, thinking of topics I learn as tedious tasks that “have to be tackled” before going on to the next topics which, though quite new and exciting at first, our impatience soon turns into uninteresting chores. Whenever I felt these inner emotional tensions, I determined to tame the “enthusiasm” by calmly analysing the situation at hand.

After all, it is the mastery of a topic that matters. “Local mastery before integration” is the key, as indicated in the webinar. The fact that you see your best friend tomorrow should not get in the way of your mastering a topic.

With this new mindset, I’ve submitted the revised answer, only to be told that I had to submit a better answer. Now, few people would feel excited when not passing an exam and I’m no exception. This time, though, I was not as discouraged as I was the last time, knowing that this discouragement, along with all the anxiety and impatience that come with it, would not do me any good. I used this “event” as an opportunity to train myself to become a more patient learner.

I submitted another revised answer, this time taking more time to prepare the answer not just to pass the assessment, but more importantly, to really understand and “master” the concept. This time … without success.

Here, the “without success” part simply means that I could not get the permission to move on to the next topic and nothing else. Slowly but surely, my answers became refined and closer to the expected answer with each submission (It was after the fourth revision that I was given the permission to move forward).

It’s absolutely true that this revision process helped solidify my knowledge on the topic of which I could not demonstrate the mastery during the interview; after all, conducting four revisions on a particular topic will inevitably allow the topic to be “burnt” to your long term memory.

As I’ve hinted in the beginning of this post, however, the most important lesson I’ve learnt was the mindset that helped me confront this uncomfortable mental force that is “impatience” and use it as a tool to adjust my vision on the idea of “mastery”. An attitude that allows you to stay (relatively) calm and relaxed even when things “go wrong”.

Learning to be patient might take some time, especially when it’s not part of your natural temperament as was the case for me. Indeed, immediately after recognising the necessity of becoming a patient learner, I heard the impatient part of myself saying, “OK. So now you need to acquire a proper mindset. It’s urgent that that you become patient, now. Otherwise, you won’t be able to get the permission to move on to the next lesson”…

It’s not always obvious to think outside of a conceptual framework we are get used to.

I recognised (or I thought I recognised) the importance of patience in the context of learning something while at the same time I was trying to become a patient person as quickly as possible, which is not quite logical. Indeed, the mind is a wonderful servant, but a terrible master. I decided to just take my own time when learning something and at the same time become gentle toward myself if it takes longer than I expected to master a concept, a mindset, or whatever else I wanted to master.

At the same time, the whole experience taught me to appreciate the “process” of learning a material (literally) in front of me, rather than always being preoccupied with the result and not being “present” in that process. The materials you are working on gives you knowledge and empowers you. Why not see them as “teachers” instead of “problems” that have to be “conquered”?

You might think this is “just” a mindset, which could be true. However, I’m now convinced that a proper mindset makes a “huge” difference when you are confronted with challenges which you know will take some time and/or care to resolve.

With this little reflection, I invite you to think for a brief moment about the importance of patience when you are learning something new and how it can ultimately be the “shortest”, surest way toward attaining your learning goal.

Whenever you feel stuck during your programming journey, remember that you are being given an opportunity to acquire a mindset that could potentially be far more important than that programming topic you are struggling with.

Also, don’t forget to take a deep breath, smile and enjoy the process of your programming journey.

Happy coding!

What would you do when you feel you are getting ahead of yourself? Any good tips on how to deal with impatience, anxiety …etc during a learning process? Any comment and feedback will be greatly appreciated.