Yet another “how to study for the 109 written assessment” article…

Chelsea Chilcoat
8 min readMay 11, 2021

It seems everyone has their own spin on the best study strategies for the 109 written assessment — probably because we all learn a little differently and benefit from different strategies. There is certainly plenty of literature out there on how to best prepare for the exam, but I suppose for posterity as much as anything else, I still feel inclined to share my take.

When faced with what feels like a daunting challenge, I always like to break it down into its core components. This makes it feel more accessible, and helps me self-assess whether I am ready to tackle said challenge. To my mind, in order to pass the written assessment, you have three main tasks:

  1. Master your technical understanding of all of the topics included in the Launch School study guide (this is made available once in 109, the lesson immediately prior to the exam itself)
  2. Distinguish between the terms and phrases are the formal, precise terms and phrases for concepts, and terms and phrases that are informal and ought to be put into your own words. Memorize and learn to use the formal terms correctly, and develop your own language for the concepts that do not have formal terms.
  3. Learn how to clearly communicate everything from Task 1 using language from Task 2, and to do it VERY QUICKLY.

These tasks don’t necessarily have to be achieved in this order, though it seems the natural progression, and did happen fairly sequentially for me.

1. Mastering Technical Understanding

Re-read the lessons.

This might illicit a groan after that euphoric feeling of completing your 21 program and feeling victorious for conquering 101, but in my humble opinion the best, most important thing you can do is…do it again. No, not all of it, but all of the reading. I felt a tad stubborn and initially thought I would only re-read key lessons, but ultimately wound up revisiting nearly everything in a piecemeal approach, as I bumped into topics that I did not completely understand. This definitely took longer than it would have to just re-read everything to start, because it’s difficult to remember precisely where certain concepts were discussed (especially since some are discussed more than once).

Plus a complete re-read is a great chance to improve your flashcards or notes, and will bring topics that are a little murky to your attention (you will probably be surprised how many things you thought you understood, but actually learned a little bit incorrectly).

Make sure you understand the practice problems.

I do not know who to credit for these problems (and will happily add credit if I find out!), but if you’re in 109 prep (and in communication with other students), you have almost certainly seen this list floating around:
RB109 Written Assessment: Practice Problems — Google Docs

It is certainly not required, nor is it the only way to ensure you thoroughly understand the necessary material, BUT I can say if you don’t understand all of the problems in here, it is likely you will run into trouble in the exam.

This is an extremely thorough set of code samples that illustrate many of the trickier nuances of concepts that are often blind spots — things you don’t know you don’t know, until you’ve bumped into them, and thought, “huh…that doesn’t quite make sense…”

I can promise, the exam is going to include tricky questions, and a superficial knowledge of the concepts is not going to be adequate. If you can understand and explain what is going on in every problem in this set, you are in a much better position to avoid being blindsided on the exam.

Practice with other students.

Other students — particularly those who have completed 109 — are a great resource for talking through technical aspects of what is going on with various code snippets. Do not hesitate to ask, set up study sessions, join study groups, etc.

BE VULNERABLE. You are better off revealing your lack of understanding in front of other students (who have all had what turned out to be rather silly misunderstandings of our own) than during your exam. Don’t feel stupid if you need to hear it a few times, a few different ways (or many times, many different ways) to get it to click. Don’t pretend you get it if you don’t. This is hard stuff and we’ve all had things that just don’t sink in very quickly. Obviously, be considerate of your peers’ time and energy. But that doesn’t mean pretending you understand it when you don’t. If you’re on slack, someone else may jump in with more help — but they wouldn’t if you acted like you got it when you didn’t.

2. Using Words and Phrases Correctly

I’ll admit, personally, this was actually the toughest part of studying for me. I like clearly defined rules, and have no problem using specific jargon. I actually prefer operating with shared terms and definitions when writing about complex subjects (I majored in philosophy in college, and went on to law school — both of which are chock-full of precise terms).

But here I struggled a bit, because while there are absolutely designated, reserved terms for things, there is no single definitive list of those terms and phrases, let alone a glossary with reserved terms and their definitions. And to further complicate things, there are some concepts that have more than one designated term (say, “truthiness” and “evaluates to true”).

Without a central list of reserved terms and phrases, we are left to make a lot of inferences based on the way things are described in text and on the videos.

This is where my suggestion of re-reading the entirety of the material is doubly-helpful. Now that you actually know what the text is talking about (unlike when you first read it and it was brand new), you are more likely to notice which words and phrases are used exclusively for topics, and which terms are more flexible. Write that down!

