I have found the problem! The reason why I am so frustrated!
The problem is…I don’t have a solution!
This was a joke that I have told a couple of my partners
when we were really stuck. I would pretend that a light bulb went on, wait for it…then
the punchline. They all laughed (win!).
It’s a stupid joke, but it breaks the tension and allows you
to relax for a second. That break from the closed state of concentration; from the
seriousness of focus to a relaxed and open state, is vital to learning and
growth. But don’t take my word for it, I’m just some guy with a blog. Take it
from John Cleese, one of the creative geniuses behind Monty Python, in a
hilarious yet scientifically awesome speech on creativity, learning, and work.
Totally worth the watch in its entirety, if you are so inclined.
In all seriousness though, I was inspired to write this
particular blog post when I came across an amazing book on Ruby while at
Powell’s bookstore (a Portland staple and much cooler than I had envisioned).
That book is Ruby
Pocket Reference: A Quick Guide to Ruby by Michael Fitzgerald. The
following picture is the eager creeper face that I made when I came across it.
Remind you of anyone?
This book is amazing. No story. Just straight up this does this. Right from the start. No chapters of history that, while
interesting, take up way too much time. I’m enrolled in a bootcamp, not grad
school.
The book reminds me of when I was learning another language
from scratch: Spanish. I was on youth exchange to Venezuela my junior year in
high school. Problem was, I had studied German in ninth grade (prost!). When I
arrived, the only phrases I knew were “hola” and “yo quiero taco bell”.
I found a book called Spanish Verbs that was just a list
of…you guessed it…verbs. So I spent hours in my room just studying and
memorizing these words. But one of the most useful parts of the book was that
it actually explained conjugation to me. Up until that point, I had absolutely
no idea what that even meant. Most other books either assumed that I already understood
it or did a horrible job explaining it.
Ruby Pocket Reference is similar in that it can be very
useful to a beginner. It has lists of Ruby’s Reserved Words (if, else, def,
etc), and operators (<<, [], =>, etc). But the most valuable part of
the book are the concise descriptions of all the things that make up the language –
Class Methods, instance variables, regular expressions, etc. I’m only 15 pages
in, but am already more excited than [choose your own favorite thing!]* to
finish it, and then read it again.
It may be difficult reading for the absolute beginner, because
you will have no means to visualize the definitions and concepts as they would
appear in a text editor like Sublime Text. But at the same time, it would be
beneficial to those of you considering learning to program on your own,
enrolling in a bootcamp, or pursuing other educational methods.
In an ideal world, I would have read through this book two
or three times before I arrived for Epicodus. But then again, I’m not sure if I
would have benefitted. After all, my perspective today is not that of a complete newb, given that we are already 8 days into Ruby. That’s like,
8 weeks in university time. :D
Either way, I am enjoying this book immensely. Why?
Things are beginning to click.
Clicking is good.
* Lazy writing, right?