SlideShare a Scribd company logo
1 of 30
Download to read offline
Intro to Web Dev
with Rails
Goals
● For those that know too much
○ Fill in the gaps
● For those that know too little
○ Brief introduction to the web
● For those that know nothing
○ Help facilitate communication
● For everyone
○ Rails
Syllabus
● What is the web?
● What is a web framework?
○ Why do we use them?
● What is a development environment?
● How to deploy a Rails application
○ Use a web based IDE to create a Rails app
○ Deploying our app to a platform service
What is the Web?
● HTTP
○ Hypertext Transfer Protocol
○ Send documents back and forth on the web
○ Among other things, defines a set of verbs
■ GET, POST, PUT, DELETE
● HTML
○ Hypertext Markup Language
● CSS
○ Cascading Style Sheets
● Hypertext
○ Text with references to more text (hyperlinks)
● Javascript
Okay...
● Internet Browser
○ Initiates a conversation via HTTP verb
● Server - Apache/Nginx/IIS
○ Receives request, replies with a response
● Browser
○ Receives response, in most cases HTML
○ Builds the "document" for display
○ Makes another request for style sheets (CSS)
○ Receive and apply CSS to render the page you see
Apache/Nginx/IIS
● Sits between the internet and your application
One step back...
Web Server Application
Request
Response
Request goes in, response comes out, you can't explain that!
Recap
Web Server Application
Request
Response
Framework
What is a Web Framework?
Web Server Application
Request
Response
Web Frameworks
● Websites share common functionality
○ Security and login
○ Routing requests to business logic
○ Accessing the database
○ Etc
● Application architecture
● Community
● Increased productivity
Some Rails History
● David Heinemeier Hansson
● 37signals, 2004
● October 2007, Mac OSX v10.5
"Rails was extracted from my work on
Basecamp—a project collaboration
tool from 37signals. So it was
motivated by needs, not predictions.
And I believe that’s a big part of why
we’re currently enjoying such
success. I didn’t try to imagine what
some programmers might need for a
fantasy job. I just built what I needed
to get my work done with a smile."
Why Rails?
● It is buzz heavy
● Major milestone 4.0
● Ruby is a fun language
● Neutral
Who uses Rails?
WS Packaging, 37signals, Github, Shopify,
Scribd, Twitter, Disney, Hulu, Yellow Pages,
Living Social, Sortfolio, Heroku, Groupon,
Spree Commerce, Justin TV, New York Jets,
Lumosity, Penny Arcade, Funny or Die,
Soundcloud, Mixbook
What is a development environment?
Typically, all software necessary to develop an application
● Text editor
● Database
● Test runner
● Programming language
● Image manipulation
● Web browser(s)
● Visual Studio, Sublime Text
● Sqlite3, SQL Server
● NUnit, RSpec
● ASP.NET, Ruby, Java
● Photoshop, Gimp
● Internet Explorer, Firefox
Nitrous.io
Development environment in 60 seconds
http://nitrous.io
Environment setup and application creation
Heroku
"Ship it or it didn't happen."
Cloud Application Platform
http://heroku.com
What do we know?
● The web is built on HTTP and hypermedia
● Web servers send requests to web
applications
● Web applications perform business logic and
communicate with other services such as
databases
Conclusion
● Rails is a web framework built on
Ruby
● We used Nitrous.io to spin up a
development environment to avoid
initial setup steps and get running
quickly
● We deployed a live web application
to the platform service Heroku
What's next?
● Keep your Nitrous.io account and box!
● Ruby / Dynamic programming
● Version control
● Bits and pieces of HTML/CSS
● Model, View, Controller
● Mapping objects to the database
● Routing requests to controllers
● Testing, Debugging
● What would you like to see?
Send me feedback zachary.gohr@gmail.com
Scaffolding a resource

More Related Content

What's hot

TranslateKarate Pitch at Startup Weekend Kosice
TranslateKarate Pitch at Startup Weekend KosiceTranslateKarate Pitch at Startup Weekend Kosice
TranslateKarate Pitch at Startup Weekend Kosice
translatekarate
 
JavaScript Jump Start
JavaScript Jump StartJavaScript Jump Start
JavaScript Jump Start
Haim Michael
 
T-Dose: Manage your digital assets with MediaMosa
T-Dose: Manage your digital assets with MediaMosaT-Dose: Manage your digital assets with MediaMosa
T-Dose: Manage your digital assets with MediaMosa
Chris Flink
 
Django on app engine
Django on app engineDjango on app engine
Django on app engine
benpotato
 

What's hot (20)

