SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
CRAFTING A RUBY ON RAILS
COURSE FOR DEVELOPERS
 NYC.RB / MARCH 2012




DANIEL DOUBROVKINE ( A K A DB .)
#NYCRB @DBLOCKDOTORG
HOW DID YOU LEARN
RUBY-ON-RAILS?
                                                    read blogs
              read a book
                                went to college


            How do you classroom
                     in a
                          teach?
 listened to a podcast
                                paired on the job
                                                      followed a tutorial
      hacked with friends

                                        joined a community

            took an online course
A GOOD CLASS HAS NO
MORE THAN 15 METHODS




   Nursery
             Algebra 1 @ UniGE
   10 Kids
               300 Students




         15
CAP
                 Availability and Frequency




                       8 Weeks
                    Twice a Week
                        6-8pm
                    + Office Hours
 Content Depth                            Push and Pull
I STILL REMEMBER
MY 1ST GRADE TEACHER
  Learns Well as a Group   Needs Special Attention




                  Instructor
              Teaching Assistant
                Class Producer
               Pivots + Guests
COOL KIDS
SIT IN THE BACK
PRIOR EXPERIENCE
REQUIRED
• Daily Practice
  Fluent With an Editor and Shell

• Basics of CS
  Algorithms & Structures

• Some Web Programming
  HTTP Fundamentals
WHAT DO I WANT OUT OF IT?
•   RoR Experience w/ Instructor
    Build an Application From Scratch

•   Demonstrable Project
    Show Prospective Employers

•   Meet People, Make Connections
    First Step Into NYC Community

•   Career Development
    Prepare The Next Transition
DO WE REALLY NEED A NEW
CURRICULUM?
• I Learned with a Tutorial
  Copy and Paste
  Hit a Wall
  Ask Google

• I Learned with the Help of My Team
  Pickup a Task
  Hit a Wall
  Ask Colleague




     What if I had a
   dedicated mentor?
BUILDING RAILS
BOTTOM UP
1.   Git Developer Workflow
     topic branches

2.   Ruby Basics
     hashes and maps

3.   Rack                           Pivotal Tracker
     static pages

4.   Rails MVC
     assemble a rails application

5.   RSpec
     tests first, then BDD

6.   Ruby Meta Programming
     lambda and method_missing



             Lecture to Homework to Practice
BUILDING A SYSTEM
IN RAILS
1.   ActiveRecord
     postgresql                      Fabricator
2.   Rendering in Rails              Devise
     haml, erb, sass
                                     Twitter Bootstrap
3.   Authentication                  Shoulda
     home grown, clearance, devise
                                     Capybara
4.   RESTful APIs
     controllers, sinatra-style      DatabaseCleaner
                                     FFaker
5.   NoSQL
     mongodb

6.   Caching
     rails
FINAL PROJECT @ 4 WEEKS

     Ruby-on-Rails Stashboard Clone
FINAL PROJECT DEMOS
James Lin jameslin101@gmail.com
  https://github.com/jameslin101/stashboard
  http://linsanity-stashboard.herokuapp.com


Daniel Harcsztark      dan@fetchly.com
  https://github.com/MedText/stashfu
  http://stashfu.com

Shaan Batra sb1752@gmail.com
Joshua Laroff jlaroff@gmail.com
Peter To pt9386@gmail.com
  https://github.com/generalassembly/boardroom
  http://evening-robot-1631.herokuapp.com

+ a few other Stashboard clones
LOTS OF ROOM FOR
IMPROVEMENT
• Preparing for Next Lecture
  Give Reading Material & Prerequisites

• Follow Coding During Lecture
  Less Fierce Typing

• Explicit Learning Objectives
  Better Documented Assignments

• Clear Roadmap
  How The Curriculum Fits Together

• More On Practices Around Rails
  Thinking Deliberately About The Development Process
OPEN-SOURCE
   EVERYTHING
   https://github.com/generalassembly/ga-ruby-on-rails-for-devs




text RFD to 83432 | follow @ga and @dblockdotorg

Weitere ähnliche Inhalte

Was ist angesagt? (6)

Presidential Webquest
Presidential Webquest Presidential Webquest
Presidential Webquest
 
How To Pass A Ruby Code Test
How To Pass A Ruby Code TestHow To Pass A Ruby Code Test
How To Pass A Ruby Code Test
 
