Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Ruby on Rails
Search
Angel Avgerinos
March 19, 2013
Programming
3
200
Introduction to Ruby on Rails
Presentation at University of Piraeus
Angel Avgerinos
March 19, 2013
Tweet
Share
More Decks by Angel Avgerinos
See All by Angel Avgerinos
Hacking our way to Geembo
eavgerinos
1
100
Other Decks in Programming
See All in Programming
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
300
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
170
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.2k
CSC307 Lecture 05
javiergs
PRO
0
500
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
620
Lambda のコードストレージ容量に気をつけましょう
tattwan718
0
130
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
200
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
200
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
5
460
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
320
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
Marketing to machines
jonoalderson
1
4.6k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
93
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
50
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
A better future with KSS
kneath
240
18k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
190
YesSQL, Process and Tooling at Scale
rocio
174
15k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Transcript
INTRODUCTION - to -
Angel Avgerinos Ruby on Rails & Java developer
RUBY A multi-paradigm general purpose language
Yukihiro Matsumoto (Matz) Creator of Ruby programming language (1995)
What Ruby is
OBJECT - ORIENTED Everything in Ruby is an object (instance
of a Class)
FUNCTIONAL Supports Lambdas and Procs
REFLECTIVE Ruby can modify the structure of an object at
runtime
IMPERATIVE Modules and Blocks
Why Ruby rocks
OPEN SOURCE https://github.com/ruby/ruby
READABLE AND SEXY No semicolons, no mandatory parentheses, method chaining.
TREND RIGHT NOW 2nd most popular language at Github.com
CHECK THIS OUT
class Calc # Creates getters and setters for
num1 and num2 attr_accessor :num1, :num2 def initialize(num1, num2) @num1 = num1 @num2 = num2 end def add #string interpolation puts "#{@num1 + @num2}" end end c = Calc.new(1,2) c.add
WHAT ABOUT LIBRARIES ?
Gem A package format for Ruby programs and libraries
The structure of a Gem
INSTALLING GEMS from RubyGems.org gem install gem_name
Let’s take it to the next level Just type...
gem install rails Now you have superpower
Ruby on Rails MVC framework to get you on the
Web
David Heinemeier Hansson (DHH) Creator of Ruby on Rails (2004)
and partner at 37signals
What Rails is
GEM Just a Gem with reusable code! No fancy installs!
OPEN SOURCE https://github.com/rails/rails
FRAMEWORK A Web application framework.
MVC Awesome pattern.
What Rails is NOT
What Rails is NOT A Programming language
AWESOMENESS MVC
MODEL VIEW CONTROLLER View Controller Model Database
MODEL
CONTROLLER
VIEW
STARTING A NEW RAILS PROJECT
rails new app_name TYPE...
RAILS APP STRUCTURE
/APP
/CONFIG
GEMFILE Where your life becomes easier
source 'https://rubygems.org' gem 'rails', '3.2.12' group :development, :test do
gem 'sqlite3' end group :assets do gem 'sass-‐rails', '~> 3.2.3' gem 'coffee-‐rails', '~> 3.2.1' gem 'uglifier', '>= 1.0.3' gem 'compass-‐rails' gem 'sassy-‐buttons' gem 'bootstrap-‐sass', '~> 2.3.0.1' gem 'font-‐awesome-‐sass-‐rails' end gem 'jquery-‐rails' gem 'omniauth-‐facebook' gem 'devise', '2.2.3' gem 'geocoder'
A GLIMPSE OF RAILS
SCAFFOLDING rails g scaffold User email:string
MIGRATION rake db:migrate
RAILS SERVER rails s
DONE!
HOW TO GET STARTED
tryruby.org codeschool.com codecademy.com railstutorial.org/book railscasts.com github.com RESOURCES
THANKS @eavgerinos
[email protected]