Efficient, Error-Free Drupal Development with JS Build Tools
Efficient, Error-Free Drupal Development with JS Build ToolsEfficient, Error-Free Drupal Development with JS Build Tools
Efficient, Error-Free Drupal Development with JS Build Tools
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How
 
3 Gifts My Users Gave Me - Alexandra Draghici - WordCamp Europe 2017
3 Gifts My Users Gave Me - Alexandra Draghici - WordCamp Europe 20173 Gifts My Users Gave Me - Alexandra Draghici - WordCamp Europe 2017
3 Gifts My Users Gave Me - Alexandra Draghici - WordCamp Europe 2017
 
WordPress Internationalization, Localization and Multilingual - Do It Right
WordPress Internationalization, Localization and Multilingual - Do It RightWordPress Internationalization, Localization and Multilingual - Do It Right
WordPress Internationalization, Localization and Multilingual - Do It Right
 
Open Lesson How We Built Guide Me Right - Open Campus Tiscali
Open Lesson How We Built Guide Me Right - Open Campus TiscaliOpen Lesson How We Built Guide Me Right - Open Campus Tiscali
Open Lesson How We Built Guide Me Right - Open Campus Tiscali
 
Wade.Go Introduction Speech - SFD HCMC 2014
Wade.Go Introduction Speech - SFD HCMC 2014Wade.Go Introduction Speech - SFD HCMC 2014
Wade.Go Introduction Speech - SFD HCMC 2014
 
C4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web FrameworkC4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web Framework
 
TranslateKarate Pitch at Startup Weekend Kosice
TranslateKarate Pitch at Startup Weekend KosiceTranslateKarate Pitch at Startup Weekend Kosice
TranslateKarate Pitch at Startup Weekend Kosice
 
Plone Intranet under the hood
Plone Intranet under the hoodPlone Intranet under the hood
Plone Intranet under the hood
 
JavaScript Jump Start
JavaScript Jump StartJavaScript Jump Start
JavaScript Jump Start
 
wp cli- don’t fear the command line
wp cli- don’t fear the command linewp cli- don’t fear the command line
wp cli- don’t fear the command line
 
T-Dose: Manage your digital assets with MediaMosa
T-Dose: Manage your digital assets with MediaMosaT-Dose: Manage your digital assets with MediaMosa
T-Dose: Manage your digital assets with MediaMosa
 
Collaborative online tools Net2 presentation
Collaborative online tools Net2 presentationCollaborative online tools Net2 presentation
Collaborative online tools Net2 presentation
 
Node.js Jump Start
Node.js Jump StartNode.js Jump Start
Node.js Jump Start
 
Building plugins like a pro
Building plugins like a proBuilding plugins like a pro
Building plugins like a pro
 
Making sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developersMaking sense of the front-end, for PHP developers
Making sense of the front-end, for PHP developers
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&Cordova
 
Django on app engine
Django on app engineDjango on app engine
Django on app engine
 
Bruno Skvorc - The many ways to contribute to open source
Bruno Skvorc - The many ways to contribute to open sourceBruno Skvorc - The many ways to contribute to open source
Bruno Skvorc - The many ways to contribute to open source
 
Asset Management and Drupal
Asset Management and DrupalAsset Management and Drupal
Asset Management and Drupal
 

Viewers also liked

Slide share test
Slide share testSlide share test
Slide share test
littlecip87
 
Steve jobs 10 lessons we may learn
Steve jobs 10 lessons we may learnSteve jobs 10 lessons we may learn
Steve jobs 10 lessons we may learn
Mohamed Nour El Din
 
Workshop aquisitie rabobank
Workshop aquisitie rabobankWorkshop aquisitie rabobank
Workshop aquisitie rabobank
LeonVaessen
 
Sr Seminar Kinesiology
Sr Seminar KinesiologySr Seminar Kinesiology
Sr Seminar Kinesiology
annbee
 
prudential financial Proxy Statements 2004
 prudential financial  Proxy Statements 2004 prudential financial  Proxy Statements 2004
prudential financial Proxy Statements 2004
finance8
 
Sakai3白皮书(中文版)
Sakai3白皮书(中文版)Sakai3白皮书(中文版)
Sakai3白皮书(中文版)
jiali zhang
 

Viewers also liked (20)

Einfurung in media
Einfurung in mediaEinfurung in media
Einfurung in media
 
Slide share test
Slide share testSlide share test
Slide share test
 
METODOLOGIA - Metodologia de Cálculo do IDHM
METODOLOGIA - Metodologia de Cálculo do IDHMMETODOLOGIA - Metodologia de Cálculo do IDHM
METODOLOGIA - Metodologia de Cálculo do IDHM
 
