There should be a check made such taht the compiler gives you a warning if you write a method that has an argument whose name is also the name of an instance variable! This causes totally obscure screws.