Learning Sinatra was extremely fun for me. I was finally seeing the information and coding that I have learned over the past few months come to fruition and actually create applications. It all started clicking, all those models and SQL tables were finally coming together to create something bigger. Something on the “web” even if it is locally :)
It always helps me to write down the requirements and start brainstorming on paper. I sometimes need something physical for my brain to truly comprehend the information. Below is a tiny glimpse into how I started my thought process with this project:
I had just gotten home from a meet up for Chicago Women Developers and I had parked in a parking garage. I’m the type of person who always takes a picture or makes a note on my phone of where I parked whenever I park in a parking garage, so I’m not wandering around wasting time looking for my car (which I have done countless of times). So I decided to create a simple app where a user can create an account and create spots with fields of information to better remember where they parked. From there they can edit their spot or delete it, and they can create as many spots as they would like. Since it requires a login the user can only see and edit his or her spots.
The skeleton was easy for me, and I mean easy as in I researched and did as programmers do best, found a shortcut. I found a gem that a previous Flatiron student created called Corneal. It created the backbone and structure to my application. From there I started writing based off the previous Sinatra projects. I was quite pleased with myself on how well I could apply what I learned.
I wish I could say it was easy breezy the whole time, but I did run into a few problems with authentication, my program was showing every user every spot. I went back through the lessons and what really helped me were the video lectures, specifically Building Authentication in Sinatra
This project was a TON of trial and error. What I really enjoyed about this project was how it relied so much on testing on my own and constantly running shotgun. I loved writing the code then refreshing my browser and see it update immediately, it felt like I had super powers and I loved every second of it.