jruby in the enterprise
DESCRIPTION
Code on github: https://github.com/leonardoborges/railssummit09TRANSCRIPT
JRuby in the EnterpriseLeonardo Borges
Sunday, October 4, 2009
JRuby in the EnterpriseLeonardo Borges
Sunday, October 4, 2009
Who am I?
JRuby in the Enterprise
• Consultant at ThoughtWorks Australia (former developer at HotelSearch.com)
• Open source contributions- Rails- JRuby- rcov_plugin- readable_test_names_runner
• Blogger• www.leonardoborges.com
• First time speaker
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
• Ruby?
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
• Ruby?• Rails?
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
• Ruby?• Rails?• Java?
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
• Ruby?• Rails?• Java?• JRuby?
Sunday, October 4, 2009
Who are you?
JRuby in the Enterprise
• Ruby?• Rails?• Java?• JRuby?
Why are you here?
Sunday, October 4, 2009
Why JRuby?
JRuby in the Enterprise
• Better threading support• Improved performance• Java integration (with a vast array of libraries) • Active community• Full Ruby 1.9 support on the way
• Leverage the knowledge of an existing team• Reuse existing logic• Testing
Sunday, October 4, 2009
...but before we get dirty
JRuby in the Enterprise
Java integration: Ruby meets swing
Sunday, October 4, 2009
frame = javax.swing.JFrame.new("Hello Rails Summit 2009!")frame.setDefaultCloseOperation(javax.swing.JFrame::EXIT_ON_CLOSE)frame.setSize(java.awt.Dimension.new(200,200))label = javax.swing.JLabel.new("JRuby rocks!")frame.getContentPane.add(label, java.awt.BorderLayout::CENTER)frame.setVisible(true)
JRuby in the Enterprise
Ruby meets swingJava Integration
Sunday, October 4, 2009
JRuby in the Enterprise
Ruby meets swing
frame = javax.swing.JFrame.new("Hello Rails Summit 2009!")frame.default_close_operation = javax.swing.JFrame::EXIT_ON_CLOSEframe.size = java.awt.Dimension.new(200,200)label = javax.swing.JLabel.new("JRuby rocks!")frame.content_pane.add(label, java.awt.BorderLayout::CENTER)frame.visible = true
Java Integration
Sunday, October 4, 2009
Case Study
JRuby in the Enterprise
Introducing JTasks
Sunday, October 4, 2009
Extending the Case Study
JRuby in the Enterprise
listing tasks with JRuby
Sunday, October 4, 2009
What’s next?
JRuby in the Enterprise
JRuby 1.4 RC1 is out...• 1.8.7 compatible• Improved 1.9 Compatibility• Java method selection and Coercion API• Ruby2Java in the core API• and more...
Sunday, October 4, 2009
Conclusion
JRuby in the Enterprise
Sunday, October 4, 2009
Q&A
JRuby in the Enterprise
Sunday, October 4, 2009
References
JRuby in the Enterprise
• www.engineyard.com/blog• www.jruby.org• www.leonardoborges.com• github.com/leonardoborges/readable_test_names_runner
Slides / Source code• http://github.com/leonardoborges/railssummit09
Sunday, October 4, 2009