• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Use all the buzzwords
 

Use all the buzzwords

on

  • 1,100 views

Backbone JS Over Rails In The Cloud

Backbone JS Over Rails In The Cloud

Statistics

Views

Total Views
1,100
Views on SlideShare
1,072
Embed Views
28

Actions

Likes
0
Downloads
2
Comments
0

3 Embeds 28

http://t.co 25
https://abs.twimg.com 2
https://duckduckgo.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Use all the buzzwords Use all the buzzwords Presentation Transcript

    • BACKBONE.JS OVER RAILS IN THE CLOUDJared Faris@jaredthenerdjared@jaredthenerd.com
    • ABOUT ME
    • LET’STELL A STORY!
    • OOPS
    • LEVEL 0 – ATTEMPT 2
    • RUBY ON RAILSYOU’VE FOUND RUBYAND ALSO RAILS
    • THE EASYWINS People write a lot of code for you Really easy to get started Great community support
    • THE LESS CLEARTHINGS “Open source” Why not Python? Why not .NET/Java/etc? “Automagic” breaks quickly Server-side is becoming less important
    • LEVEL 0 – COMPLETED
    • LEVEL 1– BUILDING ON RAILS• HAML (not ERB)• SASS (not CSS)• CoffeeScript (not JavaScript)• Ruby (not… ok, we kept Ruby)
    • HAML EXAMPLE
    • SASS EXAMPLE
    • SCSS EXAMPLE
    • AUTHS• Authentication• Authorization• Build or “Buy”Security
    • CANCAN EXAMPLE
    • OTHER GEMS• Redcarpet• Ruby OAuth• Braintree• Sendgrid• Paperclip• MongoidOther Gems
    • LEVEL 1 - COMPLETE
    • LEVEL 2 - DATABLACK MAGICAKA DATABASES
    • SCARY DBS• ORMs hide the database• Ruby’s automatic inclusion ofActiveRecord encourages little DBthought• Developers automatically buildrelational schemas• Black Mage has a cool hat
    • OUR DATA• Data frequently comes in isolatedsilos• Little of our data was traditionally“relational”• We could rebuild data sets later forreporting if we needed to• Scalability and ease of maintenancemattered heavily. We aren’t Ops folks
    • MONGO DB• Document store (NoSQL)• JavaScript based• Easy clustering• Run local and on serversMongoDB
    • MONGO QUERY EXAMPLE
    • MONGOID• ODM – Object Document Mapper• Maps Active Record interactions toMongoDB• Quit thinking about persistence andjust think about objectsMongoid
    • MONGOID QUERY EXAMPLE
    • LEVEL 3 – “JSON API”JSON API
    • JSON API EXAMPLE
    • JAVASCRIPT BITS• Templating• Objects for widgets• Namespacing
    • COFFEESCRIPTCOFFEESCRIPT
    • COFFEESCRIPT.ORG
    • LEVEL 4 - FRAMEWORKS• Started with jQuery• Added templates• Switched to Knockout• Ended up on Backbone• And then some Marionette
    • LEVEL 5 – DEV ENV
    • DEV ENV• Local development (local Rails,Mongo, etc)• Initially TeamCity for CI running ona VM• Fair bit of RSpec and Jasmine
    • GITHUB
    • TEAMCITY CRASHSwitched toSemaphoreVM CRASH!!!
    • SEMAPHORE
    • EC2 InstancesInternetSecurity GroupDNSResolutionLEVEL 6 - PRODUCTIONPRODUCTION
    • TOP RUBY RESOURCES• Ruby Koans• Ruby on Rails Guides• RailsCasts• Ruby Toolbox• Paid code reviews
    • TOP JS RESOURCES• JavaScript: The Good Parts• Backbone Koans• Derek Bailey’s blogs• Project homepages
    • WARP PIPE
    • Jared Faris@jaredthenerdjared@jaredthenerd.com