Ruby on Rails - Training, Fremont, CA

Boost your marketability in the competitive web development sector with Ruby on Rails training.

Our Ruby on Rails training course introduces you to web application development using Ruby on Rails - a full-stack web development framework written in the flexible, object-oriented Ruby language.

Ruby on Rails is popular for its straightforward, easy-to-program approaches for creating common web application elements, such as accessing a database, generating web pages, processing user input, and adding interactive AJAX page features.
Rails is an open-source web application framework built on Ruby, an object-oriented scripting language.

Ruby on Rails lets you quickly create applications by configuring components built into the framework, allowing you to create feature-rich programs in just a few lines of code. The Rails distribution includes a MySQL database, AJAX tools, web services, and application and security support.

Tekforce's Ruby on Rails training in Fremont will introduce you to the Rails framework and show you the best way to install the environment, set up an application, integrate AJAX, and more.

Upon completing our Ruby on Rails training, you will be able to:

  • Set up the Ruby on Rails distribution
  • Invoke Rails generators and helper scripts to jumpstart your development
  • Use models, views, and controllers to define your program
  • Render views in HTML, XML, JSON, or JavaScript
  • Use Form helpers to generate HTML forms automatically
  • Validate data from any database
  • Address security and user authentication issues

Ruby on Rails is a powerful tool for building certain kinds of applications. Its authors call it "opinionated" software because it asks us to adopt certain assumptions in order to best take advantage of the framework, with the least amount of effort. At the same time, Rails is not the solution for every web problem. In this introductory class you will learn how to:

  • Understand what Ruby is, and where the Rails framework comes from
  • Identify the type of applications for which Rails is most - and least - suited
  • Fully grasp what is meant by "opinionated software" and "convention over configuration"
  • Navigate Ruby's basic syntax and its implementation of programming constructs like variables, loops, and conditionals
  • Evaluate the strengths and weaknesses of the Rails framework
  • Use the MVC pattern for application development in Rails
  • Define the role of a web server, application server, and database server in a Rails web application
  • Setting up Ruby on Rails, a Database, and Development Tools

The good news: Ruby, Rails, and the related tools are free and easy to set up! (There is no bad news.) In this part of the training you will learn how to:

  • Download and install the version of Ruby that's right for you
  • Use the Ruby interactive console and access the built-in documentation
  • Use the Gems package manager to install Rails
  • Install the free MySQL database and graphical tools that make Rails easier to use
  • Leverage online resources that provide additional help and information about using Ruby, Rails, and MySQL to solve common problems
  • Incorporate the power of full-featured, free Integrated Development Environments (IDEs), which support interactive debugging
  • Rails Application Structure and Built-In Tools

Rails helps you keep everything organized with a specific directory structure for each application in which everything has its place. Rails also includes a number of built-in tools for generating and testing code. In this part of the course you will learn how to:

  • Find your way easily around a Rails application and the standard Rails directory structure
  • Get started quickly and save time formatting parts of your app with Rails "generators"
  • Implement a Rails helper script to run your app on a basic web server, or interact with it from the console
  • Efficiently add Ruby libraries to your application, including Gems and Rails Plug-Ins
  • Understand the benefit of Rails' built-in programmatic testing
  • Building a Simple Rails Application

Learn just how easy it is to create a basic Rails application and get it running. We will go through the straightforward steps to starting a new Rails project, and you'll get a feel for many of the core Rails features. We will show you how to:

  • Implement Rails utility scripts to quickly create a brand-new web application
  • Fire up the built-in web server to see your application produce dynamically generated pages
  • Connect your web application to a database, and access the database
  • Add tests to check that your code is valid, and run those tests
  • Add a simple AJAX interaction to your application, using Rails’ built-in AJAX tools
  • Effortlessly add a simple web service interface to your application with built-in Rails tools
  • Rails Models and ActiveRecord

In this section, we dive deeper into how Rails facilitates working with databases. Rails handles database interactions through its built-in ActiveRecord module. ActiveRecord provides persistent Ruby objects by mapping those objects to one or more rows in a relational database table (or tables). You will learn how to:

  • Connect to your database of choice with ActiveRecord
  • Define your Ruby model objects and specify how they persist in the database
  • Create migrations to ease database changes as your application grows and changes
  • Specify relationships between different kinds of objects and their associated database tables
  • Validate your data to make sure it adheres to business rules before it is committed to the database
  • Rails Views and ActionView

Rails views are the templates you will typically use to generate web pages for your users. But we'll show you how you can do a lot more with Rails views - and the ActionView Rails module. From generating other output formats to keeping your code clean by keeping logic out of your pages. In this section of the training, you'll learn all about how to:

  • Use typical Rails templates for generating web pages
  • Implement Helper modules for additional options
  • Use built-in helper functions for common tasks like showing model validation errors to the user
  • Easily generate HTML forms based on your Rails model objects with Rails Form helpers
  • Save time with partial views - reusable chunks of a view template
  • Create layouts - common rendering instructions for different parts of your web site
  • Render other common formats besides HTML, for example: XML, JSON, or JavaScript
  • Rails Controllers and ActionController
Rails Controllers, the communication hubs of a Rails application, are the next stop on your Rails tour. Controllers sit at the intersection of user requests, model objects, views for rendering output, and custom service modules, which you can build to address your particular business needs.We will teach you how to:

Map an incoming page or resource request to a piece of code that handles the request using routing sessions
Conveniently pass data between parts of your app with the Rails "Flash" tool (which keeps things simple by cleaning up after itself)
Create code that automatically executes before or after specific operations, called filters
Creating AJAX Interactions with Rails
Most web applications today include at least some AJAX functionality to support operations a user can execute right within the web page without the application having to load a new page. Some of these features are cosmetic, such as graphical transitions, while others offer business capabilities, for example, drilling down into OLAP data just by hovering a cursor over part of a report. Rails makes it easy to incorporate Ajax by providing built-in support for many common AJAX features. In this section you will learn how to:

  • Alter the current browser page - as opposed to loading a new one - in response to a user request
  • Use Rails helper objects to generate client-side JavaScript, keeping most of your code in Rails
  • Add your own JavaScript and use the shortcuts provided by the built-in JavaScript libraries (prototype and script.aculo.us)
  • Integrate other popular JavaScript libraries, for example, jQuery)
  • Publishing Web Services with Ruby on Rails

Rails makes it easy to expose web services from your application, especially if you intend to follow the REST web services paradigm. In this part of the course you will learn how to:

  • Define "RESTful web services"
  • Use "RESTful routes" and built-in functionality to provide access to your application as a service
  • Access web services from other parts of your company or other systems around the world
  • Generate an RSS or Atom feed, so that users can access your data with a feed reader or aggregator
  • Ruby on Rails Security Basics

Rails is so good at taking the headache out of creating web applications, that it's easy to forget some common vulnerabilities that may occur. In this section, you will learn a few of the most common issues that come up in web applications, and how to take advantage of Rails to protect yourself and your users. You will learn about how to:

  • Properly escape and cleanse user-submitted data to make it harder for attackers to load their own code into your web pages
  • Prevent SQL injection attacks by following ActiveRecord best practices
  • Choose from common Rails approaches to user authentication
  • Understand the basics of SSL and when to use it in your application
  • Prerequisites:
    • Familiarity with Object-Oriented Programming
    • Understanding of basic syntax of Ruby (although this will be reviewed)
    • Ability to hand-code HTML