tl:dr; It’s been a while since I’ve publicly made the commitment to follow through on putting out an example Ruby on Rails app. You can check out my Github account here as well as the Pinterest clone example app from the folks at One Month Rails at will-pinteresting.herokuapp.com. I’ve been using Anki cards, Googling for solutions or clues to figuring something out and asking friends when I’m totally stumped. After getting featured on Buffer app’s blog as well as Search Engine Land, the fire was lit under my ass to actually follow through and try to update consistently 🙂
It’s been almost two months since I’ve committed to learning Ruby on Rails, while I’ve been quiet in terms of my progress, I’ve been trying to put any free time have and funnelling towards two particular resources in terms of my learning – Daniel Kehoe’s “Learn Rails” e-book which I originally backed on Kickstarter along with the folks from YC Startup – One Month Rails.
Right now I have a good understanding of what a basic rails app looks like and how to generally navigate the R-MVC software architecture – the feeling is similar to fiddling around with WordPress installation, where I know what affects what.
Daniel Kehoe’s Learn Rails
Without going into a full review of his ebook, Learn Rails, which is another blog post in itself, I am pretty much done it and I would wholeheartedly recommend it to anyone who’s thinking about learning the Ruby on Rails framework. It is VERY approachable. I first learned about it from the Ruby Weekly newsletter that I signed up. At $18, it’s very affordable and is regularly updated at least once a month since I was given advance access to it.
Daniel uses very approachable language and starts from the absolute basics, which I appreciated. If you’re a bit further along if you’ve been exposed to Ruby on Rails, by all means skip through to the stuff where you think you’ll get the most learning for your time or you can be thorough and plod through the material as presented by the author.
If you’re a product manager, and you’re learning to become technical, I’d say picking up this book or subscribing to the Rails App project at an affordable $19 per month would be a great investment of your time and money as the author religiously updates the ebook, tutorials and course materials with bleeding edge everything as it’s released.
The reason why I chose to go with the Learn Rails ebook instead of going back to Treehouse was that I needed a fresh perspective and approach from a different source. Had I followed through with Treehouse and remembered everything, I probably would have picked up Daniel Kehoe’s ebook anyway. I’d still recommend Treehouse as their video production is top notch, and their gamification layer as well as community are absolutely marvelous. Sign up and you can get 50% off 🙂
Hit the ground running
Because I’m using my workplace’s MacBook to learn rails – it was a hassle to try to get permission to all these little programs on such a regular basis, but after discovering www.nitrous.io from Learn Rails e-book, it was actually a breeze to get set up right away. It took a lot of the friction right away and provides an IDE and text editor to be able to navigate through the rails folder structure and allows you to hit the ground running.
After I pick up a new MacBook Pro, I’ll install everything locally, but in terms of getting started, Nitrous.io is definitely a good choice to go as it’s free to use when you’re working on a personal learning project such as learning Ruby on Rails. It’s a lightweight IDE in the cloud, which means that it has both a command line and text editor in your browser and you don’t have to go through the cumbersome process of installing Rails locally in order to hit the ground running and get started with Rails.
I’m not saying that you should forgo the process of installing Rails on your local machine – I was just suggesting using Nitrous.io as a way to get up and running asap – you’ll eventually have to back pedal to installing Rails properly with this up to date tutorial by Kehoe.
UPDATE: I resurrected my 2009 15″ MacBook Pro! Gonna try to install everything and see if I can make everything work locally.
Learning on a busy schedule
Everyone is “busy”. With working full time, having a personal life which includes friends, family, everyday commitments, and going to the gym regularly are what take up the majority of my time, there isn’t much time for anything else.
I’ve noticed that while I’ve pared back my focus to just a handful of things, I feel more focused, I’m learning deeper, and ultimately happier, rather than jumping from one thing to another and understanding concepts on the surface. The majority of my learning occurs on the weekend and while I’m able to squeeze in a 4-8 hours during weekdays, there might be days I’m not able to put in an hour or two in a day. At the very minimum, I’m referring to my Anki cards on a daily basis to reinforce what I’ve previously learned.
During all of this, I signed up for a free email newsletter, Ruby Weekly, as a good way to get a curated view on what’s happening in the Ruby world without having to look for stuff to stay updated. Even though I don’t know a fraction of the stuff on the newsletter, I’m certain I’ll find more value in the newsletter as time passes.
Enter Anki flash cards
Anki flash cards is spaced repetition learning software deserves a blog post on its own, but I thought I’d write about it briefly here. I first learned Anki cards from Derek Sivers blog that I read many moons ago. Essentially, you want to create flash cards on new concepts that you’re learning and want to expose yourself to them as many times as possible so they’re committed to long term memory as the program algorithmically brings up the cards that you’re most likely to forget according to your responses on whether they were easy, hard or you need to be quizzed on the card again within a minute or 10 minutes.
I’d say, using Anki flash cards has actually sped up my learning because I didn’t have to spend the time to re-learn concepts that I might have otherwise forgotten.
What’s next – upcoming challenges
Right now I’m lacking in the understanding of Git and pushing to Heroku from Nitrous.io. I’m able to launch the follow along web app I built from Learn Rails just fine locally, but when pushing to Heroku, something is amiss. Would appreciate any help on this.. can’t seem to find an answer on Stack Overflow =/
Outside of this, I’m still chugging along with understanding Ruby Foundations from Treehouse.
Conceptually, I’m still wrapping my head around HOW I start creating my own custom applications from scratch now that I have somewhat of a handle on Rails. Do I tweak others work? Is it to learn Ruby inside out? Build a small application that’s dead simple and go from there? Do I learn how to integrate different API’s? It’s a bit daunting, but I’m in it to learn over the long haul.
While I certainly have all the resources to learn on my own online, I feel a bit isolated and want to connect with others and I’m yearning to get feedback in person to speed up my learning even more so. Getting questions answered via forums such as Stack Overflow or on Treehouse while helpful, doesn’t quite do it for me.