TSSJS 2011 - JRuby

  • 1,378 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,378
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
17
Comments
0
Likes
0

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
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. JRuby is Awesomea.k.a Pump It Up: Maximizing the Value of an Existing Investment in Java with Ruby
  • 2. Me• Charles Oliver Nutter (“headius”)• JRuby Guy• JVM Languages Guy• Ex-Sun Guy• Engine Yard Guy
  • 3. You• Java developers? • Let’s call ourselves JVM developers now.• Other languages?• Other platforms?
  • 4. Why JVM?• Inertia• Wealth of libraries• Widely accepted• Momentum is coming back• Awesome VM, best platform
  • 5. Why Not JVM?• Alternative languages?• Cumbersome standards?• New shiny? Cool factor?• Tooling woes?• Native library/OS features?
  • 6. What If?
  • 7. JRuby• Ruby language on the JVM• Solid, reliable implementation• Production users: finance, gov’t, infrastruct• Integrates well with JVM langs, libs• Deploys on Java servers• Large, active community
  • 8. Language• Ruby is a beautiful, fun language • A standard by which others are judged• Wealth of books, resources, conferences • Healthy, growing community• JRuby brings Ruby to Java and Java to Ruby • Part of the family!
  • 9. A Taste of Ruby
  • 10. Java, of Course• Call Java libraries • ...and decorate them• Impl interfaces, extend classes• Die, CLASSPATH, die!• Fixing JDK issues (JDBC unloading...)
  • 11. Java Integration
  • 12. Tooling• Unit testing: test/unit• Spec/behavior-driven: rspec• Build, automation: rake• Packaging: rubygems
  • 13. Tooling
  • 14. Web Development• Full-size apps: Rails• Services, micro apps: Sinatra• Deployment: • Command-line servers like Trinidad • WAR deployment with Warbler
  • 15. Web Dev
  • 16. Native Access• Better process, filesystem, IO • Process control • Symlinks, globbing • Easy non-blocking IO• FFI for binding any native library
  • 17. Native Access
  • 18. Other Targets• Engine Yard AppCloud• Google AppEngine• Amazon Elastic BeanStalk• Android
  • 19. What Next?• www.jruby.org• Book: “Using JRuby” from Pragmatic• Conferences near your home town • Inexpensive and fun• User groups, mailing lists• www.engineyard.com/jruby
  • 20. Thank You!