Week 3 Day 4 – Magicians and Relations
I’m definitely starting to understand Associations a bit more. While not completely intuitive or instinctual, I’m able to map out relationships and make them work the first time around. The next step yesterday was to focus on Relations with ActiveRecord. To my understanding, Relations is the collection of querying methods that are used almost exactly as you would performing SQL, but in Rails. Make sure to let me know if I’m wrong lol, but that’s what I read. It’s actually interesting how all of that works. To be able to see everything I learned in SQL, being applied to Rails and learning more about how it works is pretty incredible.
That’s what I actually love about the curriculum at App Academy. A lot of the other students are saying what we’re learning about SQL and relations is pointless, Rails does it for us anyways. But I think it’s really important to understand the fundamentals of how Rails works, so to speak. My roommate brought up a really good point. Ruby on Rails is like magic. And as Rails developers, it’s not supposed to seem magical to us. We’re supposed to know how everything works, much like how magic tricks may seem magical to an audience, but the magician knows otherwise. I thought this was a great analogy, and an excellent debate point on why it’s important to learn what we’re learning. It’s also pretty awesome to start seeing the process of building web apps come together.
Last night’s homework was pretty interesting: Metaprogramming. A concept that’s very interesting, and in my own definition, it has to do with a program being adaptable and capable of making changes to itself. The main methods we covered last night were method_missing
and define_method
. Definitely confusing so far, as I struggled for a bit with the homework. But definitely another concept I’ll be able to tackle given a couple days.
Off-topic: I was talking to my roommate and we were talking about how we’re glad to be getting away from toy problems and learning the framework that’s going to allow us to build stuff. I definitely agree, but bringing it up, I’m kinda itching to get on some CodeWars to see if my skills have improved…
That’s pretty much it for today! I’ll talk to you guys tomorrow!