It is very important to note: if a word has been designated to mean a specific thing, you need to both use that word for the thing that it has been assigned to, and not use it for anything else. So having a clear understanding of which words are “official” is really key.

3. Explain code clearly, and do it FAST

Develop writing habits:

The first component — explaining code clearly — hinges a lot on the previous step. A thorough understanding of the correct terminology will alleviate the necessity to “get creative” when you don’t have the precise word to describe an aspect of the code. This is another way that the aforementioned practice problems are helpful — as you are typing answers, you will quickly see that there are topics that you have a great mental model of, but don’t have an adequate set of words to communicate your mental model. Keep practicing until you do. You will notice certain things come up repeatedly, and it’s helpful to create your own “go-to” descriptions that become habitual enough that they don’t warrant any cognitive effort to produce. For instance, how to explain a puts statement.

Habitual statements are crucial because time really is the limiting factor in this exam, and the last thing you want to be doing is expending effort explaining a simple concept that you’ve encountered a zillion times before, when there is a more complex topic about which legitimate effort is required to organize your thoughts.

Get creative with your practice questions.

When practicing with the problem list, it’s also a good idea to “think outside the questions” a bit. Being able to explain code line-by-line is important, but try to challenge yourself. Look at code snippets that are similar but have different outputs and/or returns, and practice explaining why. Look at a piece of code and try to think of a question that might be asked about it — other than “what does it demonstrate?” — and practice answering those.

My biggest complaint with the widely circulated list is that the “big three” questions that are the prompts for all of the problems aren’t specific and don’t always yield an obvious or clear “right” answer. Rest assured: the actual exam is not like that. The questions are extremely clear. If you have prepared, you will know what answer they are looking for — you just need to be able to supply it.

Go, go, go! Get good at typing fast!

There isn’t really a good proxy available to time yourself — because different questions will require different amounts of time to answer, and you don’t know exactly how many questions you will receive. Even the best prepared students, who wind up with a fair amount of time to spare at the end (I am not in that group — I believe I had 3 minutes left when I completed the final question, and did not even have time to review any for fear of going over!) — typically express being most stressed by the time limit.

That said, as you practice with other students, especially those who have taken it, you will get a sense of how your pace is. And generally speaking, once you are able to explain “the basics” without expending much effort, and answer more complicated questions without freezing up, you are likely going to be able to complete the test in a timely fashion.

As you’ll hear from a lot of students, you might not ever feel “ready,” but you will reach a point where you have exhausted most of the study tools and at some level just know…it’s time.

And Finally…Some Day-of Test Tips!

Plan your approach:

It’s helpful if you know yourself, and know how you test. Given the short time, some people find it helpful to read through all of the questions first, to get a sense of which seem harder and which seem easier, to help allocate time.

I opted not to do this, because I was worried about how long it would take me, and I was worried it would cause me to begin thinking about questions coming up, rather than focus on the question at hand — which is definitely not something you want happening in the middle of a challenging and fast-paced exam.

Review?

Decide if you want to review questions as you go, or return to them at the end. This sounds silly, but you will have to allocate your time pretty differently for the two approaches, and the last thing you want is to be banking on reviewing questions at the end, only to realize you don’t have enough time, or to wind up over-editing questions as you go, if your need a little space from an answer before you can review it clearly.

Keep track of your pace.

On the day of the test, I recommend a little quick math before you begin. Decide how much of a “buffer” you would like after completing the questions (don’t forget to factor in extra time if you plan on reading questions ahead of time or edit your answers after finishing), then subtract that from the 3 hour time limit. Divide the remaining time by each of the possible question totals (20, 21, 22, 23, 24, and 25 are all possible, at the time of this writing). That way you will know how much time on average you have for each question. It is extremely helpful to self-assess how you are doing with time during the exam, even though, as I noted earlier, different questions have different levels of complexity, and some will take longer than others.

If it helps, beforehand you can even use that math to write out the time that you expect to be a quarter of the way through, half way through, and so on, at whatever interval you find helpful, so you aren’t juggling math in your head as you are writing.

Ultimately, Trust Yourself.

Study hard. If you find advice from others (including me) helpful, take it, if not, move along. There are as many ways to go about preparing as there are Launch School students. Put in the time, put in the work, and have faith that you will get that passing grade!

--

--

Chelsea Chilcoat

I'm a software engineer based in Bellingham, WA, USA.