Agile
AgileAgile
Agile
 
רועי פלד
רועי פלדרועי פלד
רועי פלד
 
Introduction to web design
Introduction to web designIntroduction to web design
Introduction to web design
 
Classroom Website w/ Google Sites
Classroom Website w/ Google SitesClassroom Website w/ Google Sites
Classroom Website w/ Google Sites
 

Andere mochten auch (6)

Product Development 101
Product Development 101Product Development 101
Product Development 101
 
7VAEzbHQZwQWoxmc4viG
7VAEzbHQZwQWoxmc4viG7VAEzbHQZwQWoxmc4viG
7VAEzbHQZwQWoxmc4viG
 
Building Application with Ruby On Rails Framework
Building Application with Ruby On Rails FrameworkBuilding Application with Ruby On Rails Framework
Building Application with Ruby On Rails Framework
 
Is Hadoop a Necessity for Data Science
Is Hadoop a Necessity for Data ScienceIs Hadoop a Necessity for Data Science
Is Hadoop a Necessity for Data Science
 
Shell Annual Report 2015
Shell Annual Report 2015Shell Annual Report 2015
Shell Annual Report 2015
 
Nasdaq CTO Summit: Inspiring Team Leads to Give Away Legos
Nasdaq CTO Summit: Inspiring Team Leads to Give Away LegosNasdaq CTO Summit: Inspiring Team Leads to Give Away Legos
Nasdaq CTO Summit: Inspiring Team Leads to Give Away Legos
 

Ähnlich wie Crafting a Ruby-on-Rails Course for Developers

What I Learned at Open Hack Naperville
What I Learned at Open Hack NapervilleWhat I Learned at Open Hack Naperville
What I Learned at Open Hack Naperville
Kevin Davis
 

Ähnlich wie Crafting a Ruby-on-Rails Course for Developers (20)

Untangling the web week1
Untangling the web week1Untangling the web week1
Untangling the web week1
 
Becoming a more productive Rails Developer
Becoming a more productive Rails DeveloperBecoming a more productive Rails Developer
Becoming a more productive Rails Developer
 
Maintaining a big open source project: lessons learned
Maintaining a big open source project: lessons learnedMaintaining a big open source project: lessons learned
Maintaining a big open source project: lessons learned
 
My experience of Ruby Education in Taiwan
My experience of Ruby Education in TaiwanMy experience of Ruby Education in Taiwan
My experience of Ruby Education in Taiwan
 
Untangling the web11
Untangling the web11Untangling the web11
Untangling the web11
 
DOD Presentation V2
DOD Presentation V2DOD Presentation V2
DOD Presentation V2
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQL
 
Becoming a more Productive Rails Developer
Becoming a more Productive Rails DeveloperBecoming a more Productive Rails Developer
Becoming a more Productive Rails Developer
 
Untangling spring week1
Untangling spring week1Untangling spring week1
Untangling spring week1
 
Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Untangling - fall2017 - week 7
Untangling - fall2017 - week 7
 
Experience Converting from Ruby to Scala
Experience Converting from Ruby to ScalaExperience Converting from Ruby to Scala
Experience Converting from Ruby to Scala
 
Glogster 2 23-2012
Glogster 2 23-2012Glogster 2 23-2012
Glogster 2 23-2012
 
What I Learned at Open Hack Naperville
What I Learned at Open Hack NapervilleWhat I Learned at Open Hack Naperville
What I Learned at Open Hack Naperville
 
What would your own version of Ruby look like?
What would your own version of Ruby look like?What would your own version of Ruby look like?
What would your own version of Ruby look like?
 
MongoDB World 2019: A Tale of Two Use Cases: Innovative MongoDB Solutions for...
MongoDB World 2019: A Tale of Two Use Cases: Innovative MongoDB Solutions for...MongoDB World 2019: A Tale of Two Use Cases: Innovative MongoDB Solutions for...
MongoDB World 2019: A Tale of Two Use Cases: Innovative MongoDB Solutions for...
 
Technical Mentoring, What works and not
Technical Mentoring, What works and notTechnical Mentoring, What works and not
Technical Mentoring, What works and not
 
10 things you should know before learning ruby or rails
10 things you should know before learning ruby or rails10 things you should know before learning ruby or rails
10 things you should know before learning ruby or rails
 
