15
CRAFTING A RUBY ON RAILS COURSE FOR DEVELOPERS DANIEL DOUBROVKINE ( AKA DB.) #NYCRB @DBLOCKDOTORG NYC.RB / MARCH 2012

Crafting a Ruby-on-Rails Course for Developers

Embed Size (px)

DESCRIPTION

Lessons learned from building a curriculum and teaching a class at GeneralAssemb.ly in NYC.

Citation preview

Page 1: Crafting a Ruby-on-Rails Course for Developers

CRAFTING A RUBY ON RAILS

COURSE FOR DEVELOPERS

DANIEL DOUBROVKINE (A K A DB.)

#NYCRB @DBLOCKDOTORG

NYC.RB / MARCH 2012

Page 2: Crafting a Ruby-on-Rails Course for Developers

HOW DID YOU LEARN

RUBY-ON-RAILS?

How do you teach?

read a book

in a classroom

read blogs

hacked with friends

went to college

followed a tutorial

paired on the job

listened to a podcast

joined a community

took an online course

Page 3: Crafting a Ruby-on-Rails Course for Developers

A GOOD CLASS HAS NO

MORE THAN 15 METHODS

Nursery

10 Kids Algebra 1 @ UniGE

300 Students

15

Page 4: Crafting a Ruby-on-Rails Course for Developers

CAP

Availability and Frequency

Content Depth Push and Pull

8 Weeks

Twice a Week

6-8pm

+ Office Hours

Page 5: Crafting a Ruby-on-Rails Course for Developers

I STILL REMEMBER

MY 1ST

GRADE TEACHER

Learns Well as a Group Needs Special Attention

Instructor

Teaching Assistant

Class Producer

Pivots + Guests

Page 6: Crafting a Ruby-on-Rails Course for Developers

COOL KIDS

SIT IN THE BACK

Page 7: Crafting a Ruby-on-Rails Course for Developers

PRIOR EXPERIENCE

REQUIRED

• Daily Practice Fluent With an Editor and Shell

• Basics of CS Algorithms & Structures

• Some Web Programming HTTP Fundamentals

Page 8: Crafting a Ruby-on-Rails Course for Developers

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

Page 9: Crafting a Ruby-on-Rails Course for Developers

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?

Page 10: Crafting a Ruby-on-Rails Course for Developers

BUILDING RAILS

BOTTOM UP

1. Git Developer Workflow topic branches

2. Ruby Basics hashes and maps

3. Rack 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

Pivotal Tracker

Page 11: Crafting a Ruby-on-Rails Course for Developers

BUILDING A SYSTEM

IN RAILS

1. ActiveRecord postgresql

2. Rendering in Rails haml, erb, sass

3. Authentication home grown, clearance, devise

4. RESTful APIs controllers, sinatra-style

5. NoSQL mongodb

6. Caching rails

Fabricator

Devise

Twitter Bootstrap

Shoulda

Capybara

DatabaseCleaner

FFaker

Page 12: Crafting a Ruby-on-Rails Course for Developers

FINAL PROJECT @ 4 WEEKS

Ruby-on-Rails Stashboard Clone

Page 14: Crafting a Ruby-on-Rails Course for Developers

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