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
Ruby on Rails for .Net Developers
Search
Michael Dwan
September 12, 2007
Programming
600
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ruby on Rails for .Net Developers
I gave this intro to Rails talk to the Chicago .NET Users Group on September 12, 2007.
Michael Dwan
September 12, 2007
More Decks by Michael Dwan
See All by Michael Dwan
Mongo Boulder 2011: Data Modeling for Performance
michaeldwan
0
53
Other Decks in Programming
See All in Programming
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
What's New in Android 2026
veronikapj
0
260
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
440
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
210
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.8k
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.3k
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.8k
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
210
VibeCodingからAgenticWorkflowへ
starfish719
0
420
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
780
Featured
See All Featured
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
Design in an AI World
tapps
1
280
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
400
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Bash Introduction
62gerente
615
220k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
How to train your dragon (web standard)
notwaldorf
97
6.7k
GitHub's CSS Performance
jonrohan
1033
470k
Deep Space Network (abreviated)
tonyrice
0
250
Transcript
Ruby on Rails
“Web development that doesn’t hurt” RoR is an open-source web
framework that’s optimized for programmer happiness and sustainable productivity. It lets you write beautifiul code by favoring convention over configuration. -RubyOnRails.org
None
Don’t Repeat Yourself - Keep it DRY
Don’t Repeat Yourself - Keep it DRY Convention Over Configuration
Don’t Repeat Yourself - Keep it DRY Convention Over Configuration
Agile Development
Embrace Web Constraints Not Hide Them
Examples
None
None
None
Why Rails?
Ruby MVC Architecture Migrations ActiveRecord Scaffolding Test Framework
Ruby
dynamic scripting language everything is an object designed with programmer
happiness in mind
None
None
MVC ! The ActionPack
Model Manages application state Enforces business rules View Generates the
user interface html, js, xml, pdf, etc... Controller Orchestrates interactions between model & view
Fill in the blanks
fakecompany.com/store/add_to_cart/123
fakecompany.com/store/add_to_cart/123 Routing
fakecompany.com/store/add_to_cart/123 Routing
fakecompany.com/store/add_to_cart/123 StoreController Routing
fakecompany.com/store/add_to_cart/123 StoreController Routing
fakecompany.com/store/add_to_cart/123 StoreController Routing add_to_cart Action
fakecompany.com/store/add_to_cart/123 StoreController Routing add_to_cart Action
fakecompany.com/store/add_to_cart/123 Model StoreController Routing add_to_cart Action
fakecompany.com/store/add_to_cart/123 Database Model StoreController Routing add_to_cart Action
fakecompany.com/store/add_to_cart/123 Database Model StoreController Routing add_to_cart Action add_to_cart View
fakecompany.com/store/add_to_cart/123 Database Model StoreController Routing add_to_cart Action add_to_cart View
people-friendly urls action security and access control caching session management
None
someplace.com/store/add_to_cart/123 :controller => store :action => add_to_cart :id => 123
None
None
None
None
None
None
None
None
Migrations
database neutral description of a change reversible managed in source
control alongside app
None
ActiveRecord
ActiveRecord design pattern object relational mapper vender neutral data layer
db to ruby type translation pre-built to handle many common scenarios
Model = Singular Table = Plural
Model = Singular Customer => Customers Person => People Table
= Plural
None
None
Testing
automated unit tests automated functional tests automated integration tests fixtures
for sample data
None
None
Getting Started
None
Windows: 1. download from RubyForge.org 2. gem install rails --include-dependencies
3. ready to run
Windows: 1. download from RubyForge.org 2. gem install rails --include-dependencies
3. ready to run OS X Leopard 1. ready to run
Sample
What we Saw database migrations Model-View-Controller ActiveRecord scaffolding validation
Criticisms
None
performance
performance constraints
performance constraints maturity
Questions? @michaeldwan
[email protected]