From: Mike Stephens Date: 2010-11-21T23:54:14+09:00 Subject: Re: Ruby Not observing DRY principle >def foo > some function >end > ># get user input >user input 1 >user input 2 > > foo(user input, option number) As you are (so far) writing in a procedural style, I think foo looks more natural than user_input.foo. Your first procedure (which might be foo in this case) needs to route according to the selected option. The basic rule of all programming, not just OO, is to create a set of methods - some clearly acting as controllers , and others carrying out tasks - that divide the problem up into discrete encapsulated 'black box' units. So just avoid jumbling up too much functionality in any given method. -- Posted via http://www.ruby-forum.com/.