Rails is the Truth
10 Aug 2019
Ruby has been a joy to learn and prior to starting Rails, I had heard it described as “magic”. If anyone ever asks my opinion, then I too will describe it the same.
At first, I had some difficulty with transitioning from the way I configured routes and views to work with Sinatra, but my frustration soon melted away and I felt like I was flying through the lessons and labs as I learned the conventions and structures and helpers. Rails really does make everything feel like it just works and if it does not work right away for some reason, then finding out way is usually pretty simple and, most importantly, makes sense. There were very few instances when I thought, “why is this happening?” And even when I did, I was able to work backwards through things to figure out the issues.
I was unsure of what to do for my project as I was getting started; coming up with models and associations that met the criteria seemed contrived. I wanted to just make something and let the associations be whatever they ended up being to make the app work. I spent a day or so considering what I would do as I created the basic user registration and sign-in components I knew I would need no matter what I was making. I slowly pieced together some ideas and spent some time taking notes about models and their relationships with each other to see whether what I wanted to do would satisfy the requirements. I think the most rewarding thing about Rails, and probably programming in general if I had to guess, is conceiving of an app and knowing what you want ahead of time so you can just go to work and build it. That’s…mostly how it happened for me.
I started with a user > event < attendee configuration before I decided to try to implement an idea I had while working as what is most easily explained as a case manager. I changed my models and associations and ended up building an app for case managers to CRUD clients, notes for clients, and caseloads to manage clients. At this point, I am not sure whether the idea came together so easily because I thought out my code in the day or so before I began the project or I was finally able to channel the ideas that had been percolating in my head for the past several years into something tangible.
I think as mathematical and scientific as programming is, it is also artistic because it acts as a medium in which to create. I feel like Ruby and Rails as an extension of that gave me a means to create and I think the ease of the language allowed me to generate something real and hopefully useful.