In a booming tech industry, having the skills to handle both design and functionality is what makes a developer stand out.
In this 60-hour back-end intensive, you'll take your knowledge of web technologies like HTML and CSS even further by quickly creating beautiful apps that actually work. From displaying pop-up messages to storing data in a database, you'll learn to handle the creation of software from start to finish, including how to launch your application live on the web for anyone to use.
The first part of the course teaches you how to leverage the power and speed of Ruby on Rails, and you’ll quickly see why big companies like Shopify, Groupon, Twitter, and Github use it to build their services. You’ll then learn the fundamentals of programming using the Ruby language without Rails to solidify your understanding of how the back-end of software works.
The final sessions of the class will be focused on mastering Model-View-Controller architecture so that you can decide for yourself whether you want to specialize in creating complex backend systems, or designing professional applications that simply work.
This course is offered at our design school, Noble Desktop. View upcoming dates and register for this course directly on Noble Desktop’s website.Register at nobledesktop.com
Video Training and Workbook Included
Students get a workbook and lifetime access to self-paced training videos, a $95 value.
Modern computer classroom with a Mac for each student to work on.
Small In-Person Classes
Get personalized attention in small groups with an expert instructor in the classroom.
Refresh the course materials within six months for free as long as there's space in the class.
What You'll Learn
- How to create an application that really works
- How to set up and work with a database
- How to store and retrieve information submitted by users
- Use Model-View-Controller (MVC) architecture to keep code organized
- Principles of Software Engineering such as Convention over Configuration (CoC) and Don't Repeat Yourself (DRY)
- Make different screens based on a user's login status
- Use programming languages to reduce the amount of code you have to write
- Deploying an application live to the web
Full Course SyllabusDownload PDF Outline
Introduction to Ruby on Rails
- The Scaffold command
- Overview of Models, Views, and Controllers (MVC)
Adjusting the Templates Created by Scaffolding
- Formatting in Rails
- Working with Dynamic web pages
- Editing the text in the tab
- Redirecting the homepage URL
- Editing the CSS
Version Control with Git
- Initializing a repository
- Commiting and Pushing changes
- Creating, switching, and deleting branches
- Merging branches
Ruby Data Types & Variables
- String, Integer, Float, Boolean and Nil values
- Properties of Ruby data types
- Instance variables & Local variables
- Global variables
Functions & Control Flow
- Built-in functions
- Creating your own functions
- Passing arguments and returning values
- If/Else and Unless Statements
- While/Until Loops
Ruby Data Structures
- Arrays: The Simplest Collections
- Common Iterators
- Creating classes
- Class Methods
- Overriding Methods
Controllers and Views
Generating a Controller
- Creating a New Rails Site for Flix
- How Controller methods relate to views
- Private methods
- The params hash
- Generating and creating Views
- When you don't need a View
- Mapping Views to controller actions and routes
- Dynamic Views
- The rails routes command
Models & Forms
- Generating a Model
- How Migration Files work
- Migratiing the Database
- Rolling back a migration
- Rails forms vs HTML forms
- HTTP Overview
- Rails Form Helpers
- Rails forms: form_for, form_tag, and form_with
- Connecting a form to a Model
- Installing ActiveStorage
- Allowing users to upload images
- Creating a View
- Adding Dynamic Data
- Rendering a Partial
- Optional Bonus: Rendering a View
- The purpose of validations
- Adding basic validations
- Preventing submission of empty forms
- Customizing validations
- Adding Error Messages
- Built-in Model methods
- Adding methods to models
- has_one and belongs_to relationships
- has_and_belongs_to_many: Simple Many-to-Many Relationships
- has_many, through: Advanced Many-to-Many Relationships with Additional Metadata
- Polymorphic Relationships
Other Important Relationships in Rails
- Delegates: Sharing Methods Between Related Objects
- Self-Joins: Relationships Between Instances of the Same Model
- Has_one and belongs_to relationships
- Has_many relationships
- Joining models together via the controller
- Writing Simple Tests Using Fixtures
- Optional Bonus: Writing Tests Using Embedded Ruby Code
- Additional Bonus: Helpers
Integrating Front-end Code
Rails Asset Pipeline
- What the Asset Pipeline does
- Adding CSS
Launching an Application
- Managing Ruby environments
- Locking Gem versions
- Environment variables
Amazon Web Services
- Setting up an AWS account
- Where to store credentials
- Remote Asset Storage with Amazon S3
- Heroku Account Setup
- Installing Heroku Toolbelt
- How Heroku works
- Types of Dynos
- Deploying your application
Frequently Asked Questions
Do I need to bring a computer?
No. We provide a computer with the necessary software for each attendee. This course is available on Mac only.
Are discounts available for this course?
No. This course is not eligible for any discounts.
We offer discounts for packages of classes, including our Excel Bootcamp, SQL Bootcamp, Data Analytics, and PowerPoint Bootcamp.
We also provide discounts for ten or more classes purchased together. Please reach out for more information on our voucher programs.
Does this course come with a book?
Yes. This course includes a complimentary book or manual at no additional cost.
What if I need to retake this course? May I retake it for free?
Yes. You may retake this course for free once within six months, provided that the class is running with an available seat. For more information, visit our policies page.