Sinatra Project: useful links for beginners

Posted by Agi on July 21, 2020

Working on my Sinatra project was the first time that I got to flex my Google skills in the context of development.

In my first couple weeks of learning to code I took pages of notes, conflating memorizing syntax with learning how to be a software engineer. I quickly realised that I what I should be learning is not simply syntax, but rather concepts and how to find answers from credible sources.


Thankfully, I am no stranger to searching for answers online. When I went from working at a large corporation to running a start-up, the training wheels literally came off. There were no more manuals, training sessions or rotational programs. What I did have was my own experience and intuition, the ear of a few smart partners, and a search bar.


One thing I learned at that time is what is really means to be curious. I learned how to identify credible sources of information, ask my network for help when I couldn’t find one, and find the right way to do something through trial and error. I see the same skills as key to being a successful software engineer.


I have compilled the most useful links that I used in building my Sinatra project in hopes that a future student finds it useful when building their project.

CSS flexbox tutorial

I got really stuck on CSS styling, and finally landed on a flexbox layout to show both my book index and user index. This is a good wak through of the potential properties.

Find and kill a port in use

I ran into a problem using shotgun, getting an error that port 9393 was in use. This post helped me resolve that problem.

Ruby docs for Active Record associations

Not only a great bookmark to reference syntax for Active Record maros, but also features diagrams to visually represent associations.

w3schools guide to HTML and CSS

Rather than memorizing html and css syntax, I keep w3schools bookmarked for a quick reference.

RESTful routes

The best resource for building routes in Sinatra!

Vertical alignment

Aligning text and images was more tricky than I would have guessed. I found this Stack Overflow question that helped.

Deploying a Sinatra app to Heroku

This is a guide shared amoung current students of how to deploy a Sinatra app onto Heroku. Not required for the project, but great to do to make the app easy to share.