A core strength of the JVM is support for polyglot development. In fact, Java 7 includes performance improvements that will increase the use of popular Web languages on the JVM such as JavaScript, Ruby, and Python.
Enterprises today are moving to the cloud to improve agility, cost, and scale. Ruby, together with the Rails framework, is one of the hottest languages in the cloud. At the same time, it's no secret that Java is the foundation of the enterprise. With JRuby, Java and Ruby run side-by-side to accelerate migration by leveraging existing infrastructure.
This presentation reviews technology, best practices, and case studies of companies enjoying competitive advantage via the powerful combination of Java, Ruby, and the cloud.
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Accelerate Your Business and Aim for the Cloud with Java and JRuby
1. Accelerate Your Business and Aim for the Cloud with Java and JRuby Jacob Lehrbaum Director of Product Marketing Mike Piech VP Product Management & Marketing
2. Development Pressures are Huge Create the Ultimate User Experience Do More With Less Differentiate Get Big Fast Iterate Rapidly
3. John Dillon, CEO “Businesses should really focus on delighting customers, and the reality is that many companies fail to get that right. The world is littered with applications that are barely usablelet alone desirable or pleasant. Companies waste far too many resources building infrastructure to run applications rather than building applications that thrill users”
4. Our Messages Today Ruby brings Agility to Java Run Java & Ruby, Together PaaS Helps you Focus on Applications, not Infrastructure 4
11. Ruby is Terse deflen(list) x = 0 list.each do |element| x += 1 end end public static intlen(List list) { int x = 0; Iterator listIterator = list.iterator(); while(listIterator.hasNext()){ x += 1; } }
12. Ruby Does a Lot for You Class Circle private Coordinate center, float radius; public void setCenter(Coordinate center){ this.center = center; } public void getCenter(){ return center; } public void setRadius(float radius){ this.radius = radius; } public void getRadius(){ return radius; } } Class Circle attr_accessor :center, :radius end
21. "Using JRuby, we’ve saved hundreds to thousands of hours by leveraging existing infrastructure, monitoring tools, and developer experience, and we end up with 75% less code to manage than using Java." -Dylan Stamat, CTO JRuby Case Study 21
22. "JRuby allows us to use the power of the Ruby language, build a smaller code base, and access Java libraries. We used JRuby to build a web application for the U.S. State Dept who wanted to modernize a 10 year old Java application. There was a lot of complex knowledge in the legacy code that would have been lost if we had to re-build it from scratch. With JRuby, we can take advantage of the speed of developing in Ruby and still access existing Java libraries for features like workflow, business logic, internationalization, and localization.” - David Bock, Principal Consultant JRuby Case Study 22
23. "JRuby has been a great help to LinkedIn with rapid application development by allowing us to leverage our existing Java libraries right in a Rails or Sinatra application. In one instance, JRuby saved nearly a week of development effort by not having to port a proprietary library over to native Ruby code. That’s a huge win for development velocity, code reuse and developer sanity.” -Jon Bettcher, Senior Software Engineer JRuby Case Study 23
25. Operational and Capital Expense Hardware Software People Opportunity Costs Time-to-market Downtime IT Costs 25
26. People – the Largest Expense in IT Source: Gartner IT Key Metrics Data 2011 26
27. Want to build your own platforms? How many people would you need? Could you innovate faster if they focused on your app? Anywhere else you’d rather invest? Where do you invest? Example Headcount Costs 27
28. Technology Driving The Cloud Ubiquitous Networking Virtualization Rich Internet Applications Low Cost Hardware Open Source 28
29. Software as a Service Platform as a Service Cloud Computing “As a Service” SaaS PaaS Infrastructure as a Service IaaS 29
33. Developer Interface Framework PaaS in a Nutshell Memory Cache Language Interpreter Web Server Database Reverse Proxy Load Balancer Operating System Customer Environment Orchestration & Configuration 33
34. Ruby and Java in the Cloud Rails | Sinatra | Rack Chef Recipes Memcached | Redis MRI | Rubinius | JRuby Passenger | Trinidad MySQL | PostgreSQL nginx HAProxy Linux 34
44. PaaS Mission Enable Developers to Efficiently Build, Quickly Deploy, and Easily Manage Fast, Reliable Applications at Any Scale, on Any Cloud 44
45. Your IT Department and More! System Administration Platform stack components Up-to-date Compatible versions Optimally configured Automated deployment/restart Database administration Support 24x7 help desk Best practices and advice Troubleshooting and escalation Proactive support Platform Maintenance New features Updates and upgrades Bug fixes and security patches High Availability & Disaster Recovery Database replication setup Backup configuration Load balancing configuration Monitoring and alerting Failover Database restore Application restart 45
46. 2,000+ Customers Use Engine Yard We find and fix the majority of bugs before you see them Platforms are our business We invest in world-class features such as high availability and disaster recovery, self-service consoles, platform services, etc Continuously maintained, updated, and improved Benefit from the latest features and improvements, avoid exploits Dedicated support organization Entire team dedicated to helping you: solve problems, use the platform, implement best practices and fix defects Embrace DevOps Spin up and configure new instances using our console without getting slowed down by operational bottlenecks Engine Yard 46
47. Our Messages Today Ruby brings Agility to Java Run Java & Ruby, Together PaaS Helps you Focus on Applications, not Infrastructure 47
A core strength of the JVM is support for polyglot development. In fact, Java 7 includes performance improvements that will increase the use of popular Web languages on the JVM such as JavaScript, Ruby, and Python. Enterprises today are moving to the cloud to improve agility, cost, and scale. Ruby, together with the Rails framework, is one of the hottest languages in the cloud. At the same time, it's no secret that Java is the foundation of the enterprise. With JRuby, Java and Ruby run side-by-side to accelerate migration by leveraging existing infrastructure. This presentation reviews technology, best practices, and case studies of companies enjoying competitive advantage via the powerful combination of Java, Ruby, and the cloud.