Review: OneMonthRails (Part 1)

I’ve been using OneMonthRails for about three weeks. I was first drawn to the course after one line stood out to me – the line in Mattan’s course description said there was a focus on helping students get a project up-and-running quickly. At that moment, this idea totally resonated because after two months on Codecademy, I felt I was going an inch deep and a mile wide with the basic-basics of three languages, but nothing to show for it. Mattan promised a project-based approach teaching users to build a Pinterest-like app with real functionality.  I found that he’d posted a coupon code to twitter (I don’t buy anything without a coupon), and I snagged it and jumped in.
The first week was slow going – work was suddenly busy – but I would come home and watch a few lessons at night.  The first six lessons were not that useful – just Mattan’s background and no code. By the seventh lesson, it got interesting, and I dove in.  Mattan started going through how to install/use the basic tools – 1) Command Line, 2) Sublime Text 2, 3) GitHub, and, eventually 4) Heroku

Coding has a tremendously steep learning curve if you don’t have someone holding your hand at the beginning.  For years I’ve looked at a command line and never understood why it was needed. For months now I had installed GitHub, found a project someone else had posted that I wanted to tinker with, but didn’t know how to even view their code let alone see the application running. 3 weeks ago my friend Shaheen suggested I needed to try out Heroku – but I didn’t know how to begin using it once it was installed.  Mattan slowly walked me through how to get a rails server up and running locally, and then how to push to my GitHub account, and then how to push to Heroku, and view it on the internet. That was a huge accomplishment – the course was already worth it at that point – only 30% of the way through.
I can’t stress enough how encouraging it is for the learner to actually have something running live on the internet. Perhaps its vanity but I think its important that all tech educators strive to get the learner to that point as quickly as possible. 
Then came a roller-coaster of highs and lows as I slogged through the course. There were moments of deep frustration – I got stuck for hours trying to import the Bootstrap framework. (Bootstrap is a design framework from a couple Twitter guys that can make an app start to look beautiful very quickly.) I banged my head against that bug for half a day until I broke through – it was some stupid typo. (Note: I posted to the Q&A forums on OneMonthRails, and got a response about 48 hours later, which was a pretty good response time given it was Labor Day Weekend, but not fast enough when you are emotional and lost). 
Then came another high – a monumental moment when we added the Devise framework which quickly got user accounts up and running on the site. I couldn’t believe that a day before I was struggling to get “hello world” and now users could create passwords, log in, and see content. It’s an amazing time to be a developer – so many tools are out there to be leveraged. So much is possible so quickly.
But by the next day, two chapters later, I came to another emotional low – overwhelmed. Up until that point, the class had been jumping between Command Prompt, HTML, CSS, JavaScript, and Ruby – and I was already familiar with HTML, CSS, and JavaScript from Codecademy, so I was able to understand three fifths of what was going on. But now we had created this scaffolding to set up the Pins for this Pinterest app we were building, and it was just too big for me to wrap my head around. The scaffolding had quickly and effortlessly created the Pin items with properties and buttons to create pins, delete pins, and edit pins. It was just as impressive as the Devise framework, but it was also raising too many unanswerable questions about how things fit together. The lessons were now jumping across the Ruby console, the command line, JavaScript, and Ruby, and much of the logic/stitching/plumbing was being done for me through these Gems. Once I gave up on understanding everything – and conceded to just follow along – I was no longer learning to code – I was now just watching someone else perform. How could I possibly tinker and edit this into something useful. That was a low point, but as I finish-out that chapter tonight, I’m still confident that I can work it all out if given more time.
Conclusion: I’m loving this experience. Here’s my project so far.
It’s what I hoped it would be. The project-based learning approach is fantastic. Using something like Pinterest as the project is also a really smart decision on Mattan’s part. Jumping from Command Prompt to Javascript to Ruby and back without knowing the fundamentals of Ruby is perhaps ok for other learners, but it’s a poor experience for someone like me who has a weak understanding of Ruby. 
I think actually that OMR complements Codecademy nicely: OMR goes deep into one app that leverages all 4 languages and shows you how to build & deploy something. Again, it gets you to the point of having your own site live on the internet – which I believe is crucial to the learner’s experience.
Stay tuned for more as I plow ahead.

One thought on “Review: OneMonthRails (Part 1)

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s