• Programs
  • About
  • Contact
Become a Web Developer
Become a Designer

Here’s our Rails Fundamentals Syllabus!

You'll also receive a copy of the syllabus in your email. Check out the next steps for starting our Rails Fundamentals program.

You'll also receive a copy of the syllabus in your email.
Check out the next steps for starting our Rails Fundamentals program.

Explore the Rails Fundamentals Syllabus

This page describes the structure of the program. For a simple list of major technologies taught during the program, see Rails: Technologies Used.

Prerequisites

  • No prior coding experience required
  • A Mac or PC with a high-speed internet connection

Before You Start

  • Orientation with Bloc
  • 25 hours of pre-course study is required and should be completed during your orientation week. Find the pre-course study plan here
  • Introduction to your Mentor and membership to the Hacker Club community
  • Introduction to Bloc’s project-based approach to learning

Build a Development Environment

  • Learn basic command line operations
  • Become proficient with a code editor
  • Learn how to manage code and projects with Git and GitHub
  • Configure a Rails development stack
  • Learn how to deploy web applications to a Production environment

Ruby Fundamentals

  • Learn the fundamentals of object-oriented programming with Ruby
  • Master the basics of the Ruby language, including strings, numbers, booleans, arrays, and conditional logic
  • Practice intermediate aspects of Ruby, including methods, hashes, blocks, and loops
  • Master object-oriented design basics with classes and modules
  • Practice methodical debugging strategies
  • Learn Test-Driven Development with the RSpec library

Ruby Command Line Project: Build an Address Book

  • Build a command line address book application using Test-Driven Development
  • Learn how to run a command line application
  • Build data models with Ruby classes
  • Build a menu system to process user input
  • Import data from text files
  • Learn about algorithms by building a binary search feature

Your First Rails Application: Build a Replica of Reddit

Master the basics:

  • Learn the fundamentals of web development with Rails
  • Learn the fundamentals of frontend markup with HTML and CSS
  • Leverage Rails' API, including ActiveRecord, ActionView, ActionController, and ActionMailer
  • Learn the fundamentals of database architecture, design, and maintenance
  • Employ database best practices, including indexing, efficient querying, and scope-chaining
  • Build robust features from scratch, including user authentication, authorization, and data-seeding

Learn intermediate programming techniques:

  • Learn best practices for debugging and troubleshooting
  • Write validation tests to ensure data integrity
  • Learn how to integrate packaged solutions for markdown rendering, pagination, and image management
  • Learn how to create complex routes and associations

Build advanced features:

  • Write a time-decay algorithm for voting and ranking
  • Build a "Favoriting" feature using after-action callbacks and automatic emails
  • Authorize private topics and public profiles
  • Learn advanced Test-Driven Development practices with RSpec
  • Apply JavaScript and jQuery to manipulate data through AJAX
  • Build a secure API to turn an application into a platform

Technical Projects

You will complete at least two projects during the Project Phase. Projects are prescriptive yet open to interpretation and creativity. They are designed to challenge you while providing guidance to keep you on track. A project is complete when all its requirements are implemented and approved by your mentor.

Self-Destructing Todo List

  • Build a to-do list application that deletes items automatically after a given amount of time
  • Learn how to code and schedule automated tasks with Rake
  • Implement robust authentication and authorization for different types of users

Software-as-a-Service Wiki Collaboration Tool

  • Build an application to allow users to create, collaborate, and share wikis
  • Integrate Stripe to charge users for premium accounts with additional features

Social Bookmarking Tool

  • Build an application to allow users to share their favorite links
  • Learn how to send and receive email automatically

API Analytics Service

  • Build an analytics service for tracking application users and their activity
  • Use JavaScript, jQuery, JSON, and AJAX to send tracking events
  • Build a server-side API to persist tracked events
  • Create a dashboard report for viewing user activity

To-Do List as-a-Service

  • Build an open API for a to-do list application
  • Use Rails Serializers to format data into API-friendly JSON
  • Learn best practices for designing RESTful APIs
  • Learn about internet security, CSRF, and how you can use Rails to protect your users

Capstone

  • Bring your product idea to life. Use your capstone project as an opportunity to hone your skills in a particular area of interest, or as a springboard to launch a new product
  • Build your idea from scratch, while learning best practices for application scoping, design, and architecture
  • Deploy your application, and we'll help you promote it

Portfolio

  • Create a unique Portfolio site that showcases your personality, projects, and writing
  • Include images and links for your projects
  • Build a blogging engine to explain your coding process and express your opinions
  • Make your site stand out with a stunning design

Still have questions?

Check out FAQ

Ready to enroll?

Programs start every Monday.

Enroll now