Parece haver uma certa fixação entre os programadores, principalmente os menos experientes, em quantas linhas de código são necessárias para resolver determinado problema.
Às vezes isso é bom. Veja como ler um arquivo texto em Java:
import java.io.*;
public class ReadingFromFile
{
public static void main(String[] args) throws Exception
{
FileReader fr =
new FileReader("arquivo.txt");
int i;
while ((i=fr.read()) != -1)
System.out.print((char) i);
}
}
Agora compare com a mesma coisa em Python:
print(open('arquivo.txt').read())
Nesse caso, parece óbvio que a resposta em Python é muito melhor, não? Agora olhe esse código em JavaScript:
urlscore = url.indexOf('http') ? -1 : (url.indexOf('https://')+1)*5 +
(url.split('/')[2].indexOf('www')?1:0)*2 +
(url.split('/')[1].indexOf('@')>-1?-1:1)*3
Uau! O sujeito reduziu a função inteira a uma única expressão! Parece uma boa ideia pra você? Coitado de quem tiver que dar manutenção nisso!
Seu inimigo não é a quantidade de código, é a complexidade. É difícil dar uma boa definição técnica de complexidade, mas você a reconhece quando vê.