Learn How to Code
  • Welcome
  • Foundations
    • Introduction
      • Becoming a web developer
      • Motivation and mindset
      • Join a supportive community
      • How does the web work?
    • Requirements
      • Prerequisites
      • Text editors
      • Command line basics
      • Setting up Git
      • Setting up Node
    • Git
      • Git basics
      • Project: Practicing Git
    • Frontend
      • HTML and CSS
      • Developer Tools
      • Project: Create a web page
    • JavaScript
      • Strings and Conditionals
      • Using Developer Tools
      • Functions
      • Problem solving
      • Project: Rock paper scissors
      • Writing clean code
      • Arrays and Loops
      • The DOM
      • Project: Etch-A-Sketch
      • Objects and More Arrays
      • Project: Calculator
    • Backend
      • Frameworks
    • Next steps
  • Deep dives
    • Computer Science
      • Pseudocode and algorithms
      • Recursion and algorithms
        • Project: Fibs and sorting
        • More on algorithms
        • Big O
        • Project: Practicing Big O
      • Data structures
        • Maps, Stacks and Queues
        • Project: Stacks and Queues
        • Nodes, Linked Lists and Trees
        • Project: Linked Lists
        • Project: Trees
        • Next steps
    • Databases
      • Databases and SQL
      • Project: SQL Zoo
    • Design / UX
      • Fonts and typography
      • Grids
      • Project: Teardown
      • Responsive design
      • Project: Mobile friendly
      • CSS frameworks
      • Project: Bootstrapping
    • HTML / CSS
      • HTML Basics
        • Linking
        • Images and media
        • Project: Embedding media
        • HTML5
        • Tables
        • Lists
        • Forms
        • Project: Make a form
      • CSS Basics
        • Box model
        • Floats and positioning
        • Flexbox
        • Grids
        • Project: Breaking news
        • Best practices
        • Backgrounds and gradients
        • Project: One more thing
        • CSS3
        • Preprocessors
        • Project: Your own framework
      • Next steps
    • JavaScript
      • Refresher
      • Organization
      • Objects and constructors
      • Project: Library
      • Factory functions and module patterns
      • Project: Tic Tac Toe
      • Classes
      • ES6 Modules
      • Project: Restaurant
      • Object Oriented Programming
      • Project: Todo list
      • Linting
      • Menus and sliders
      • Forms
      • ES6 features
      • JSON
      • Callbacks and promises
      • Using APIs
      • Async and Await
      • Project: Weather
      • Testing
      • Project: Testing 1-2-3
      • Advanced Testing
      • Project: Battleship
      • Backends
      • Project: Where's Waldo?
      • Project: All-Star
      • Next steps
    • NodeJS
      • Project: Going to school
      • Project: Passing the test
      • Express
        • Templates and middleware
        • CRUD and MVC
        • Project: Message board
        • Routes
        • Displaying data
        • Forms and deployment
        • Project: Inventory
      • Authentication
      • Security
      • Project: Clubhouse
      • APIs
      • Securing an API
      • Project: Blog
      • Testing
      • Testing with a database
      • Project: Social network
    • React
      • Props and State
      • Render lists and handle inputs
      • Project: CV
      • Lifecycle methods
      • Hooks
      • Project: Memory card
      • Router
      • Project: Shopping cart
      • Advanced concepts
    • Ruby
      • Installation
      • Data types
      • Variables
      • Input and Output
      • Conditionals
      • Loops
      • Arrays
      • Hashes
      • Methods
      • Enumerables
      • More enumerables
      • Nested collections
      • Blocks
      • Pattern matching
      • Debugging
      • Project: Caesar cipher
      • Project: Substrings
      • Project: Stock picker
      • Project: Bubble sort
      • Object oriented programming
      • Project: Tic Tac Toe
      • Project: Mastermind
      • Serialization
      • Project: Event manager
      • Project: Hangman
      • Computer Science
        • Recursion
        • Project: Merge Sort
        • Data structures and algorithms
        • Project: Linked Lists
        • Project: Binary Search Trees
        • Project: Knight Travails
      • Testing
      • RSpec
      • Project: Four in a row
      • Git
      • Project: Open Source
      • Project: Chess
      • Next steps
    • Ruby on Rails
      • Using Heroku
      • Installing Rails
      • Basics
        • Routing
        • Controllers
        • Views
        • Asset pipeline
        • Deployment
        • Project: Blog
      • Active Record
        • Project: Upvote
      • Forms
        • Cookies, sessions, and authentication
        • Project: Password
      • Advanced forms and Active Record
        • Associations
        • Project: Private Events
        • Callbacks
        • Menus, helpers and nested forms
        • Project: Ticket agent
      • APIs
        • External APIs
        • Project: Animals
        • Project: Photo widget
      • Mailers
        • Project: Confirmation
      • Advanced topics
        • Action Cable
      • Project: Social network
      • Next steps
  • Getting hired
    • Preparing to find a job
      • Plan a strategy
      • What companies want
      • Get yourself together
      • How to prepare
      • Project: Make your website
    • Applying and interviewing
      • Qualifying leads
      • Project: Make your resume
      • Applying for jobs
      • Preparing for an interview
      • Handling an offer
      • Final words
  • Maintained by
    • wbnns
  • License
    • CC BY-NC-SA 4.0 © 2022
Powered by GitBook
On this page
  • Great work
  • Next steps
  • Security
  • Rails tasks
  • Caching
  • Books
  • Other resources
  • Conclusion
  • Additional resources
  1. Deep dives
  2. Ruby on Rails

Next steps

The point of this course has been to get you to a place where you can start thinking about actually getting that first job.

PreviousProject: Social networkNextPreparing to find a job

Last updated 4 years ago

Great work

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.

Next steps

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 . 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:

Security

If you start working on more public-facing applications, security will become more important. Check out the for more information.

Rails tasks

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 for more information.

Caching

Books

Here are a few books that will take you a bit deeper as well:

Other resources

Conclusion

We want to emphasize again that the learning never really stops but also that you've come a long way. Stick around for the next few courses and you'll take a good core and build some very interesting things. In the HTML/CSS course, you'll learn to make your Rails applications look like actual websites instead of text dumps. In the Javascript course, you'll learn how to take everyday web apps and make them much faster and more dynamic in the browser.

So there's a lot left to go but it gets better and better. Stick with it!

Additional resources

This section contains helpful links to other content. It isn't required, so consider it supplemental for if you need to dive deeper into something.

Caching makes your application faster by reducing database calls. Check out the to learn more.

by Obie Fernandez is a comprehensive guide to the framework.

is sort of an in-depth guide combined with a tutorial that follows Agile practices along the way.

is a good best-practices guide.

are incredibly valuable. Great ways to actually see the implementation of various gems or practices.

alternative to RailsCasts.

The 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.

will have some interesting stuff pop up from time to time.

by Richardson Dackam

A from Daniel Kehoe of RailsApps

A list of some slightly

The (incomplete/dated?)

by Tobias Pfeiffer

Rails Guides
Rails Guide on Security
Rails Guide on Command Line and bin/rails
Rails Guide on Caching
The Rails 5 Way
Agile Web Development with Rails 6
Rails Antipatterns
RailsCasts by Ryan Bates
GoRails
RailsApps Project
RubyFlow community blog
How I Learned Ruby on Rails
listing of Rails tutorials
longer Rails Tutorials by Jumpstart Lab
University of Texas Rails Course Online
Rails Cheat Sheet
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 %Q methods?
Build 10 Apps video series by Web-Crunch
Mackenzie Child 12 apps in 12 weeks
Intro to API Video