Getting ready for the RB129 assessments
It’s funny how things can change after going through the first round of assessments in Launch School. There’s something about getting that first couple of ones out of the way that gives you a little more confidence moving forward. Will it get easier from here on out? Surely it will right?
I now know how to study more efficiently and have a better idea of what the path forward looks like. Having that experience under my belt gave me perspective. And with that perspective I set out to approach learning about OOP in a different way than what felt like my “deer in the headlights approach” on RB101.
I learned how to take better notes and get more organized with Notion. Make better flash cards and more importantly I learned how to really take it sloooowwww. I found that last part to be most important as I went through the course. The advice from other students was to really focus on the intro book as the rest of 120 is mostly building on everything the book teaches. And this advice was spot on.
In addition to all that, there were a few things I did for this round of assessments that I found particularly helpful in hindsight and I am sharing them in the hopes that it might help other fellow students along the way.
Once I got to the end of the lessons and started to get ready for the assessments I had this idea in my head that I’d try and get ready for both at the same time. Unlike the ones for RB109, the assessments in 129 are similar in content. The biggest difference being that you have to be able to articulate the concepts verbally and give examples on the fly as you progress through the interview part. You have to be good at teaching them to someone else. And there’s some debugging as you get through it all. And what better way to get ready for that than practicing with fellow students?
The main thing I did to accomplish this was to hold ‘mock interview’ sessions with as many fellow students as possible. Basically, go over the topics on the study guide and serve up random questions that covered a good explanation of each. Questions such as “What’s the relationship between classes and objects?” or “What are the different types of inheritance?” proved to be helpful.
One useful pointer given to me by Ainaa was to take each general topic from the study guide and make sure to understand 3 key points. Or better said, be able to lay out its definition, implementation and benefits.
Here’s an example on the topic of Encapsulation:
- Encapsulation is hiding pieces of functionality from the rest of the code base and making it available via a public interface.
- We can encapsulate state in objects
- We can encapsulate behavior via method access control by the use of the private and protected methods.
- Data protection
- Protect data from unwanted changes
- Reduce code dependency
Another helpful approach was going over specific code examples while trying to articulate out-loud what was going on in the code. For this I had access to this list of practice problems shared by Jessica that proved invaluable. That along with my rubber duck, who never judges me and is such a patient listener, made for a worthwhile journey.
I also found an idea from Josh very helpful. This was to go over the quiz questions and restructure them. I found going over the quizzes a few more times after finishing the course really insightful. It seemed to help me understand things more clearly as I re-read the answers that seemed so tricky the first time around.
For the written one, I followed the same approach as I did in 109 where I went over each topic in the study guide provided by LS and made sure to understand it inside out. Megan did a wonderful job of sharing her prep experience in this article which has some added links to organized questions on the topics we need to understand for the assessments. I found answering the questions from Megan’s article a helpful way to deepen my understanding of OOP concepts. I actually answered all of her questions as I went back to review the material in the lessons while prepping for the written.
For the interview though, it was not as simple as signing up and taking it right after passing the written. There are two parts to the live assessment. The first is to explain OOP concepts out-loud and provide your own code examples to back up your explanations. You should be able to talk while you write out your examples so it is a good idea to practice that as well. And you should be comfortable speaking about all this in front of a TA or anyone else for that matter.
One very valuable piece of advice came from Weston who told me to “make sure you are clear on whatever topics you think you might be fuzzy on as they might come back to bite you in the interview” I’m paraphrasing here but you can get his perspective in this article he posted.
For the second part of the interview, the TA will give you some code examples and ask you to figure out what the output will be. Then the conversation turns into how you can fix the code so that it works properly. Mind you, it might get a little uncomfortable because there will be that part of the problem that you might not have been exposed to before. The pressures of time and having someone judging your response can stifle your confidence and make the problem seem that much harder than it actually is. But in that moment, if you take the time to remind yourself that this is like any other ‘mock session’ you’ve done with other students and breathe, you should be fine. The truth is that if you take the time to break it down slowly, you should understand what is happening and that is half the battle. In hindsight, the problems were not extremely difficult, just a little tricky. I also felt like I gained even more knowledge of OOP while going through this interview session.
Doing mock sessions was a great way to get ready. But attending TA study sessions was a must for me as well. They really helped me visualize what the interview format would look like. Understanding exactly how the interview is set up gave me the tools to go into it more confidently. A shout out to the awesome Launch School TAs for being so supportive!
Both assessments are fair and will test you accordingly. But be ready for some tricky questions on the interview part. Remember that they are trying to gauge not just how good you are at debugging and how well you’ve understood the concepts, but also how well you can maintain your composure in times of stress.
In general I’d say experience does make things a little easier but they are no less challenging. It helps to have gone through other assessments for sure, but the work you have to put into it remains. And that is the MBL way after all.
I’d like to thank all the wonderful study buddies and TAs that helped me along the way and I am doing my best to pay it forward.