In this post I’ll do a deep dive into how and why I refactored each feature.
A hash is one of the most frequently used data types in Ruby and several other programming languages. A hash is a collection of key-value pairs, like this: “car” => “red”. It is similar to an array, except indexing is done by keys in the hash, not an integer index. I’ve compiled this list as some of my favorite tips for using Ruby hashes.
Rails Project Management, (or just RailsPM) is my first full scale web application, built from scratch for my Flatiron School Ruby on Rails assessment. As a former project manager, I thought it would be fun to build an app based on the knowledge I acquired at my previous job. While realistically I wouldn’t be able to currently build an application that could complete with robust software on the current market (like Teamwork, my favorite PM application), I had a lot of fun in the process. There were a number of challenges I faced along the way but I also learned a lot!
The Sinatra Car Maintenance Tracker is my first real web application, utilizing the Sinatra framework, Rack, and Active Record. I went through a number of different ideas (exercise tracker, chess game tracker) and rebuilt my application several times before I finally settled on the car maintenance tracker. Basically, it allows a user to keep track of the maintenance records for their vehicle. As a car owner (1999 Honda Civic), I’ve never been good at tracking my maintenance (I’m one of those people who prefers to do the maintenance myself, instead of taking it to a mechanic).
It wasn’t an easy decision to make. But I’ve never been happier. I decided to switch my career to Web Development for several reasons:
– I was experiencing a growing lack of fulfillment in my previous occupation, since I was in more of a managerial role and not as hands-on with production
– Web development is an in-demand skill
– It’s a well respected profession – web developer’s are like the tech industry’s rock stars! (okay, that might be an exaggeration)
– On a personal level, it’s important to understand the foundations of technology, which we interact with every day