Building Better FLOSS Community Relationships @ FB
Building Better  FLOSS Community Relationships @ FBBuilding Better  FLOSS Community Relationships @ FB
Building Better FLOSS Community Relationships @ FB
 
Drupal 8: Huge wins, a Bigger Community, and why you (and I) will Love it
Drupal 8: Huge wins, a Bigger Community, and why you (and I) will Love itDrupal 8: Huge wins, a Bigger Community, and why you (and I) will Love it
Drupal 8: Huge wins, a Bigger Community, and why you (and I) will Love it
 
A tale of Two Passions
A tale of Two PassionsA tale of Two Passions
A tale of Two Passions
 

Mehr von Daniel Doubrovkine

GeneralAssemb.ly Summer Program: Tech from the Ground Up
GeneralAssemb.ly Summer Program: Tech from the Ground UpGeneralAssemb.ly Summer Program: Tech from the Ground Up
GeneralAssemb.ly Summer Program: Tech from the Ground Up
Daniel Doubrovkine
 

Mehr von Daniel Doubrovkine (20)

The Future of Art @ Worlds Fair Nano
The Future of Art @ Worlds Fair NanoThe Future of Art @ Worlds Fair Nano
The Future of Art @ Worlds Fair Nano
 
Open-Source by Default, UN Community.camp
Open-Source by Default, UN Community.campOpen-Source by Default, UN Community.camp
Open-Source by Default, UN Community.camp
 
Your First Slack Ruby Bot
Your First Slack Ruby BotYour First Slack Ruby Bot
Your First Slack Ruby Bot
 
Single Sign-On with Waffle
Single Sign-On with WaffleSingle Sign-On with Waffle
Single Sign-On with Waffle
 
How it All Goes Down
How it All Goes DownHow it All Goes Down
How it All Goes Down
 
Taking Over Open Source Projects @ GoGaRuCo 2014
Taking Over Open Source Projects @ GoGaRuCo 2014Taking Over Open Source Projects @ GoGaRuCo 2014
Taking Over Open Source Projects @ GoGaRuCo 2014
 
Mentoring Engineers & Humans
Mentoring Engineers & HumansMentoring Engineers & Humans
Mentoring Engineers & Humans
 
Tiling and Zooming ASCII Art @ iOSoho
Tiling and Zooming ASCII Art @ iOSohoTiling and Zooming ASCII Art @ iOSoho
Tiling and Zooming ASCII Art @ iOSoho
 
Artsy ♥ ASCII ART
Artsy ♥ ASCII ARTArtsy ♥ ASCII ART
Artsy ♥ ASCII ART
 
The Other Side of Your Interview
The Other Side of Your InterviewThe Other Side of Your Interview
The Other Side of Your Interview
 
Hiring Engineers (the Artsy Way)
Hiring Engineers (the Artsy Way)Hiring Engineers (the Artsy Way)
Hiring Engineers (the Artsy Way)
 
Mentoring 101 - the Artsy way
Mentoring 101 - the Artsy wayMentoring 101 - the Artsy way
Mentoring 101 - the Artsy way
 
Building and Scaling a Test Driven Culture
Building and Scaling a Test Driven CultureBuilding and Scaling a Test Driven Culture
Building and Scaling a Test Driven Culture
 
Introducing Remote Install Framework
Introducing Remote Install FrameworkIntroducing Remote Install Framework
Introducing Remote Install Framework
 
HackYale 0-60 in Startup Tech
HackYale 0-60 in Startup TechHackYale 0-60 in Startup Tech
HackYale 0-60 in Startup Tech
 
Taming the Testing Beast - AgileDC 2012
Taming the Testing Beast - AgileDC 2012Taming the Testing Beast - AgileDC 2012
Taming the Testing Beast - AgileDC 2012
 
GeneralAssemb.ly Summer Program: Tech from the Ground Up
GeneralAssemb.ly Summer Program: Tech from the Ground UpGeneralAssemb.ly Summer Program: Tech from the Ground Up
GeneralAssemb.ly Summer Program: Tech from the Ground Up
 
Making Agile Choices in Software Technology
Making Agile Choices in Software TechnologyMaking Agile Choices in Software Technology
Making Agile Choices in Software Technology
 
