Sinatra App

Classroom Library

Posted by Nolan Hughes on February 15th, 2018

It’s been awhile since I last posted a blog but I’m determined to do these on a more consistent basis. I have been so focused on completing course work and learning that I haven’t wanted to put the time into extracurricular activities that I know will lead to strengthening my overall education. Even if that means slowing down my progress with Flatiron a bit. Hopefully writing more blogs, researching topics not covered in the curriculum, and reading books will help make my skill set more diverse. I’ve already started reading Weaving the Web by Tim Berners-Lee and am writing this blog so that’s a start.

Now, onto the my Sinatra project…

I started this project really excited because I felt that my idea for this CRUD (Create, Read, Update, Destroy) application could actually become beneficial to my users. The app is a book management system for my wife’s 1st grade classroom. Using the app you can:

  • Create a new book with a title, author, genre, reading level, and quantity
  • Edit individual books
  • Filter books by genre or level
  • See a list of all of your books
  • Sort that list by author, title, genre, or level
  • Delete individual books and your user profile

This app fills a problem that she has been having because there are so many books and not a good way to keep track of, sort and filter them. There are other more sophisticated apps (good mobile layout, ability to scan a book instead of manually inputting the data) out there that are similar to mine, but they lack these fundamental features needed by teachers to effectively organize and manage all of their books.

Working with and creating a Sinatra app I feel has really been a turning point for my journey in coding. Being able to see all that I have learned up until now culminate into a functioning and useful product is beyond satisfying. Getting to see all that I’ve learned so far come together and be accessible by anyone really makes all of those long hours worth it.

All of the learning for this section of Flatiron’s course did seem slightly easier for me to grasp than the precious one. I still am struggling with some concepts involving SQL but I obviously know enough to use databases effectively. I’m hoping that my knowledge is either reinforced through future lessons or I can do some independent learning on the subject like I mentioned in my first paragraph.

There was only a few times where I was actually stumped when trying to figure out how everything was going to work with the Sinatra app. My skills hunting Google for answers that I have obtained during previous labs helped me find answers quickly though. I think this is a notch in the belt of how Flatiron teaches their students because they’ve prepared me with enough guidance and base knowledge to not be completely bamboozled by problems but haven’t held my hand all the way so I’m not learning for myself.

Here is a link to my app deployed on Heroku.