You’ve reached the end of the scope of this course and should feel pretty good about your Rails skills. That doesn’t mean you should feel like you understand everything, but you should be able to build a Rails application with the kind of functionality which is actually useful in the real world. It probably won’t look too pretty, but that will come in the next few courses.
This isn’t the last course in the curriculum and you’ve got quite a way to go before hitting that “full stack” point, but it’s as far as we’ll get with Rails and it’s pretty darn far. Despite how far you’ve come, it’s up to you to keep building stuff, asking questions, and digging deeper into both Rails and best practices of software engineering in general.
At this point, you’ve got the Rails building blocks but the learning is never finished. Your first six months on the job as a Rails dev will involve learning at least as much information as you just did. The point of this course has been to get you to a place where you can start thinking about actually getting that first job.
This final lesson isn’t designed to explicitly teach new material, just point you in the right direction if you’d like to dig a bit deeper before moving on. Or maybe you’ll bookmark it and come back when you want to see where to head next in your Rails journey.
Rails is deep… there’s a lot going on behind the scenes and it will take a long time to actually understand how it all works and the best ways to use it. The best way to figure it out is to work for a company that uses it and get paid to learn. If that’s not an option, building your own stuff and reading on your own time can be a good substitute. There’s new information being created every day in blog posts, Stack Overflow posts, and podcasts.
A good first step is to reread the Rails Guides. There are some sections we skipped and some guides we never got to (especially in the “digging deeper” section). In particular, the following sections might be interesting:
If you start working on more public-facing applications, security will become more important. Check out the Rails Guide on Security for more information.
Rails tasks are a special way of running scripts that can use your application. You’re already familiar with some like
$ rails db:migrate, but you can also create your own. This website uses a Rails task to populate the curriculum from its GitHub repo. Check out the Rails Guide on Command Line and bin/rails for more information.
Caching makes your application faster by reducing database calls. Check out the Rails Guide on Caching to learn more.
Here are a few books that will take you a bit deeper as well:
- The Rails 5 Way by Obie Fernandez is a comprehensive guide to the framework.
- Agile Web Development with Rails 6 is sort of an in-depth guide combined with a tutorial that follows Agile practices along the way.
- Rails Antipatterns is a good best-practices guide.
- RailsCasts by Ryan Bates are incredibly valuable. Great ways to actually see the implementation of various gems or practices.
- GoRails alternative to RailsCasts.
- The RailsApps Project provides lots of great tutorials that walk you through building real-life scenarios like integrating Devise and CanCan with your app or building a payments backend.
- RubyFlow community blog will have some interesting stuff pop up from time to time.
You know more than you think. Remember when we just said that you should keep building stuff? This website is completely open source and needs your help to improve. We have a dedicated group of current and former students who help add features and proofread the curriculum. The best part is that it’s completely public and free so you can watch or participate at whatever level you’re comfortable.
It’s a great way to start learning about agile development methodologies and to start doing meaningful development work in a friendly and supportive environment. So check out the channel on our Discord to see what we’re up to. We’d love to have you get involved!
So there’s a lot left to go but it gets better and better. Stick with it!
This section contains helpful links to other content. It isn’t required, so consider it supplemental.
- How I Learned Ruby on Rails by Richardson Dackam
- A listing of Rails tutorials from Daniel Kehoe of RailsApps
- A list of some slightly longer Rails Tutorials by Jumpstart Lab
- The University of Texas Rails Course Online (incomplete/dated?)
- Rails Cheat Sheet by Tobias Pfeiffer
- Rails Best Practices list
- Building a Simple CMS in Sinatra Tutorial
- Why not to hardcode your application’s secret token in production
- How I Test by Ryan Bates
- Why use the
- Build 10 Apps video series by Web-Crunch
- Mackenzie Child 12 apps in 12 weeks
- Intro to API Video