Look, I made a thing!
I took a giant leap this week in my knowledge base, learning and launching my first Rails application. It tracks robots that you would like to build. If you don’t build robots, it has no real practical purpose other than meeting the objectives of the assignment.
For those who don’t know, Rails is… how to describe this. It’s frequently paired with Ruby and it’s a thing you stick your Ruby code into to make it a lot more complicated. Kinda. I still don’t really see the point. It connects your code to a database so you and other people can store things. In theory you could design and run a weblog from a Ruby on Rails app instead of using, say, WordPress (hey that’s not a bad idea). (Except that any entry would probably take 50 hours and like 17 file updates.)
Suffice it to say, I have a lot to learn still about Rails.
But my app works! Go add a robot! This completes the three application assignments, so I’ll tinker this weekend and submit on Monday. I am hoping to gain official acceptance before August 10th, which is the scholarship application deadline.
Some thoughts on Rails:
- I completed the Treehouse Rails Developer track, which walks you through a bevy of skills you will need before you ever touch Rails. Most of it I had done before, but the review was helpful. Occasionally the modules went deep into content knowledge that I’ll probably need to know someday, but not today. There is a way to skip ahead, but it throws off the progress indicators and they will keep yelling at you to finish the console module, even while you’re well into your Rails app.
- The actual Treehouse Rails course is a doozy. They teach you from a test-driven-development standpoint, which means you have to write an rspec test for every possible thing that could go wrong before you get to play with what it does right. Not gonna lie, I (and a number of other commenters) found this approach somewhat tedious, BUT–and this is a big but–I think having my first exposure to Rails from this perspective is hugely beneficial. For one, it’s real world programing. Any job in this field is going to revolve around testing, and that’s an area where Rails excels. Its stability is its strength.
- I watched most of the videos on 50% speed to keep up with the coding. At that speed, everyone starts to sound like Mike Birbiglia. Don’t believe me?
Watch this video and then listen to something slowed down to 50% and tell me I’m wrong. I’ll wait!
- RIGHT? So anyway, when I got bored I pretended that a drunk Mike Birbiglia was teaching me Rails, and persevered. Because what is he going to say next?
- The second time through a Rails app was easier after seeing it done once and practicing that all test development. I’d like to say that my finished app has tests for everything, but… it doesn’t. Sorry world. I have stuff to do!
- Deploying via Heroku was shockingly easy. However, if you plan to do this, read their tutorial before you create your Rails app. They have a preferred database and gems that would have been easier to include from the get-go.
I hope all of you and your dream robots have a delightful weekend.