SlideShare a Scribd company logo
R U B Y O N R A I L S I N T R O D U C T I O N
W I L L A R D S T E R L I N G
F R A M E W O R K
L E T ’ S G E T S T AR T E D
E X E R C I S E 1 - D E V E L O P M E N T
E N V I R O N M E N T
• Follow Exercise 1 README -
https://github.com/will-
sterling/RAILS-
Intro/blob/exercise1/README.
md
R A I L S C O M M A N D L I N E
E X E R C I S E 2 -
C R E A T E A R A I L S
A P P
• Follow Exercise 2 README -
https://github.com/will-
sterling/RAILS-
Intro/blob/exercise2/README.
md
M V C : M O D E L - V I E W - C O N T R O L L E R
M O D E L V I E W
C O N T R O L
L E R
V I E W S
R O U T E S
E X E R C I S E 3 -
H E L L O W O R L D
• Follow Exercise 3 README -
https://github.com/will-
sterling/RAILS-
Intro/blob/exercise3/README.
md
E X E R C I S E 4 -
H E R O K U
• Follow Exercise 4 README -
https://github.com/will-
sterling/RAILS-
Intro/blob/exercise4/README.
md
M V C : M O D E L - V I E W - C O N T R O L L E R
M O D E L V I E W
C O N T R O L
L E R
A C T I V E R E C O R D
M O D E L
C O N T R O L E R
E X E R C I S E 5 -
F O L L O W T H E G U I D E
• http://guides.rubyonrails.org/
Getting Started - Chapter 5
• When done push to Heroku
F I N I S H T H E G U I D E , L E A R N &
C R E A T E
G O F O R T H
R E S O U R C E S
• sterling.codes
• http://guides.rubyonrails.org
• http://rubyonrails.org/community
• https://devcenter.heroku.com/articles/getting-started-with-ruby
• @will-sterling

More Related Content

Viewers also liked

Boulder dev ops-meetup-11-2012-rundeck
Boulder dev ops-meetup-11-2012-rundeckBoulder dev ops-meetup-11-2012-rundeck
Boulder dev ops-meetup-11-2012-rundeck
Will Sterling
 
Linux performance
Linux performanceLinux performance
Linux performance
Will Sterling
 
Chef onlinuxonpower
Chef onlinuxonpowerChef onlinuxonpower
Chef onlinuxonpower
Moya Brannan
 
Using OpenStack for Cloud Management - Winning Strategies with Ostrato
Using OpenStack for Cloud Management - Winning Strategies with OstratoUsing OpenStack for Cloud Management - Winning Strategies with Ostrato
Using OpenStack for Cloud Management - Winning Strategies with Ostrato
Ostrato
 
Chef
ChefChef
Adversity: Good for software
Adversity: Good for softwareAdversity: Good for software
Adversity: Good for software
James Wickett
 
Be Mean to Your Code
Be Mean to Your CodeBe Mean to Your Code
Be Mean to Your Code
James Wickett
 
FPGA MeetUp
FPGA MeetUpFPGA MeetUp
FPGA MeetUp
Moya Brannan
 
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Ostrato
 
Lvm advanced topics
Lvm advanced topicsLvm advanced topics
Lvm advanced topics
Will Sterling
 
Chef training Day4
Chef training Day4Chef training Day4
Chef training Day4
Andriy Samilyak
 

Viewers also liked (11)

Boulder dev ops-meetup-11-2012-rundeck
Boulder dev ops-meetup-11-2012-rundeckBoulder dev ops-meetup-11-2012-rundeck
Boulder dev ops-meetup-11-2012-rundeck
 
Linux performance
Linux performanceLinux performance
Linux performance
 
Chef onlinuxonpower
Chef onlinuxonpowerChef onlinuxonpower
Chef onlinuxonpower
 
Using OpenStack for Cloud Management - Winning Strategies with Ostrato
Using OpenStack for Cloud Management - Winning Strategies with OstratoUsing OpenStack for Cloud Management - Winning Strategies with Ostrato
Using OpenStack for Cloud Management - Winning Strategies with Ostrato
 
Chef
ChefChef
Chef
 
Adversity: Good for software
Adversity: Good for softwareAdversity: Good for software
Adversity: Good for software
 
