<?xml version="1.0" standalone="no" ?>

<!--  MA_RubyOnRails.xml	Course Outline in XML format
 *
 * Copyright 2009 Affinity IT Training, LLC. All Rights Reserved.
 *
 -->

<!DOCTYPE FAI:CourseOutline SYSTEM "FAI_CourseOutline.dtd">

<?xml-stylesheet type="text/xsl" href="FAI_CourseOutline.xsl" ?>	

<FAI:CourseOutline FAI:link="MA_RubyOnRails.xml"
     xmlns:FAI="http://www.fisher-assoc.com/DTDs/FAI_CourseOutline.dtd" >

  <FAI:CourseTitle FAI:level="Introduction"  FAI:code="RubyOnRails">
	Ruby On Rails Training
  </FAI:CourseTitle>  

  <FAI:CourseCategory>Programming Languages</FAI:CourseCategory>
  <FAI:CourseCategory>Web</FAI:CourseCategory>
  <FAI:CourseCategory>Ruby On Rails</FAI:CourseCategory>
  
  <FAI:SummaryInfo>

    <FAI:CourseDesc FAI:version="Apr08" >
	Starting with the basics of Ruby and Rails, you'll learn the full Rails' 
	MVC stack, testing techniques, Ajax and even web services. 
	We'll work through the full life-cycle of a Rails project, 
	giving you experience with all facets of a typical app.
    </FAI:CourseDesc>

    <FAI:CourseDuration>
	4 Days
    </FAI:CourseDuration>

    <FAI:CourseAudience>
	This course is designed for developers who have some web development 
	experience that wish to learn Ruby on Rails.
    </FAI:CourseAudience>

    <FAI:CourseObjectives>

      	<FAI:Objective FAI:desc="Configure and install Ruby and Rails" />
      	<FAI:Objective FAI:desc="Learn the basics of the Ruby language" />
      	<FAI:Objective FAI:desc="Build a new Rails application from scratch" />
      	<FAI:Objective FAI:desc="Setup and manage databases with migrations" />
      	<FAI:Objective FAI:desc="Learn how to configure Rails' routing" />
      	<FAI:Objective FAI:desc="Practice test-driven development (TDD) with Test::Unit" />
      	<FAI:Objective FAI:desc="Learn how to add Ajax with RJS" />
      	<FAI:Objective FAI:desc="Learn how to leverage ActiveRecord with associations, validations, and callbacks" />
      	<FAI:Objective FAI:desc="Understand resources and REST, and how to use them in a Rails application" />
      	<FAI:Objective FAI:desc="Learn how to find and use plugins" />
      	<FAI:Objective FAI:desc="Learn how to send emails with ActionMailer " />
      	<FAI:Objective FAI:desc="Understand the various deployment options for Rails applications" />
      	<FAI:Objective FAI:desc="Understand Rails' opinions and how to embrace or override them" />
      	
    </FAI:CourseObjectives>

    <FAI:CourseSetupList>

      	<FAI:Setup FAI:desc="Internet Explorer 5+ (or equivalent)" 
      	           FAI:link="http://www.microsoft.com" />
      	<FAI:Setup FAI:desc="Ruby 1.8.6" 
      	           FAI:link="http://rubyinstaller.rubyforge.org/wiki/wiki.pl?RubyInstaller" />
     	<FAI:Setup FAI:desc="Access to MySQL"  />
      	<FAI:Setup FAI:desc="Databases and Accounts for students and Instructor"  />


      <FAI:Setup FAI:desc="Internet access preferred" />

    </FAI:CourseSetupList>    

    <FAI:CourseTextList>

      <FAI:Text FAI:title="Course Workbook" />

    </FAI:CourseTextList>    

    <FAI:CoursePrerequisiteList>
    	<FAI:CoursePrerequisite FAI:title="Writing Web Pages with HTML" 
        		FAI:link="FAI_HTML.xml" />
        <FAI:CoursePrerequisite FAI:title="Introduction to CSS Training" 
	        	FAI:link="MA_CSS_OV.xml" />
        <FAI:CoursePrerequisite FAI:title="JavaScript Programming" 
        		FAI:link="FAI_JavaScript.xml" />
        <FAI:CoursePrerequisite FAI:title="Familiarity with MySQL (or any relational database)"
        		FAI:link="BL_Intro_MySQL.xml" />   		
    </FAI:CoursePrerequisiteList>    

  </FAI:SummaryInfo>  

  <FAI:TopicList>                            

    <FAI:SuperTopic FAI:title="Rails Introduction" >
      <FAI:Topic FAI:title="The Architecture " />
      <FAI:Topic FAI:title="the Model-View-Controller pattern " />
      <FAI:Topic FAI:title="Rails project structure " />
      <FAI:Topic FAI:title="Scaffolding for jumpstart " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Ruby Overview" >
      <FAI:Topic FAI:title="Objects " />
      <FAI:Topic FAI:title="Classes " />
      <FAI:Topic FAI:title="Core Ruby " />
      <FAI:Topic FAI:title="Ruby Standard Library " />
      <FAI:Topic FAI:title="Control Structures " />
      <FAI:Topic FAI:title="Scope " />
      <FAI:Topic FAI:title="Blocks " />
      <FAI:Topic FAI:title="Modules " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Ruby for Rails" >
      <FAI:Topic FAI:title="Rake " />
      <FAI:Topic FAI:title="test/unit " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Demystifying Rails" >
      <FAI:Topic FAI:title="The Console " />
      <FAI:Topic FAI:title="Models, Controllers " />
      <FAI:Topic FAI:title="Associations " />
      <FAI:Topic FAI:title="Migrations " />
      <FAI:Topic FAI:title="Views " />
      <FAI:Topic FAI:title="Core Ruby extensions " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Test-Driving your Rails App" >
      <FAI:Topic FAI:title="Beyond Scaffolding " />
      <FAI:Topic FAI:title="Unit and Functional tests " />
      <FAI:Topic FAI:title="Integration Tests " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Advanced Controllers and Models" >
      <FAI:Topic FAI:title="Validations " />
      <FAI:Topic FAI:title="User Authentication " />
      <FAI:Topic FAI:title="TDD'ing Actions " />
      <FAI:Topic FAI:title="Evolving Associations " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Rails Power Tools" >
      <FAI:Topic FAI:title="Mock Objects " />
      <FAI:Topic FAI:title="Named Routes " />
      <FAI:Topic FAI:title="Advanced Integration Testing " />
      <FAI:Topic FAI:title="Rails Plugins " />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Ajax on Rails" >
      <FAI:Topic FAI:title="Helpers and RJS " />
      <FAI:Topic FAI:title="Ajax with Prototype and Scriptaculous " />
      <FAI:Topic FAI:title="Ajaxifying your Rails App " />
      <FAI:Topic FAI:title="Advanced Ajax on Rails " />
    </FAI:SuperTopic>    

 </FAI:TopicList>
 
</FAI:CourseOutline>

 