This week was a hard-learned lesson in relationships and communication. We continued to explore SQL relational databases with Active Record. I felt frustrated and discouraged after not being able to complete Monday’s homework. For some reason, I was having a difficult time grasping how exactly one table in a database in associated with another and how to use the association to pull the right information.
Luckily, I met up with a friend and TIY Rails alum the following night. After some unconvincing nods at her ownership metaphors, she busted out a web application that helps festivals streamline management of logistics like volunteer coordination. Exploring a real-life Active Record database helped me better understand what it truly means for one class of objects to
belong_to another and what
has_many of what.
Since then, setting up models and making calls to a database through a server has become more manageable and less purely metaphysical, but I will need a lot more practice before I’m totally comfortable.
Our weekend project was to build an app that allows users to save links and recommend them to others by posting them to Slack. This app for Slacking links we have aptly named Slink, following in the tradition of horribly lazy app naming via word mashing. We teamed up with a couple front-enders to get the app looking good in a web browser. With a fair amount of help from our instructor, we deployed the barebones of the app to Heroku and the front end was able to get and retrieve data. After a late Sunday night and frantic Monday morning filled with many iterations of Slink working and breaking, we were able to get all of the basic functions running about a few minutes before it was time to present. This was in part thanks to catching a letter case mismatch between the front and back end code (“URL”≠”url” in JSON land). This is an important lesson in programming communication as it is in life: keep it lowercase unless absolutely necessary.
Though the struggle persists, I feel as though I have gotten over an initial hump with Vim. I’ve got a solid set of key-mappings under my belt and have settled on a color scheme for the time being (and have promised myself to take a break from obsessing over it).
Looking forward to more collaborative projects this week, which will culminate in Ruby For Good, a public service-oriented hackathon in VA.