Thursday, March 13, 2014

I found the problem

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?


No comments:

Post a Comment