Your SlideShare is downloading. ×
0
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Darcy Laycock. Bridging the gap
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Darcy Laycock. Bridging the gap

2,018

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,018
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
11
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. BridgingThe GAP
  2. I’m Darcy.
  3. @suttogithub.com/Suttosutto@sutto.net
  4. Filter Squad http://github.com/filtersquad
  5. http://github.com/youthtree
  6. cat ./README• A brief History of JavaScript• {Ruby,Rails} + JS Love• Building Cool Stuff with ExecJS
  7. Most Importantly,Becoming a Better Ruby Developer With JavaScript
  8. Act 1A short History of JavaScript
  9. Created by Brendan Eich in 1995 at Netscape
  10. Prototype Based Dynamic & Weak TypingFunctions are First Class
  11. ~1996 until ~2004The Browser Wars & The DHTML Years
  12. ~2004 until ~2008 AJAX and Web 2.0
  13. ~2008 to NowHTML5 & The Return to the Server Side
  14. 0.1.0 Released Late 2009
  15. Server Side JS isn’t New.
  16. 1996: NetScape LiveWire1997: Rhino created1997: JScript via ASP2000: JScript.NET
  17. 2005: Helma released2007: AppJet Launched2008: Aptana Jaxer hits 1.02009: Node.JS Released
  18. Act 2JavaScript and I
  19. Mid 2008:I started writing an IRC Bot
  20. Bright Idea:JavaScript Plugins
  21. Client in Ruby,Plugins in JavaScript
  22. Early 2010:I discovered CoffeeScript
  23. “Simple, transparent CoffeeScript supportfor Rails and Rack Apps”.
  24. Act 3The Gap
  25. Ruby JavaScript
  26. Ruby JavaScript
  27. Ruby Bridging JavaScript The Gap
  28. Act 4Client Side
  29. RJS
  30. Red + RedShifthttps://github.com/jessesielaff/red/
  31. HotRubyhttp://hotruby.yukoba.jp/
  32. RKellyhttp://bit.ly/9nLw4R
  33. Unobtrusive RJS (Rails >= 3.0),e.g. https://github.com/rails/jquery-ujs
  34. CoffeeScript
  35. http://lesscss.org/
  36. Rails 3.1 Asset Pipeline
  37. HandleBar / Mustache
  38. Same template Code on Client & Server
  39. Act 5Server Side
  40. gem install coffee-script
  41. 0.1.0 until 0.3.2Ruby-based Compiler
  42. Barista + BistroCarCall Library via Node
  43. Gem Version ~> 1.0Uses the gem ‘node’
  44. Gem Version <= 2.2, >= 2.0Built in Engines Approach
  45. Gem Version ~> 2.2Uses ExecJS instead
  46. Baristahttps://github.com/sutto/barista/
  47. ExecJShttps://github.com/sstephenson/execjs
  48. therubyracertherubyrhino johnson mustang
  49. Apple JavaScript Core (JSC) Mozilla SpidermonkeyMicrosoft Windows Script Host Node.js
  50. Uses first available RunTime
  51. Uglifierhttps://github.com/lautis/uglifier
  52. Rails 3.1 Asset Pipeline
  53. Building Stuff with ExecJS
  54. RedJShttps://github.com/cowboyd/redjs
  55. “Rspecs for a Rubyinterface to javascript.”
  56. Embedding vs.Just Running Code
  57. More Traditional Approaches
  58. Juggernaut 2https://github.com/maccman/juggernaut
  59. Ruby / Other Languages Redis PubSub Node.JS Server Browser
  60. Ruby / Other Languages Redis PubSub Node.JS Server Browser
  61. Ruby / Other Languages Redis PubSub Node.JS Server Browser
  62. Ruby / Other Languages Redis PubSub Node.JS Server Browser
  63. See Also: ZeroMQ
  64. Conclusion
  65. Thanks!
  66. Questions?

×