Comment by Cthulhu_
1 year ago
You'll never get it right though. Focusing on "features per LOC" means people will write shorthand, convoluted code, pick obscure, compact languages, etc. To use an adage, if a metric becomes a target, it stops being a useful metric.
An opinionated formatter plus a smart line counter fix this problem. There's still space for abuse but not enough to overshadow genuine improvements.
How does a formatter affect me intentionally writing more (or less) lines for the sake of reaching a line count?
print([i * 2 for i in range(10)])
vs
squared_numbers = []
for i in range(10):
print(squared_numbers)
It's not even a readability thing, assuming list comprehensions don't bother you they're about equally readable
You can write more but you can't write less!