I think it depends a lot on the context and the choice of a meaningful metaphor. For example, ActiveRecord uses the method of the "find" class to search for records in the database, a more meaningful idea than "user_id input, user output". For instance:
User.find(user_id) User.find_by_email(user_email)
For conversions, I usually like to write conversion methods to make them easier to use in higher order functions. For example, in ruby, conversions are often performed using the to_* instance methods, for example, to convert a Foo to Bar it would be advisable to have a to_bar method for all foos, so you could write:
foo = Foo.new(...)
And then, to convert a bunch of foos, you could simply:
bars = foos.map(&:to_bar)
Ruby also has Foo.parse(str) to convert a string to an object.
For javascript, I like class methods (which I got from standard ml), for example:
Foo.toBar = function(foo) { return new Bar(...); };
And then you can also redraw it (using the underscore in this example):
var bars = _.map(foos, Foo.toBar);
The standard ML convention is structure (class) methods. Examples of fn types:
Foo.toBar : foo -> bar Foo.fromBar : bar -> foo
And you would use it like:
val bar = Foo.toBar foo; val bars = map Foo.toBar foos;