Executando verificação de segurança...
3

[OPINIÃO] Qual a melhor linguagem de programação?

Essa é uma pergunta que desde sempre esteve em nossa área de atuação. Muitos querem saber qual a melhor linguagem, a mais fácil, a mais rápida, etc.

Quando essa pergunta vem de um iniciante, não vejo nenhum problema. Como alguém que se tornou pedreiro recentemente quer saber quais são as melhores ferramentas para se trabalhar, um(a) recém-programador(a) tem a mesma dúvida.

O problema começa quando alguém que já está na área a um tempo faz esse tipo de pergunta. Ou pior, quando alguém dessa categoria tenta respondê-la! Aí vira o caos!

Na minha visão essa discussão não tem sentido algum, e gera dois grandes problemas.

Porque essa discussão não tem sentido?

Antes de falar dos dois grandes problemas, nada mais justo do que eu justificar minha razão por não ver sentido em tal discussão. Pois bem...

Quando começamos a sair do playground, e de fato entendemos como o mercado funciona, vemos que ele é extremamente exigente. E essas exigências são absurdamente variadas. Basicamente porque para todos os problemas de uma organização, se procura um ou mais softwares que o resolvam.

Exposto esse fato, entendemos que é realmente impossível que uma única linguagem de programação atenda da melhor forma possível todas as demandas. É exatamente por isso que existem milhares delas!

Então, o que existe (de forma bem subjetiva), é a melhor linguagem para cada projeto, principalmente quando focamos em seus requisitos. Por exemplo: Se eu quero fazer um scrapping de dados em determinado site, é muito mais prático usar Python do que Java.

Para finalizar essa parte: A dica final é que você se torne expert em levantamento de requisitos. Dessa forma, te garanto que você sempre vai selecionar a linguagem mais adequada para seu projeto.

E os dois problemas?

Pois bem. Falei acima que via dois grandes problemas gerados por essa discussão boba. Vamos lá!

1. Influenciadores colocando os iniciantes em uma bolha

Hoje está na moda ser tech influencer. Eu obviamente não vejo nenhum problema. Acredito que é até um incentivo para que mais pessoas entrem na nossa área! O problema começa quando os tais influenciadores fazem parecer que a linguagem que eles resolveram ensinar é a perfeita pra tudo!

Inclusive já vi alguns fazendo pior: Gerando desinformação sobre uma linguagem "concorrente". E está entre aspas, porque linguagem de programação não é empresa. Como falei acima, cada uma atende melhor determinados requisitos.

Mas continuando: É realmente triste ver programadores que estão em início de carreira se fechando em uma só linguagem e menosprezando todas as outras.

E isso nos leva ao segundo grande problema...

2. Fanboys/Fangirls de linguagens

Esse é o pior de todos! Me dá nos nervos!! Nada é mais irritante do que ver pessoas literalmente militando por uma linguagem!

Se você é assim, não te julgo. Também já fui um desses (kkkk). O problema é que você não enxerga que isso é uma furada nunca!

Você precisa entender que a linguagem de programação é a ferramenta para resolver um problema. Ela definitivamente não é a solução!

Assim como um martelo e uma chave de fenda têm diferentes funções, o mesmo é verdade com as linguagens de programação.

E aqui não estou dizendo que você não pode ter sua preferência pessoal. Na verdade deve! Isso mostra que você tem personalidade. O problema é quando você quer impor sua preferência pessoal sobre seus projetos profissionais!

3

Eu vejo problema na pergunta até de iniciantes. Mas obviamente menos. Mas só daqueles que nunca viram nada útil sobre isso. O problema é que tem muito iniciante que já viu algo que diz para ele não fazer isso com a vida dele e ele não escuta, então pode ser um enorme problema. É o problema que eu falo sempre, a atitude. Ela não se desenvolve porque ela não faz o que tem que fazer.

Melhor precisa ser definido, sem uma definição, isso sequer faz sentido, e isso vale para tudo, e qualquer pessoa deveria saber disso. O melhor pode não ser tão importante, e é fácil errar, mesmo se todas as condições forem atendidas. Algo passa a ser do melhor até mesmo para o pior por uma mudança de um detalhe. E quer isso expõe uma fraqueza da pessoa. Melhor é muito subjetivo, até com uma definição muito clara e nada ingênua, pode ser difícil. Por isso esse tip ode pergunta não pode ser feita no Stack Overflow. Não tem como dar boas respostas e lá é (ou era) um local que preza por respostas que realmente ensinem algo de qualidade para as pessoas.