76insights - measuring what matters to content marketers
76insights - measuring what matters to content marketers76insights - measuring what matters to content marketers
76insights - measuring what matters to content marketers
 
Imagen 1
Imagen 1Imagen 1
Imagen 1
 
Dobré texty na dobrom webe
Dobré texty na dobrom webeDobré texty na dobrom webe
Dobré texty na dobrom webe
 
Steve jobs 10 lessons we may learn
Steve jobs 10 lessons we may learnSteve jobs 10 lessons we may learn
Steve jobs 10 lessons we may learn
 
Eunis
EunisEunis
Eunis
 
Workshop aquisitie rabobank
Workshop aquisitie rabobankWorkshop aquisitie rabobank
Workshop aquisitie rabobank
 
The Global Rise of Smartphonatics
The Global Rise of Smartphonatics The Global Rise of Smartphonatics
The Global Rise of Smartphonatics
 
Broadband Florida Grant Projects Briefing Abstract
Broadband Florida Grant Projects Briefing AbstractBroadband Florida Grant Projects Briefing Abstract
Broadband Florida Grant Projects Briefing Abstract
 
The Conversational Sweetspot
The Conversational SweetspotThe Conversational Sweetspot
The Conversational Sweetspot
 
Creating Your Social Content Engine: SearchExchange 2013
Creating Your Social Content Engine: SearchExchange 2013Creating Your Social Content Engine: SearchExchange 2013
Creating Your Social Content Engine: SearchExchange 2013
 
Sr Seminar Kinesiology
Sr Seminar KinesiologySr Seminar Kinesiology
Sr Seminar Kinesiology
 
Cope
CopeCope
Cope
 
prudential financial Proxy Statements 2004
 prudential financial  Proxy Statements 2004 prudential financial  Proxy Statements 2004
prudential financial Proxy Statements 2004
 
Mixed Team Tournament Pairing: Round #1
Mixed Team Tournament Pairing: Round #1Mixed Team Tournament Pairing: Round #1
Mixed Team Tournament Pairing: Round #1
 
Febrero
FebreroFebrero
Febrero
 
Sakai3白皮书(中文版)
Sakai3白皮书(中文版)Sakai3白皮书(中文版)
Sakai3白皮书(中文版)
 
OTC Highlights 2013
OTC Highlights 2013OTC Highlights 2013
OTC Highlights 2013
 

Similar to Intro to web

Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011
Ted Husted
 
Couch DB/PouchDB approach for hybrid mobile applications
Couch DB/PouchDB approach for hybrid mobile applicationsCouch DB/PouchDB approach for hybrid mobile applications
Couch DB/PouchDB approach for hybrid mobile applications
Ihor Malytskyi
 

Similar to Intro to web (20)

Introduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceIntroduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital Workplace
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Node.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdfNode.js vs PHP, What should SMBs prefer for web development.pdf
Node.js vs PHP, What should SMBs prefer for web development.pdf
 
From NodeJS to Rust
From NodeJS to RustFrom NodeJS to Rust
From NodeJS to Rust
 
Single Page Applications in Drupal
Single Page Applications in DrupalSingle Page Applications in Drupal
Single Page Applications in Drupal
 
Intro to web development
Intro to web developmentIntro to web development
Intro to web development
 
The Characteristics of a Successful SPA
The Characteristics of a Successful SPAThe Characteristics of a Successful SPA
The Characteristics of a Successful SPA
 
Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011Open Source Secret Sauce - Lugor Sep 2011
Open Source Secret Sauce - Lugor Sep 2011
 
Cross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkitCross-platform Desktop application with AngularJS and build with Node-webkit
Cross-platform Desktop application with AngularJS and build with Node-webkit
 
Dynatech presentation for TSI Career Day
Dynatech presentation for TSI Career DayDynatech presentation for TSI Career Day
Dynatech presentation for TSI Career Day
 
Web Development
Web DevelopmentWeb Development
Web Development
 
Ice dec05-04-wan leung
Ice dec05-04-wan leungIce dec05-04-wan leung
Ice dec05-04-wan leung
 
Beyond the Hype: 4 Years of Go in Production
Beyond the Hype: 4 Years of Go in ProductionBeyond the Hype: 4 Years of Go in Production
Beyond the Hype: 4 Years of Go in Production
 
How Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your ProjectHow Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your Project
 
Go Revel Gooo...
Go Revel Gooo...Go Revel Gooo...
Go Revel Gooo...
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
 
