https://www.railstutorial.org/book/beginning - 3rd edition