It felt good to finish my Sinatra project, My_FaveTools.
MyFaveTools is a Sinatra web application created to keep track of and share my favorite study videos, software, documents, and other tools that I find useful.
It was really helpful to layout what I plan on creating before jumping into Code Mode. The rough sketch of what I envisioned the user interface to look like and writing down user stories of what a user can do, helped me in designing the database. With the database design and ideas noted down, I generated the initial Sinatra application using the Ruby Gem Corneal (a Ruby Gem created by fellow student of Flatiron School). The Sinatra application generated by Corneal is wrapped in html/css so you can just jump right into building the database and coding the application logic.
My take away after finishing the project is that the internet is the greatest source of information.
As I’m coding, it’s not that simple to translate ideas into code, and I haven’t programmed long enough to remember the commands and syntaxes, but because I know what I wanted to achieve, I’m able to search the net for resources on how to implement my ideas.
After completing the basic user login/signup logic, I’m able to improve this process. You can find tons of resources on Active Record validations to enforce username, email and password formatting and to add password confirmation on user signup and on password changes. This simple change transforms the feel of the application, making it look much more legitimate.
Now that I’ve built my first web application using the more lightweight Sinatra web framework, I’m ready and excited to learn more about the magic of Ruby on Rails.