Tanto é assim que eu nunca vi um pedreiro perguntando qual é a melhor ferramenta para trabalhar.

Claro que dá para fornecer respostas genéricas e que são verdadeiras, como: "o melhor é o que serve aos objetivos", "é aquela que você usa bem", "é o que te deixa feliz", "é o que paga as contas" (odeio essa), etc.

Mas dá para entender o que está sendo dito aqui. E de fato, tem alguns muitos que mal deveriam ser aceitos por iniciantes. Alguns já deveriam ser destruídos logo depois que a pessoa passa do pré-iniciante. Por isso que eu falo que nem júnior deveria dar importância pra esses títulos de cargos, porque se ela dá importância ela está dando valor para algo errado e simples demais. Um júnior já deveria ter aprendido que boa parte da informação que existe na internet é um "telefone sem fio".

Eu já falei muito sobre o assunto aqui: https://www.tabnews.com.br/maniero/2f690265-9316-4120-9049-69fa052f2739. E escolher a linguagem mais adequada tem um valor enorme sim. Mas isso não é o melhor. A melhor aparentemente atrai respostas ruins.

Falar de "melhor" mostra um pouco uma falha na formação da pessoa, porque ela ainda não está fazendo as perguntas certas. Boa parte da habilidade da programação é justamente fazer isso. Por isso que muita gente se dá mal no Stack Overflow. Não é o mecanismo, a técnica de programação que a pessoa falha, é na comunicação e expressão. E ela não percebe que ela tem que usar isso o tempo todo no trabalho. Ela não percebe que educação básica é o mais importante para se dar bem com programação.

Obviamente que eu concordo plenamente com o levantamento de requisitos ser muito mais importante. É disso que estou falando. E mesmo experientes falham muito. Eu mesmo tenho bastante dificuldade mesmo fazendo isso depois de 40 anos. O fato da pessoa nem perceber o quanto é difícil já é um enorme problema.

Eu não gosto muito da justificativa de ter muitas linguagens porque existem muitos problemas. è como dizer que é bom ter dezenas ou centenas de partidos políticos. Só precisa de alguns poucos, o resto é só concorrência querendo espaço. Dá para fazer tudo com C, quase tudo com JavaScript. Nem sempre ficará tão bom, mas tem casos que usar o errado ainda pode ter vantagens. Surgem concorrentes porque algo pode ser um pouco melhor que o que já existe em alguns pontos. Então ela conquista um lugar ao sol. Algumas pessoas começam a ver mais sentido, ganham algo com aquilo, perdem algo, mas não se importam. Justamente que é o mito que tem que usar a ferramenta certa para a tarefa que as pessoas com extrema frequência usam a errada, e meio que dá tudo certo. Depende mais da competência dela e não ficar "cavocando" para descobrir que está perdendo algo.

Claro que tem mais aderência em alguma coisa. Mas se você souber C e não souber Python, provavelmente fazer scrapping em C é melhor. Talvez seja melhor deixar o estagiário que sabe Python fazer, mesmo que precise de supervisão. Delegar para outros é algo nunca debatido. Por isso que não quero aprender tudo para usar. E por isso que aprendi tudo para conhecer.

E concordo com os dois pontos levantados. Destaco o fato dos fanboys não aceitarem críticas à sua linguagem (ou outra tecnologia) amada. Crítica é diferente de jogar pedra. Quando a pessoa entra nessa, se ela não mudar muito, ela terá sua carreira comprometida, até porque isso é só sintoma.

Faz sentido para você?

Espero ter ajudado.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

1
2

Existe a ferramenta certa pra cada tipo de trabalho e as linguagens de programação seguem esta regra. Foi-se o tempo das linguagens de propósito genérico (C, Basic, Pascal, Pearl, etc.), até porque os casos de uso de quando essas linguagens foram inventadas eram bastante limitados.

Entretanto, eu não quero dizer que é a melhor linguagem, mas sim a linguagem mais importante e que o mundo seria bem diferente se ela não existisse, o C.
O C foi inventado para desenvolver o UNIX, e mais tarde foi usado para criar o sistema GNU e o kernel Linux, que acabaram democratizando a internet.

1

A melhor linguagem de programação é a que melhor resolve o problema que voce quer resolver. De forma simples! Se eu quero criar um site, JavaScrip e ponto, no máximo usaria um Python. Se você quer analisar dados, Python. Desenvolvimento de jogos, bem, a indüstria de games usa muito mais C++ e Java. Não tem mistério, é só pensar em qual problemas queremos resolver, o que queremos criar e escolher a linguagem que melhor atende aquela demanda.

1
1
1
0