Thoughts as I conclude Ruby and RoR
- Rails is incredibly intuitive.
Prior to Flatiron, I was learning to code alongside Codecademy, Youtube tutorials, FreeCodeCamp, and took a few bootcamp prep courses with Codesmith. I’d never worked with a framework and remember wondering how I would go from writing a function to creating a CLI application to creating a responsive app. Where did my coding fit in the grand puzzle of a hypothetical tech company?
Rails is a framework built on Ruby. Rails bring our code to the browser, and its intuitiveness I’ve deemed “Rails magic”. Rails handles our join tables, but in addition to that, there are so many built-in helper methods that make our lives easier. For example, Rails has generators that will create migration files, models, controllers, and even routes for you. When I first learned about this, I thought “Well, what do you need me for? You did everything!” While this is almost entirely true, Rails — and Ruby — don’t provide the logic that a human can (at this time, at least).
Part of what makes Rails so intuitive is because it follows the MVC convention: Model-Views-Controller. Your views are what you see on the browser. Your controller directs where the User goes when interacting with the app. Your model is where you designate your associations and validations, and other necessary logic. There seems to be very little delineation from convention with Rails, which can be a good or bad thing. Since it’s conventional and follows the RESTful routes for the most part, it’s easier to debug once you understand.
3. Ruby goes out of its way to be nice
Overall, it’s been really interesting to learn a web framework and programming language, and to see the many differences and similarities between the two I currently know (to a certain extent). I’m looking forward to learning more languages and becoming familiar as I move forward with my coding journey.