Be Mean to Your Code
Be Mean to Your CodeBe Mean to Your Code
Be Mean to Your Code
 
FPGA MeetUp
FPGA MeetUpFPGA MeetUp
FPGA MeetUp
 
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
 
Lvm advanced topics
Lvm advanced topicsLvm advanced topics
Lvm advanced topics
 
Chef training Day4
Chef training Day4Chef training Day4
Chef training Day4
 

Similar to Rails intro

Running episerver cms in the cloud
Running episerver cms in the cloudRunning episerver cms in the cloud
Running episerver cms in the cloud
Rajkumar Balakrishnan
 
Put a flag on it. A busy developer's guide to feature toggles.
Put a flag on it. A busy developer's guide to feature toggles.Put a flag on it. A busy developer's guide to feature toggles.
Put a flag on it. A busy developer's guide to feature toggles.
Mateusz Kwasniewski
 
Android Course - Lesson1
Android Course - Lesson1Android Course - Lesson1
Android Course - Lesson1
Callum Taylor
 
Android Course - Lesson6
 Android Course - Lesson6 Android Course - Lesson6
Android Course - Lesson6
Callum Taylor
 
Bemiss teacher share day
Bemiss teacher share dayBemiss teacher share day
Bemiss teacher share day
bemiss1982
 
Android Course - Lesson4
Android Course - Lesson4Android Course - Lesson4
Android Course - Lesson4
Callum Taylor
 
Upgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common PitfallsUpgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common Pitfalls
Platform9
 
Facilities for Agile
Facilities for AgileFacilities for Agile
Facilities for Agile
Pierre E. NEIS
 
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
Keita Bando
 
My Career in Coding and How I Transitioned My Career
My Career in Coding and How I Transitioned My CareerMy Career in Coding and How I Transitioned My Career
My Career in Coding and How I Transitioned My Career
Krishelle Hardson-Hurley, M.Ed
 

Similar to Rails intro (10)

Running episerver cms in the cloud
Running episerver cms in the cloudRunning episerver cms in the cloud
Running episerver cms in the cloud
 
Put a flag on it. A busy developer's guide to feature toggles.
Put a flag on it. A busy developer's guide to feature toggles.Put a flag on it. A busy developer's guide to feature toggles.
Put a flag on it. A busy developer's guide to feature toggles.
 
Android Course - Lesson1
Android Course - Lesson1Android Course - Lesson1
Android Course - Lesson1
 
Android Course - Lesson6
 Android Course - Lesson6 Android Course - Lesson6
Android Course - Lesson6
 
Bemiss teacher share day
Bemiss teacher share dayBemiss teacher share day
Bemiss teacher share day
 
Android Course - Lesson4
Android Course - Lesson4Android Course - Lesson4
Android Course - Lesson4
 
Upgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common PitfallsUpgrading OpenStack? Avoid these 3 Common Pitfalls
Upgrading OpenStack? Avoid these 3 Common Pitfalls
 
Facilities for Agile
Facilities for AgileFacilities for Agile
Facilities for Agile
 
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
ResearchGate - How do 'Social Networks for Scientists' Affect Libraries?
 
My Career in Coding and How I Transitioned My Career
My Career in Coding and How I Transitioned My CareerMy Career in Coding and How I Transitioned My Career
My Career in Coding and How I Transitioned My Career
 

Recently uploaded

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
YousufSait3
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
Massimo Artizzu
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
Rakesh Kumar R
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
GohKiangHock
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
ShulagnaSarkar2
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
TaghreedAltamimi
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
Karya Keeper
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
safelyiotech
 

Recently uploaded (20)

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Liberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptxLiberarsi dai framework con i Web Component.pptx
Liberarsi dai framework con i Web Component.pptx
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
What next after learning python programming basics
What next after learning python programming basicsWhat next after learning python programming basics
What next after learning python programming basics
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
SQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure MalaysiaSQL Accounting Software Brochure Malaysia
SQL Accounting Software Brochure Malaysia
 
14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision14 th Edition of International conference on computer vision
14 th Edition of International conference on computer vision
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
Safelyio Toolbox Talk Softwate & App (How To Digitize Safety Meetings)
 

