by John Melesky
We'll step through a simple library case, wrapping an Ocaml library and calling it from Ruby. Then we'll discuss ways to approach this problem for other target slow and fast languages.
The organizers of the Open Source Bridge conference needed software to collect presentation proposals and speaker bios, gather public feedback, publicize sessions, publish schedules, etc.
The conference team quickly realized there wasn't anything available that met our needs and that we would need to build something. Rather than create another closed source app for just our conference, we decided to build an open source platform that we and others could reuse for other events.
"OpenConferenceWare":http://openconferenceware.org/ was born out of the necessity to support Open Source Bridge. It's a much enhanced fork of the "OpenProposals":http://openproposals.org/ application we built to collect proposals for "Ignite Portland":http://proposals.igniteportland.com/ . The code works well and is in production use on half-a-dozen sites by thousands of people.
In this BOF, the developers of OpenConferenceWare will give a quick demonstration of how to set up the software, administer it and add a custom theme. These tasks are the hardest part of getting started with the software, but once you get it going, it's a quality Ruby on Rails application with generally good test coverage and sensible design.
We'd like to spend the rest of the BOF talking with the audience. We'd like to hear feedback from the software's end-users about how to make it friendlier and more useful. We'd like to hear from event organizers interested in using the software. We'd also really like to hear from those interested in joining the development team for this open source project.
by Brian Ford
What do RubyVM, Rubinius, JRuby, IronRuby, MacRuby, and MagLev all have in common? They all aspire to run your Ruby programs. But how do you know whether your programs will run as expected?
The RubySpec project aims to write a complete executable specification for the entire Ruby programming language and its core and standard libraries.
This talk will discuss the purpose, history, and status of the project. It will also describe the specialized spec runner, MSpec, and look at how its architecture and features assist in using RubySpec both to help drive development of Ruby implementations and to verify that an implementation is correct and compatible.
Since RubySpec looks at every nook and cranny of Ruby, there is plenty of opportunity to have a participatory conversation about Ruby and Ruby programming. Also, since RubySpec is a nexus of effort among many competing and sometimes complementary projects, we can also discuss issues surrounding organizing a project like RubySpec.
The Rails community is notoriously fickle when it comes to hosting, monitoring, and packaging their applications. In a few short years, we've seen no less than three "recommended" deployment models come and go: FastCGI + lighttpd, Mongrel + load-balancing proxy, and now Passenger/mod_rails. There's another option which gets much attention, though, despite its many strengths: running Rails in a Java application server via JRuby.
There are good reasons to consider this model all by itself, but websites are only one small part of what the Java ecosystem supports. Once you open yourself up to the possibility of using Java infrastructure for your Ruby code, there are a whole raft of other high-quality services and libraries available to you, covering everything from scalable message queues, shared object caching, and distributed computation frameworks. You can even tame legacy databases and enterprise platforms like Oracle, SAP, and the dreaded "portal".
Furthermore, now that Google App Engine supports Java -- and JRuby was a big part of that announcement -- you can deploy your Ruby code onto Google's servers for free. Once you're ready to upgrade to your own deployment, there are numerous high-quality open source Java application servers available (Glassfish, Tomcat, JBoss, Jetty, etc.) which you can run on your own system.
Come see how JRuby makes writing Java apps less painful, and how the Java ecosystem's focus on stable, scalable infrastructure can make your Ruby apps more reliable and performant. Bring a laptop with a recent JDK installed, and you'll be able to follow along with the entire process of getting basic Ruby apps up and running in a Java application server, using JDBC to talk to backend databases, and even wrapping a legacy Java library in a "Ruby-like" API layer, all without ever going anywhere near a compiler or an XML config file.
17th–19th June 2009