{ |one, step, back| }

Talks, Presentations and Articles

10 Things Every Java Programmer Should Know About Ruby

Sometimes what we know gets in the way of what we need to learn. Getting over the "new language" hump can be a challenge at times.

This presentation attempts to help Java programmer quickly become acclamated to Ruby style and idioms.

Given at OSCON 2005.

A Quick Introduction to Rails

This is a quick introduction to the Ruby on Rails web framework. It was originally given to the Cincinnati XP Users Group on Jan 3, 2006.

The presentation is done completely in firefox using the provided XUL file and corresponding datafile. You must use FireFox for proper viewing.

Advanced Ruby Class Design

This talk was given at the 2007 Ruby Conference.

Building with Rake

This is the presentation I gave at the 2004 Ruby Conference in Austin Texas. It covers some of the basics of using Rake. Enjoy.

Connascence and Java

This presentation given to the Cincinnati Java Users group in July 2001, so it is an older presentation. But as I recall, it was well received. I think most people liked the fact that they could to to work the next day and casually drop the work "connascence" into the conversation. It is certainly a fun word to pronounce.

All kidding aside, understanding the issues around connascence drives to the center of understanding the nature of coupling.

Side note: After publishing this talk on the web, Meillir Page-Jones email me and mentioned that he liked my examples. Wow. That made my day.

Continuations Demystified

Continuations Demystified

Continuations are a powerfull control flow abstraction not available in most mainstream languages. We will pull back the curtain of mystery surrounding continuations allowing you to understand how to use them effectively.

Either that, or we will make your brain explode.

Given at RubyConf.new(2005)

Dependency Injection

This is a short presentation on the Dependency Injection pattern described by Martin Fowler. Given at the Cincinnati Java Users Group on Jan 19, 2004.

Dependency Injection -- Vitally Important or Totally Irrelevant?

Is Dependency Injection required in a dynamic language like Ruby? (Given at OSCON 2005)

Groovin' with Groovy

Talk given to the August 2004 Cincinnati Java Users Group. (An abbreviated version was also delivered to the Fidelity Focus on Technology group).

The consensus at the Southern Ohio Java Conference seemed to be that Groovy was a technology to keep your eye on, so here is a quick rundown on this up and coming language.

Invitation to Ruby

This presentation was put together to introduce Ruby to the Cincinnati Linux Users Group. Since then I have also given this talk at the ComputerFest in Dayton Ohio.

This is a fun presentation, and attempts to convey the feel and flavor of the Ruby language without getting too bogged down in nitty-gritty details. In fact, a large example was moved to the Appendix area because it was just too much information present in a 45 minute talk. I particularly like the cover page artwork (done with GIMP).


Polyglot Polymorphism
This is a fun little romp playing around with dynamic, runtime polymorphism in a number of different languages.

Same Fringe, Iterating Parallel Lists in Ruby
This article was written in response to a challenge to show a realistic example of iterating over parallel lists in Ruby. We explore external iterators, generators and even touch on continuations.

Speaking the Lingo

Speaking the Lingo: Domain Specific Languages in Ruby.

The presentation addresses techniques used to create embedded domain specific languages using Ruby.

Given at RubyConf.new(2005)

Test Driven Design Meets Design by Contract

Test-driven Development, although not ubiquitous, certainly has made a strong impact on the software industry. However, there has been some criticism of TDD. Advocates of Behavior-driven Design suggest that the testing-oriented vocabulary of TDD causes developers to focus on the wrong aspects of development. Rather than thinking about testing, developers should be focusing on specifying behavior. But although the BDD frameworks use different terminology, they are still structurely similar to the xUnit frameworks that came before them.

In this presentation, we will look at a Ruby-based domain specific language designed to explicitly express and capture program semantics, not through the use of tests but through the use of contracts and explicit specifications. We will compare this technique to the traditional xUnit framework and discuss the strengths and weaknesses of each approach..

Given at OSCON 2006.

Test Driven Development Demo, In Ruby!

The Jan 7th 2003 meeting of the Cincinnati XP users group was a test driven development workshop. We divided into pairs and worked on a (changinge) set of requirements specified by our designated customer.

A lot of folk at that meeting were new to Test Driven Development (or Test First Design), so I decided to document the experience of my pair partner and I over the course of the evening. We used Ruby, but you should be able to follow.

The Many Facets of RubyGems

Talk given at RubyConf 2004. This talk covers RubyGems from several different facets.

Using Ruby -- In Introduction to Ruby for Java Programmers

This is a quick introduction to using Ruby targetted primarily at Java programmers. It is designed to be a 1-hour talk, so there are a lot of things that are glossed over. I consider this to be a work in progress and plan to update it as I get feedback from presenting it.

Formatted: Mon Jan 06 23:39:08 -0500 2014