Ruby objects can be built in a way such that they are easier to use/test/debug from the point of view that if you do not automatically run their intended functionality from the constructor, potential side-effects and bugs can be better examined.
In general, I find it helpful to consider a constructors' purpose constrained only to setting instance-level attributes based on the passed arguments or using pre-defined defaults. Anything outside of that, I would consider setting up a class-level factory method.
Consider creating semantically-named factory style class methods that create an object and then call a specific method.
I find this especially helpful for hand-rolled presenters and worker classes (e.g. for Resque).