Go with the Flow - A Guide to a WordPress Workflow
Go with the Flow - A Guide to a WordPress WorkflowGo with the Flow - A Guide to a WordPress Workflow
Go with the Flow - A Guide to a WordPress Workflow
 
Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014
 
Couch DB/PouchDB approach for hybrid mobile applications
Couch DB/PouchDB approach for hybrid mobile applicationsCouch DB/PouchDB approach for hybrid mobile applications
Couch DB/PouchDB approach for hybrid mobile applications
 
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdfTop 8 Powerful Tools Developers Use for Laravel Web Development.pdf
Top 8 Powerful Tools Developers Use for Laravel Web Development.pdf
 

Recently uploaded

Recently uploaded (20)

Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 

Intro to web

  • 1. Intro to Web Dev with Rails
  • 2.
  • 3. Goals ● For those that know too much ○ Fill in the gaps ● For those that know too little ○ Brief introduction to the web ● For those that know nothing ○ Help facilitate communication ● For everyone ○ Rails
  • 4. Syllabus ● What is the web? ● What is a web framework? ○ Why do we use them? ● What is a development environment? ● How to deploy a Rails application ○ Use a web based IDE to create a Rails app ○ Deploying our app to a platform service
  • 5. What is the Web? ● HTTP ○ Hypertext Transfer Protocol ○ Send documents back and forth on the web ○ Among other things, defines a set of verbs ■ GET, POST, PUT, DELETE ● HTML ○ Hypertext Markup Language ● CSS ○ Cascading Style Sheets ● Hypertext ○ Text with references to more text (hyperlinks) ● Javascript
  • 6. Okay... ● Internet Browser ○ Initiates a conversation via HTTP verb ● Server - Apache/Nginx/IIS ○ Receives request, replies with a response ● Browser ○ Receives response, in most cases HTML ○ Builds the "document" for display ○ Makes another request for style sheets (CSS) ○ Receive and apply CSS to render the page you see
  • 7. Apache/Nginx/IIS ● Sits between the internet and your application One step back... Web Server Application Request Response Request goes in, response comes out, you can't explain that!
  • 9. Framework What is a Web Framework? Web Server Application Request Response
  • 10. Web Frameworks ● Websites share common functionality ○ Security and login ○ Routing requests to business logic ○ Accessing the database ○ Etc ● Application architecture ● Community ● Increased productivity
  • 11. Some Rails History ● David Heinemeier Hansson ● 37signals, 2004 ● October 2007, Mac OSX v10.5 "Rails was extracted from my work on Basecamp—a project collaboration tool from 37signals. So it was motivated by needs, not predictions. And I believe that’s a big part of why we’re currently enjoying such success. I didn’t try to imagine what some programmers might need for a fantasy job. I just built what I needed to get my work done with a smile."
  • 12. Why Rails? ● It is buzz heavy ● Major milestone 4.0 ● Ruby is a fun language ● Neutral
  • 13. Who uses Rails? WS Packaging, 37signals, Github, Shopify, Scribd, Twitter, Disney, Hulu, Yellow Pages, Living Social, Sortfolio, Heroku, Groupon, Spree Commerce, Justin TV, New York Jets, Lumosity, Penny Arcade, Funny or Die, Soundcloud, Mixbook
  • 14. What is a development environment? Typically, all software necessary to develop an application ● Text editor ● Database ● Test runner ● Programming language ● Image manipulation ● Web browser(s) ● Visual Studio, Sublime Text ● Sqlite3, SQL Server ● NUnit, RSpec ● ASP.NET, Ruby, Java ● Photoshop, Gimp ● Internet Explorer, Firefox
  • 15. Nitrous.io Development environment in 60 seconds http://nitrous.io
  • 16.
  • 17.
  • 18.
  • 19. Environment setup and application creation
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. Heroku "Ship it or it didn't happen." Cloud Application Platform http://heroku.com
  • 25.
  • 26.
  • 27. What do we know? ● The web is built on HTTP and hypermedia ● Web servers send requests to web applications ● Web applications perform business logic and communicate with other services such as databases
  • 28. Conclusion ● Rails is a web framework built on Ruby ● We used Nitrous.io to spin up a development environment to avoid initial setup steps and get running quickly ● We deployed a live web application to the platform service Heroku
  • 29. What's next? ● Keep your Nitrous.io account and box! ● Ruby / Dynamic programming ● Version control ● Bits and pieces of HTML/CSS ● Model, View, Controller ● Mapping objects to the database ● Routing requests to controllers ● Testing, Debugging ● What would you like to see? Send me feedback zachary.gohr@gmail.com