Building Object Applications that Work