Rails intro

  • 1. R U B Y O N R A I L S I N T R O D U C T I O N W I L L A R D S T E R L I N G
  • 2. F R A M E W O R K
  • 3. L E T ’ S G E T S T AR T E D E X E R C I S E 1 - D E V E L O P M E N T E N V I R O N M E N T • Follow Exercise 1 README - https://github.com/will- sterling/RAILS- Intro/blob/exercise1/README. md
  • 4. R A I L S C O M M A N D L I N E
  • 5. E X E R C I S E 2 - C R E A T E A R A I L S A P P • Follow Exercise 2 README - https://github.com/will- sterling/RAILS- Intro/blob/exercise2/README. md
  • 6. M V C : M O D E L - V I E W - C O N T R O L L E R M O D E L V I E W C O N T R O L L E R
  • 7. V I E W S
  • 8. R O U T E S
  • 9. E X E R C I S E 3 - H E L L O W O R L D • Follow Exercise 3 README - https://github.com/will- sterling/RAILS- Intro/blob/exercise3/README. md
  • 10. E X E R C I S E 4 - H E R O K U • Follow Exercise 4 README - https://github.com/will- sterling/RAILS- Intro/blob/exercise4/README. md
  • 11. M V C : M O D E L - V I E W - C O N T R O L L E R M O D E L V I E W C O N T R O L L E R
  • 12. A C T I V E R E C O R D M O D E L
  • 13. C O N T R O L E R
  • 14. E X E R C I S E 5 - F O L L O W T H E G U I D E • http://guides.rubyonrails.org/ Getting Started - Chapter 5 • When done push to Heroku
  • 15. F I N I S H T H E G U I D E , L E A R N & C R E A T E G O F O R T H
  • 16. R E S O U R C E S • sterling.codes • http://guides.rubyonrails.org • http://rubyonrails.org/community • https://devcenter.heroku.com/articles/getting-started-with-ruby • @will-sterling

Editor's Notes

  1. Introduce Yourself We will be learning about Ruby on Rails How to use a web IDE to build our project We will use GIT for revision control, sharing and publishing Heroku to host our app
  2. Ruby on Rails Is a web application framework Written in Ruby of course It does all of the common tasks or “infrastructure” that our common among web applications so you can focus on the unique aspects of the application you are building. “The RAILS Way”- CoC, DRY, MVC “Convention over configuration” or “strongly opinionated” Rails will look for your code in specific places in the project structure with out any configuration. So if you stick to convention you just need to stick code snippets in the correct place to make large changes. - hint at models and views but avoid deep discussion
  3. Just cover the basics of what each of these are. We will visit each later on and in the exercises.
  4. HTML/JS page templates presented to user Should only contain minimal code. e.x. looping through array to display list of data Should not contain business logic Template languages ERB:default, HAML
  5. rake routes config/routes.rb Operation on resource Method & URI Controller action Index (list) movies GET /movies index Read (show) existing movie GET /movies/: id show Display fill-in form for new movie GET /movies/ new new Create new movie from filled-in form POST /movies create Display form to edit existing movie GET /movies/: id/ edit edit Update movie from fill-in form PUT /movies/: id update Destroy existing movie DELETE /movies/: id destroy Discuss that the routes are RESTful Discuss the need for new and create.  New is only needed for interactive user facing web app.  API user sends all required data to create without calling new.
  6. We saw view earlier. Now we are going to talk about models and controllers.
  7. https://en.wikipedia.org/wiki/Active_record_pattern - “In software engineering, the active record pattern is an architectural pattern found in software that stores in-memory object data in relational databases. It was named by Martin Fowler in his 2003 book Patterns of Enterprise Application Architecture.[1] The interface of an object conforming to this pattern would include functions such as Insert, Update, and Delete, plus properties that correspond more or less directly to the columns in the underlying database table.” Serialize/Deserialize Data Provides methods of describing data relationships and access to data Provides methods for updating RDBMS Schema Manipulate, change, delete data
  8. Prepare data for Presentation Contain Business Logic Methods Matching CRUD operations
  9. Finish the RAILS Guide, getting started is just the beginning of the guide, there is in depth material on each topic we discussed today plus more. Make sure to read the Debugging chapter early, don’t wait till the end! Create your own side project! Put it on GitHub! Put it on Heroku! Hang out in IRC