Turing starts soon. Have you finished all of your prework? Do you want to take your learning even farther along?
If so, read on.
We're going to talk about
- non-ruby-specific tutorials
- typing
- memorizing as part of programming learning
- notification management (aka minimize distractions)
As you learn Ruby, you'll constantly use a few tools. If you're uncertain on using the tools, you'll struggle more picking up the ruby bits.
Here's what I recommend working through and studying the following, all by Michael Hartl
- Command Line Tutorial
- Git Tutorial
- Text editor tutorial (He works through Sublime Text, most people at Turing use Atom, but you can work through his tutorial using Atom and still learn tons.)
You can skip through each of those guides in probably less than a day, though your retention will be better if you take longer on each. (Pro tip - try doing the first chapter of all three at once. Your command line, git, and text editor all rely on each other.), and absorb a basic understanding of each, you will be exceptionally well prepared when class begins, and you can spend your time worrying about learning Ruby, instead of worrying about how to connect your terminal to your github profile.
Next, start the "drills for skills" available to you in the Turingschool Github repo. Getting started can be kind of overwhelming, so here is a more detailed guide.
You're going to be typing all day. If you are not very compfortable on your keyboard, I strongly recommend practicing to get better. if you do not touch type, please learn to touch type.
Typing.io is awesome for programmers. For a frame of reference, if you can regularly clear 45 wpm of the Ruby lessons, you're in a good spot. I just did three lessons, and after a bunch of Typing.io practice before turing, and typing all day during Turing, I got 68, 55, 56 wpm.
After doing a few lessons on Typing.io, you'll probably identify at least a few challenging letter combinatitions. I still struggle with something like name = array[0][1]
, or something like [ @_name ||= User.new(...)]
. Lots of hard keys in there. So, once you've identified a short but-frequent key combination that's hard, it's time to practice it.
Change your computer password to use this sequence of hard characters. like make it include [][]
somewhere in it, so every time you log into your computer, you have to type those keys. Next, set your computer to go to sleep and lock itself after 3 minutes of inactivity, or every time you close the lid.
You'll now be using that string all the time to use your computer. (Write the PW down somewhere so you don't end up locking yourself out, though.)
If you're hunting and pecking, I'd prioritize learning to touch type above all else right now. Go purchase and install Type Fu and begin their lessons immediately. Type-Fu very slowly adds new letters, and makes sure you're comfortable with the combinations you're using before increasing difficulty.
(This is optional, but really powerful.)
Rote memorization sucks, and is a waste of everyone's time, so we're going to stay far away from that.
That in mind, read this article by Derek Sivers.
Next, more context, read Does Anki work for learning how to program
If you're curious about the power now of Spaced Repetition Software for learning and understanding complicated things, you've got two steps ahead of you:
- Learn to build good cards (and decks)
- Learn to use the Anki itself.
It's extremely easy to build bad cards. Read Effective learning: Twenty rules of formulating knowledge. Now, you'll have a better idea how to format your cards.
(I wrote a long guide on learning methods and memorization here)
You'll be using Slack all day, every day, to communicate with your fellow students. Slack is an awesome tool, but it's default settings tend to be quite disruptive. By default, every message that you get as a direct message or channel notification will pop up on your screen, in the top right corner screaming for your attention.
This is extremely disruptive to your workflow. You should carefully guard your focus, and then when you're ready, take a look at slack and compose a response if needed.
So, here's the slack notification settings I recommend, and use:
Preferences > Notifications:
send notifications for
: only direct messages and highlight wordssounds
: mute all soundsnotification display
: uncheck the "show message text in notifications" boxdock app icon
: check theshow red dot symbol on icon to indicate unread activity
, and I have the next two checked as well:dock icon bounces
,but just once.
Now, when someone DM's you or uses @channel
or something, you will see the dock icon bounce once, and you'll get a single red badge icon on Slack when there's unread messages for you. It's much less disruptive, and I promise, nothing is so urgent or important that you need to have it show up on your screen immediately.
By default, any channel you participate in, you should mute. You'll still be able to see when there's new messages, but you won't get as strong of a visual indication that there are messages. Just click the gear icon next to the search bar in each channel, and click "mute".
FWIW, I have only one un-muted channel (my cohort's "exclusive" channel), and I've gone back and forth on muting it and un-muting it.
Go ahead and disable all the other things that can pop up on your computer and interrupt you as well. Twitter, WhatsApp, Facebook Messenger, Reddit, etc. If you find yourself getting distracted by them still, take a spin with SelfControl, an app that lets you block access to sites you give it for a specific period of time. (15 min - 24 hours)
That's it for now. Good luck.
- Start Ruby Exercises
- More on learning how to learn
- A Mind for Numbers: How to Excel at Math and Science (Even If You Flunked Algebra)
- Deep Work: Rules for Focused Success in a Distracted World
last edited: 2018-07-18