Qual é melhor? Python, R, Julia, Matlab, …?

Algumas pessoas andaram me perguntando o que eu acho de alguma dessas linguagens e irei dar minha opinião como programador e como professor visando a parte acadêmica.

Como programador: a melhor das listadas acima é de longe Julia, linguagem recente que talvez ninguém tenha ouvido falar mas com velocidade de processamento impressionante. Na imagem abaixo mostra a comparação de várias linguagens executando algum algoritmo intensivo em relação a linguagem mais rápida do momento, C.

velocidades

Julia não é a linguagem mais fácil de programar mas faz bem o que promete, ter velocidade superior ao R e já possuir suporte completo a processamento paralelo. Se você for fazer uma modelagem séria e souber programar de verdade (fazer gráfico não é programar!) a escolha fica entre Fortran, Go, C e o Java. Eu ficaria com Go, suporte a paralelismo e tão fácil de programar quanto R.

Como professor: Python é de longe a melhor para aprender devido as boas praticas que ensina. Lembra aquele código bizarro que fez a um mês e parece uma bíblia na tela de tão mal formatado que saiu? Nem roda no Python! Repare que não é a maravilha das velocidades mas para os alunos que no máximo vão fazer um índice nem se nota a diferença. E ainda temos o plus que Python é usado em muitos programas bacanas (ArcGIS, Quantum GIS), então você pode estender a capacidade desses programas para as suas necessidades.

Conclusão

Python para ensinar/iniciantes em programação, Julia para pessoas com dois anos ativos de experiência no Python e finalmente Go/Fortran para quem se sente confortável com mais de duas linguagens de programação. Já no nível guru você vai querer dar uma olhadinha na linguagem C, boa sorte manipulando a memoria manualmente!

Não gosto de R, feia e lenta. A única coisa que me agrada é a comunidade que é muito mais amigável do que de todas as outras linguagens que trabalhei. Em três dias você consegue publicar um pacote no CRAN, nas outras linguagens pode levar seis meses ou nunca 😀

Anúncios

Uma opinião sobre “Qual é melhor? Python, R, Julia, Matlab, …?

  1. R é de longe a melhor para análise estatística, nenhuma dessas outras linguagens oferecem tantos pacotes próprios para isso, a maioria dos profissionais usam R e Python.. Julia é boa e fácil de aprender (meu ponto de vista), foi feito para computação científica, rapidez e paralelismo, mas por enquanto possui poucos pacotes. Golang, eu particularmente não acho fácil de programar, acho que é meio verboso, na verdade programar é fácil, mas a sintaxe é feinha, seria uma escolha apenas quando a velocidade e paralelismo for algo primordial, tbm não tem muitas bibliotecas de estatística e tal.. mas tá valendo.. e C, essa tá velinha, eu uso muito combinada com lua (torch/luajit), mas tbm só é uma opção quando algo tem que ser feito muito rápido, mas exige muito conhecimento por parte do programador, debugar é meio complicado e é fácil fazer vazamentos de memória. Futuramente pretendo aprender a linguagem D, ela consegue acessar bibliotecas do C e C++, tem uma sintaxe c-like mas com facilidades das linguagens de altíssimo nível, é super rápida e é fácil fazer paralelismo, tanto quanto júlia, vou aprender e usar para um projeto, junto com lua.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: