Hey, my two cents.

It's amazing that code styles are more related to people than the code
itself.

As pointed here, using Ruby we can write code on any way we want to, going
from clear code to the more "cryptic" ways (which I think is a waste of
time), so we have a lot of more freedom than on other languages (for
example, using the strict syntax of Python, regarding alignment, etc). As
also pointed here, people has some levels of anxiety when seeing code that
they don't agree with the way it was written, wasting time to reformat it
to the way they think is correct, adding nothing to the code but adding
lots to their satisfaction levels (call it anxiety as I did, or ego, your
call).

This is specially true when working with teams. I had a customer where a
developer said that the code I wrote "hurts his little eyes" (yes, with
these exact words) and he wasted time "correcting" my code than fulfilling
his daily tasks. When I suggested "ok, so we'll use Rubocop as the default
code style, it's not mine or yours, ok?" he refused eloquently, because the
way I wrote code was more closer to the Rubocop guide styles than his way.

So, we didn't agree, and he kept changing my code. Of course I could try to
follow his style, but as I work with more than one customer and teams if I
do so I'd need to remember every particular code style of every team,
specially the "team leader", and that would be a little complicated. That
guy was the "team leader", and I suppose he forced his styles to the other
members of the team, specially because on other questions he always forced
his way, even if people didn't agree.

Using a tool like Rubocop, with a certain style (as @duerst said, it needs
to be chosen, but I always keeps the default) can help *a lot* with those
kind of questions. Even if you don't use a linter to check your code, it
can help. Even if you use a linter, write code a little different than the
checked style, and *don't have a problem seeing the warnings*, IMHO it can
help. It doesn't need to be a style carved in stone, but at least can have
a "guide" to point different people to agree on a certain way, reduce the
stress involved on the whole process and remove things like anxiety and ego
out of the main question, the code.

Regards,
(supressed text/html)
Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>