Ruby on Rails for Newbs

SENG 403
Group 3

Yasir Al-Bender Eric Eidelberg
Steven Huang Carrie Mah
Bradley Triebwasser Kimalel Tuitoek

1

Table of Contents

I.   History
II.   Popular Websites
III.   Comparison to Other Solutions
IV.   Setting Up the Environment
V.   Differences in Syntax
VI. Demonstration
VII.  Resources
VIII.  Summary

2

Goal


Understand the Ruby on Rails framework:

  • What it is
  • What makes it different
  • How to use the framework

    3

    Introduction


    What is a framework?


    • Layer of abstraction
    • Flow of control not to be modified
    • Provides default behavior

    4

    History









    "I hope to see Ruby help every programmer in the world be productive , and to enjoy programming , and to be happy ."
    Yukihiro Matsumoto ('Matz')

    5

    Reasons for Growth


    • Rich built-in libraries
    • Easy to extend
    • Lower code overhead -> fewer bugs
    • Open source

      6

      Rails


      • David Heinemeier in 2003
      • Web-application framework     
      • Faster than Java framework
      • Features: 
        • Templates
        • Engines
        • Russian Doll caching system         
        • Turbolinks
        • ActiveRecord Observer
        • Livestreaming

      7

      Popular Websites

      7











      Source: Original  Websites

      Comparison to Other Solutions

      8

      Comparison to PHP


      • More object-oriented
      • Web framework
      • Model-View-Controller



      9

      Comparison to Java


      • Java:
        • More scalable
        • More secure
        • Development tools
      • Rails:
        • Simple
        • Faster development time
        • Built-in testing framework

      10

      Model-View-Controller Architecture

      11

      Limitations


      • Scalability
        • Cannot power large websites
        • 'One size fits all'
        • Difficult integrating with other apps
      • Less configuration
        • Limits customization
      • Steep learning curve

      12

      Setting Up the Environment

      13

      Installing Ruby and Rails in Linux (1)


      14

      Installing Ruby and Rails in Linux (2)


      15

      Installing Ruby and Rails in Linux (3)



      16

      Installing Ruby and Rails in Windows (1)


      17

      Installing Ruby and Rails in Windows (2)


      18

      Installing Ruby and Rails in Windows (3)


      19

      Installing Ruby and Rails in Windows (4)


      20

      Installing Ruby and Rails in Windows (5)


      21

      Installing Ruby and Rails in Windows (6)


      22

      Installing Ruby and Rails in Windows (7)


      23

      Installing Ruby and Rails Using RVM (1)


      24

      Installing Ruby and Rails Using RVM (2)


      25

      Installing Ruby and Rails Using RVM (3)


      26

      Installing Ruby and Rails Using RVM (4)


      27

      Installing Ruby and Rails Using RVM (5)


      28

      Installing Ruby and Rails Using RVM (6)


      29

      Installing Ruby and Rails Using RVM (7)


      30

      Installing Ruby and Rails Using RVM (8)






      31

      Differences in Syntax


      Main focus:
      • Simplicity
      • Flexible
      • Object-oriented

      32

      Tutorial



        33

        Demonstration

        34

        Ruby IDEs

        35

        Resources

        REFERENCES


        TUTORIALS

        36

        Summary












        • Object-oriented
        • Web framework
        • Simple
        • Fast development time
        • Not scalable

        37

        Thank You!


        Yasir
        Al-Bender
        Eric
        Eidelberg
        Steven
        Huang
        Carrie
        Mah
        Bradley
        Triebwasser
        Kimalel
        Tuitoek

        Questions?


        Art by IconGenerators, Designed by Carrie  (icons based off Facebook profiles, may not reflect the real people)

        38

        Ruby on Rails

        By Carrie Mah

        Ruby on Rails

        An introduction to Ruby on Rails

        • 825
        Loading comments...

        More from Carrie Mah