I’m at the cusp of finishing RB101, the first course in Launch School. I’ve heard this is the hardest course to get through — not because the content is overwhelmingly difficult (how could the first course be so?) but because I know the least at this point, so it’s hard to build on, well, basically nothing.
I consider myself a beginner in two ways:
- Before starting Launch School, I knew only enough programming to make an ideal MySpace layout back in the day (read: basic HTML). The highest math class I ever took was College Algebra during my first year of undergrad. The hardest science was a biology course my second year. Simply, I am not trained mathematically or technically by any stretch of the imagination.
- Before starting Launch School, I’d never studied to understand something for longer than 20 minutes. Writing, grammar, teaching, and psychology all came ridiculously easy to me. If something required more time, I would either (a) not do it or (b) use my exceptionally fantastic short-term memory to store nonsense for a test, take the test, then promptly forget it all. Before Launch School, I knew nothing of the struggle of mastery or seeking to understand something for longer than a short podcast.
With these two taglines of my beginner status, I was very intimidated to start this course, this journey, and this career trajectory. But hey. It’s only $199/month, so if I crash and burn it won’t hurt too bad. With that large dose of optimism, I dived headlong.
And fell in love with programming more than I thought possible. More on my deep love for logic and processes and ternary operators and structuring data collections (swoon) another time.
I find a lot of articles from people who are neck-deep in learning, using advanced concepts that I have to Google to even know what they’re kinda talking about. Here is an article from a beginner: from one beginner to another. How to study when you’re a beginner?
Know What Works for You (Even if it’s Not What Works for Others)
I had to explore a lot of ways to learn, because I hadn’t figured it out beforehand. There are countless books, articles, strategies, and apps to help you be productive. But each of us are unique, so if something isn’t working for you, try something else.
For example, I’m a deep-dive learner. That is, I don’t do well to study a little bit each day. Instead, I thrive on learning for hours a day for a few days a week. I strive for 20–25 hours of learning a week, and I do it all on Sunday, Monday, Tuesday, and Friday (mostly Monday and Tuesday). 5 hours of unbroken study time is bliss. It takes my brain about 30 minutes just to start focusing; so if I’m only studying an hour, I’m only annoyed at the end of it, because I didn’t really get going. This goes against so many articles I’ve read, but it works! I’m more productive, I feel more rested from having full days off, and I can tell I’m retaining more.
Maybe mornings work best for you, or evenings, or lunch breaks, or 30 minute intervals, or 7 hour intervals. Try it.
Get Curious Instead of Frustrated
Those close to me can attest that I hate not being good at something. It’s probably because I narrowly stuck to things I’m naturally good at for so long; I don’t have a lot of experience struggling. But man, do I hate it. It makes me feel less than, stupid, incapable, and downright angry. I use an Icelandic penguin for my rubber duck debugging, and he’s gotten his fair share of abuse. The poor thing.
But code doesn’t deviate from its purpose because it’s gone rogue. It’s because I did something wrong. I forgot to close an if statement with end (for the billionth time), or I didn’t supply all the arguments that a method needed, or I didn’t know Integers couldn’t be method names (learned that yesterday! oops!).
Programming is debugging the majority of the time, so getting frustrated and self-critical doesn’t help anyone or anything. Instead, choose to be curious.
Fascinating! That resulted in a doubled nested array instead of once nested. I wonder if that’s because of how I added #sample objects to it?
Interesting! The game is prompting to be played again twice instead of once. I wonder if I have an extra loop somewhere?
There’s always a lesson to be learned. Even if it’s just to put those (blasted!!!) end words after every if statement.
Intentionally Make Boundaries Against Distractions
It’s hard to study on the very machine that also can provide so much distraction. I mastered a new concept, so I deserve a Netflix episode! I don’t get this example problem…I should probably scroll through Reddit to destress. Mmm, I’m tired; best to check up on Instagram to take a break.
While these things aren’t inherently evil, they can certainly take up way more of your time than you realize. Know yourself, your propensities, your weaknesses — and then make boundaries against them.
For ideas, some of mine are:
- I only watch Netflix with my husband. He’s at work while I’m studying most of the time, so can’t do that.
- I have timers for Twitter, Reddit, and Instagram on both my phone and browser. Yes, I can technically get around them (I am a programmer after all!), but the road block reminds me of why it’s there.
- I time my studying and don’t let myself pause until I’ve studied for at least 45 minutes. I’m obsessively honest, so if that timer is going, I can only be studying.
Of course, give yourself breaks. But make sure they’re earned, helpful, and restful instead of distracting, escaping, or draining.
Switch without Switching Too Much
Even in studying, it’s hard to do the same thing straight for too long. Sometimes we need to get into that diffusive learning (God bless Dr. Oakley). Still, maybe it’s a problem that we need to step away from and not learning altogether.
Although rabbit holes should be avoided, it’s still good to have at least two options of learning that you can switch between if you’re (a) tired of one or (b) frustrated with one. It’s good to switch activities while still being pretty focused.
For example, right before I started this blog post, my three options were:
(1) Work on 21 game in Lesson 6 of rb101
(2) Work on Ruby Small Problems
(3) Study Anki cards
All three of those are quite different. Sometimes I even have a lesson I can study in LS, where it’s more reading and taking notes.
Find ways to switch it up so that you can be still learning, even when you’re tired of focusing on just one thing.
Go to Bed
Sleep is so ridiculously important. I don’t have to copy and paste a bunch of statistics for you to know that. But here are two fun anecdotes:
About two weeks ago, I was working through a ruby small problem and I just could not get it. I focused for an hour and a half and it’s like I was reading Greek. I realized I was tired, so I took a nap. After waking, I figured out the whole thing in less than 5 minutes.
Here’s another. Before my husband and I got married, we were long distance with a sizable time difference. I’ve always loved going to bed early, and sometimes we would even go to bed at the same time despite him being 7 hours ahead of me. Yeah.
Then, when we got married and moved in together, he started going to bed around the same time I do. And wonder of wonders: his debilitating work-related stress disappeared. He started exercising and eating better, leading to even more productivity and feeling better. He attributes it all to better sleep.
I know that many of us have responsibilities that makes this “go to bed” assertion rudely overly simplistic. That’s not my intention. Instead, do what you can. Find ways to intentionally, routinely, and even sacrificially get good rest. Exercise and good food are wonderful additions, too!
— — — — — — — — — — — — — —
Go forth and study well, fellow beginners. Time for me to conquer this Lesson 6 quiz. Then the RB109 assessment that I am honestly nervous about. Onwards anyways. Courage!