This is only true if you follow objc init I think... for example... I came across this problem with NSWindowController and it took me a while to figure out. class PasswordController < NSWindowController def initialize initWithWindowNibName("Password") ##FAIL Never called! init called instead end class PrefController < NSWindowController def initialize(owner) @owner = owner initWithWindowNibName("Preferences") end end The first example fails and so I finally got that I needed the init method to make the window appear but I couldn't figure out why the second option worked. Must have been a long day but clearly if designate an initialize with a param init is bypased... so if I take the class A <String def initialize(b) super end end example and do A.new("hi there") gives initialize => "hi there" so what is going on? I think there might need to be some clarity..... Terry