From Zero to Mongo, Art.sy Experience w/ MongoDB
From Zero to Mongo, Art.sy Experience w/ MongoDBFrom Zero to Mongo, Art.sy Experience w/ MongoDB
From Zero to Mongo, Art.sy Experience w/ MongoDB
 
Graduating to Jenkins CI for Ruby(-on-Rails) Teams
Graduating to Jenkins CI for Ruby(-on-Rails) TeamsGraduating to Jenkins CI for Ruby(-on-Rails) Teams
Graduating to Jenkins CI for Ruby(-on-Rails) Teams
 

Kürzlich hochgeladen

Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
ssuserdda66b
 

Kürzlich hochgeladen (20)

Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 

Crafting a Ruby-on-Rails Course for Developers

  • 1. CRAFTING A RUBY ON RAILS COURSE FOR DEVELOPERS NYC.RB / MARCH 2012 DANIEL DOUBROVKINE ( A K A DB .) #NYCRB @DBLOCKDOTORG
  • 2. HOW DID YOU LEARN RUBY-ON-RAILS? read blogs read a book went to college How do you classroom in a teach? listened to a podcast paired on the job followed a tutorial hacked with friends joined a community took an online course
  • 3. A GOOD CLASS HAS NO MORE THAN 15 METHODS Nursery Algebra 1 @ UniGE 10 Kids 300 Students 15
  • 4. CAP Availability and Frequency 8 Weeks Twice a Week 6-8pm + Office Hours Content Depth Push and Pull
  • 5. I STILL REMEMBER MY 1ST GRADE TEACHER Learns Well as a Group Needs Special Attention Instructor Teaching Assistant Class Producer Pivots + Guests
  • 6. COOL KIDS SIT IN THE BACK
  • 7. PRIOR EXPERIENCE REQUIRED • Daily Practice Fluent With an Editor and Shell • Basics of CS Algorithms & Structures • Some Web Programming HTTP Fundamentals
  • 8. WHAT DO I WANT OUT OF IT? • RoR Experience w/ Instructor Build an Application From Scratch • Demonstrable Project Show Prospective Employers • Meet People, Make Connections First Step Into NYC Community • Career Development Prepare The Next Transition
  • 9. DO WE REALLY NEED A NEW CURRICULUM? • I Learned with a Tutorial Copy and Paste Hit a Wall Ask Google • I Learned with the Help of My Team Pickup a Task Hit a Wall Ask Colleague What if I had a dedicated mentor?
  • 10. BUILDING RAILS BOTTOM UP 1. Git Developer Workflow topic branches 2. Ruby Basics hashes and maps 3. Rack Pivotal Tracker static pages 4. Rails MVC assemble a rails application 5. RSpec tests first, then BDD 6. Ruby Meta Programming lambda and method_missing Lecture to Homework to Practice
  • 11. BUILDING A SYSTEM IN RAILS 1. ActiveRecord postgresql Fabricator 2. Rendering in Rails Devise haml, erb, sass Twitter Bootstrap 3. Authentication Shoulda home grown, clearance, devise Capybara 4. RESTful APIs controllers, sinatra-style DatabaseCleaner FFaker 5. NoSQL mongodb 6. Caching rails
  • 12. FINAL PROJECT @ 4 WEEKS Ruby-on-Rails Stashboard Clone
  • 13. FINAL PROJECT DEMOS James Lin jameslin101@gmail.com https://github.com/jameslin101/stashboard http://linsanity-stashboard.herokuapp.com Daniel Harcsztark dan@fetchly.com https://github.com/MedText/stashfu http://stashfu.com Shaan Batra sb1752@gmail.com Joshua Laroff jlaroff@gmail.com Peter To pt9386@gmail.com https://github.com/generalassembly/boardroom http://evening-robot-1631.herokuapp.com + a few other Stashboard clones
  • 14. LOTS OF ROOM FOR IMPROVEMENT • Preparing for Next Lecture Give Reading Material & Prerequisites • Follow Coding During Lecture Less Fierce Typing • Explicit Learning Objectives Better Documented Assignments • Clear Roadmap How The Curriculum Fits Together • More On Practices Around Rails Thinking Deliberately About The Development Process
  • 15. OPEN-SOURCE EVERYTHING https://github.com/generalassembly/ga-ruby-on-rails-for-devs text RFD to 83432 | follow @ga and @dblockdotorg