RubyConf 2006 Talk Proposal
Jun 30th, 2006 by phil
Summary:
Recently the buzz in the Ruby community has been focused around building Web 2.0(TM) applications in Rails. In fact, Ruby can also be used to build good looking desktop applications on Mac OS X using Ruby Cocoa.
Detail:
Recently the buzz in the Ruby community has been focused around building Web 2.0 applications in Rails. However, Ruby’s usefulness is not restricted to building web applications. While desktop applications are not normally to domain of scripting languages like Ruby, there are several GUI toolkits for Ruby ranging from the venerable Tk to more modern projects like RubyCocoa. And why not? Ruby is a joy to work with and there is no rule that says desktop applications have to hurt.
First we will look at some of the options that are available for building GUI applications in Ruby. We will start with Ruby/Tk and then look at wxWidgets, FOX, Qt and RubyCocoa. Each toolkit has its unique strengths and weaknesses and we will talk about why you might want to use one over the others.
The remainder of the talk will be dedicated to exploring the RubyCocoa project. GUI applications typically differ significantly from web applications or utility scripts in terms of how they are built and how the user interacts with them. We will start off our exploration of RubyCocoa by getting a feel for the architecture of a desktop application.
Next we will consider the mechanics of building a RubyCocoa application. Some of the questions we will consider are: How much Cocoa knowledge is necessary to build a RubyCocoa application? How are the Cocoa APIs mapped to Ruby? What does it take to build an application using RubyCocoa? Are there any tools available that will help? Will a RubyCocoa application have the distinctive Macintosh look and feel?
Now that we know how to build the application, we need to know how to test it. Testing event-driven applications has traditionally been difficult, so we will take a look at different ways to approach the problem. Finally, we will take a look at some ways to keep your GUI code DRY.
By the end of the talk, the audience should understand what tools are available for building GUI applications in Ruby and which ones they should use. More importantly, we will have taken an in-depth look at RubyCocoa and discovered how to build a beautiful application on Mac OS X using Ruby and the Cocoa bindings.
Bio:
Phillip Toland has been building software for over 10 years with a variety of technologies. While he is relatively new to the Ruby community, he is not new to building desktop applications. Ever since discovering Ruby via Rails a year ago, he has been interested in leveraging Ruby in a desktop application.




