Índice TIOBE de janeiro de 2014

Estava dando uma olhada no índice TIOBE e duas linguagens me chamaram a atenção: Java e Objective-C.
Creio que os critérios adotados para coletar os dados não estão conseguindo refletir o crescimento dos desenvolvedores Android. O Objective-C teve um crescimento significativo a partir de meados de 2009, saindo de menos de 0.5% para mais de 11%; o Java está numa curva descendente desde meados de 2002, mas deveria ter um comportamento diferente com a entrada do Android.
Pelo gráfico, dá a impressão de que a maioria dos desenvolvedores Android já conheciam Java, o que não é totalmente verdade, um grande número aprendeu Java (como eu) para programar Android.
Então, na minha opinião, se o Objective-C deu um salto de mais de 10%, o Java com o Android também deveria ter tido algum crescimento, pelo menos nos últimos três anos. Não acham?

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Aqui em bsb o java ainda esta “bombando”, é disparado o número de vagas em relação as outras linguagens.

Isso acontece porque boa parte dos desenvolvedores android escrevem em c e não java, usando o ndk.

Desconheço isso, e o TIOBE não indica isso.
Tem fonte essa informação?

O TIOBE baseia-se em termos de busca. Então, ele vai apresentar distorções por causa das APIs compartilhadas. Eu duvido seriamente dos resultados apresentados para Android e Java.

O mesmo vale para C e C++.

Há diversos artigos na internet questionando os resultados do TIOBE, e outros tantos apontando falha no método alegado por eles de coleta. Ele é mais uma curiosidade do que algo para ser levado a ferro e fogo.

Por que você está partindo do pressuposto que o número de desenvolvedores Android está crescendo?

Primeiro, porque antes não tinha o Android.
Depois, pelo crescimento da plataforma.
Terceiro, se o Objective-C cresceu com a Apple, porque o Java não cresceria com a Google?

Primeiro, porque antes não tinha o Android.
Depois, pelo crescimento da plataforma.
Terceiro, se o Objective-C cresceu com a Apple, porque o Java não cresceria com a Google?
[/quote]

Com certeza,a plataforma android se tornou muito,mais muito popular mesmo durante esses anos,logicamente o numero de desenvolvedores para a mesma cresceu,e geralmente você acha em livros ou artigos pela internet tutoriais de desenvolvimento de aplicações android feitas em java. Dai a galera que procura cai logo em java mesmo.

Ninguém programava em objective-c antes, enquanto Java já era uma linguagem popular.

Sem falar que você não precisa de Java pra programar em Android portanto popularidade do Android não implica em mais uso de Java necessariamente.

Desconheço isso, e o TIOBE não indica isso.
Tem fonte essa informação?[/quote]

Basta usar o google. O android virou uma plataforma de jogos. As grandes empresas como EA, Gameloft e outras não usam java para escrever jogos, inclusive os desenvolvedores que escrevem periféricos.

Dá para usar c++, c(com qt ou ndk), c# também usa ndk(xamarin http://xamarin.com), etc… para escrever software para o android. Qualquer uma dessas alternativas criam executáveis nativos.

Então é natural a procura da linguagem diminuir.

Primeiro, porque antes não tinha o Android.
Depois, pelo crescimento da plataforma.
Terceiro, se o Objective-C cresceu com a Apple, porque o Java não cresceria com a Google?
[/quote]

O android suporta várias linguagens para o desenvolvimento de aplicativos, não somente java. Então a linguagem não vai crescer da maneira que está imaginando. As grandes empresas vão usar as ferramentas mais apropriadas para determinado projeto, apesar do sdk oficial usar linguagem java.

[quote=JDesenvolvedor]Ninguém programava em objective-c antes, enquanto Java já era uma linguagem popular.

Sem falar que você não precisa de Java pra programar em Android portanto popularidade do Android não implica em mais uso de Java necessariamente.[/quote]

isso está correto, mas o objective c já era usado com o openstack, e o gnu compiler possui compilador dessa linguagem.

http://www.gnustep.org

A grande maioria dos desenvolvedores Android usam Java, é claro que existem alternativas, mas, é num volume muito baixo comparado com o número de desenvolvedores Java.
Como posso ter essa convicção? Baseado em: quantidade de livros sobre Android SDK (Java), blogs sobre Android, forúns Android, comunidade Android, e, principalmente, o site Developer Android.
Sei que o índice TIOBE tem distorções, sempre teve, mas atualmente com o surgimento das plataformas moveis, essas distorções estão gritantes. Praticamente não servindo mais como uma informação razoável para se medir a popularidade das linguagens mais usadas.
Outra coisa, no Android, muitos jogos são programados em Java, aliás, é a principal plataforma que se programa jogos em Java!

TIOBE utiliza os termos pesquisados em ferramentas de busca. Se um desenvolvedor Android não pesquisar pela palavra Java, não aparecerá no ranking, mesmo que ele utilize java. Provavelmente ele utiliza outro termo ou utilize diretamente o site do Google, não dá pra afirmar.

[quote=A H Gusukuma] A grande maioria dos desenvolvedores Android usam Java, é claro que existem alternativas, mas, é num volume muito baixo comparado com o número de desenvolvedores Java.
Como posso ter essa convicção? Baseado em: quantidade de livros sobre Android SDK (Java), blogs sobre Android, forúns Android, comunidade Android, e, principalmente, o site Developer Android.
Sei que o índice TIOBE tem distorções, sempre teve, mas atualmente com o surgimento das plataformas moveis, essas distorções estão gritantes. Praticamente não servindo mais como uma informação razoável para se medir a popularidade das linguagens mais usadas.
Outra coisa, no Android, muitos jogos são programados em Java, aliás, é a principal plataforma que se programa jogos em Java!

[/quote]

Não é um volume tão baixo não . Muita gente usa C para criar apis para aplicações que funcionam com o dispositivo rootado. Need for speed most wanted roda num dispositivo de baixo custo com todo aquele desempenho gráfico. Podemos colocar uns 60% Java e 40% as outras! porque o android é um Linux . E isso quer dizer que qualquer software compilado o toolchain da plataforma correta roda ali.

[quote=juliocbq][quote=A H Gusukuma] A grande maioria dos desenvolvedores Android usam Java, é claro que existem alternativas, mas, é num volume muito baixo comparado com o número de desenvolvedores Java.
Como posso ter essa convicção? Baseado em: quantidade de livros sobre Android SDK (Java), blogs sobre Android, forúns Android, comunidade Android, e, principalmente, o site Developer Android.
Sei que o índice TIOBE tem distorções, sempre teve, mas atualmente com o surgimento das plataformas moveis, essas distorções estão gritantes. Praticamente não servindo mais como uma informação razoável para se medir a popularidade das linguagens mais usadas.
Outra coisa, no Android, muitos jogos são programados em Java, aliás, é a principal plataforma que se programa jogos em Java!

[/quote]

Não é um volume tão baixo não . Muita gente usa C para criar apis para aplicações que funcionam com o dispositivo rootado. Need for speed most wanted roda num dispositivo de baixo custo com todo aquele desempenho gráfico. Podemos colocar uns 60% Java e 40% as outras! porque o android é um Linux . E isso quer dizer que qualquer software compilado o toolchain da plataforma correta roda ali.[/quote]
A minha estimativa (feeling) é mais de 90% Java.

Uma explicação sobre a popularidade Android não afetar a do Java é que se pesquisa Android Programming, e não Java Programming, para evitar resultados sobre o Java puro, então, a quantidade de resultados sobre o Java acaba prejudicando sua popularidade no TIOBE.

[quote=A H Gusukuma][quote=juliocbq][quote=A H Gusukuma] A grande maioria dos desenvolvedores Android usam Java, é claro que existem alternativas, mas, é num volume muito baixo comparado com o número de desenvolvedores Java.
Como posso ter essa convicção? Baseado em: quantidade de livros sobre Android SDK (Java), blogs sobre Android, forúns Android, comunidade Android, e, principalmente, o site Developer Android.
Sei que o índice TIOBE tem distorções, sempre teve, mas atualmente com o surgimento das plataformas moveis, essas distorções estão gritantes. Praticamente não servindo mais como uma informação razoável para se medir a popularidade das linguagens mais usadas.
Outra coisa, no Android, muitos jogos são programados em Java, aliás, é a principal plataforma que se programa jogos em Java!

[/quote]

Não é um volume tão baixo não . Muita gente usa C para criar apis para aplicações que funcionam com o dispositivo rootado. Need for speed most wanted roda num dispositivo de baixo custo com todo aquele desempenho gráfico. Podemos colocar uns 60% Java e 40% as outras! porque o android é um Linux . E isso quer dizer que qualquer software compilado o toolchain da plataforma correta roda ali.[/quote]
A minha estimativa (feeling) é mais de 90% Java.

Uma explicação sobre a popularidade Android não afetar a do Java é que se pesquisa Android Programming, e não Java Programming, para evitar resultados sobre o Java puro, então, a quantidade de resultados sobre o Java acaba prejudicando sua popularidade no TIOBE.
[/quote]

Olha aqui.

http://blog.xamarin.com/vision-mobile/

As empresas querem suporte multiplataforma. De acordo com a pesquisa a xamarin com o mono está em alta. Existe o qt também que programa qualquer coisa.

Não, o que o texto afirma é o que é importante para escolher uma ferramenta multi-plataforma.

Olha, hoje, as ferramentas multi-plataformas ainda não tem uma penetração tão grande. Pode (e gostaria que fosse) e deve ser uma tendência.

[quote=A H Gusukuma][quote=juliocbq]
Olha aqui.

http://blog.xamarin.com/vision-mobile/

As empresas querem suporte multiplataforma. De acordo com a pesquisa a xamarin com o mono está em alta. Existe o qt também que programa qualquer coisa.

[/quote]
Não, o que o texto afirma é o que é importante para escolher uma ferramenta multi-plataforma.

Olha, hoje, as ferramentas multi-plataformas ainda não tem uma penetração tão grande. Pode (e gostaria que fosse) e deve ser uma tendência.
[/quote]

[quote]VisionMobile, a leading market analysis and strategy firm for all things mobile, recently issued a report on Cross-Platform Developer Tools ? and has identified Xamarin?s MonoTouch and Mono for Android as the best fit mobile development platforms for CIOs looking to mobilize enterprise applications.

The study also finds MonoTouch and Mono for Android scores highest for a number of important criteria: support, servics and device access.
[/quote]

Pois é essa a ideia. Quantas soluções no mercado estão disponíveis nas lojas da Google e da Apple ? Essas empresas já usam essas ferramentas.

[quote=juliocbq][quote=A H Gusukuma][quote=juliocbq]
Olha aqui.

http://blog.xamarin.com/vision-mobile/

As empresas querem suporte multiplataforma. De acordo com a pesquisa a xamarin com o mono está em alta. Existe o qt também que programa qualquer coisa.

[/quote]
Não, o que o texto afirma é o que é importante para escolher uma ferramenta multi-plataforma.

Olha, hoje, as ferramentas multi-plataformas ainda não tem uma penetração tão grande. Pode (e gostaria que fosse) e deve ser uma tendência.
[/quote]

[quote]VisionMobile, a leading market analysis and strategy firm for all things mobile, recently issued a report on Cross-Platform Developer Tools ? and has identified Xamarin?s MonoTouch and Mono for Android as the best fit mobile development platforms for CIOs looking to mobilize enterprise applications.

The study also finds MonoTouch and Mono for Android scores highest for a number of important criteria: support, servics and device access.
[/quote]

Pois é essa a ideia. Quantas soluções no mercado estão disponíveis nas lojas da Google e da Apple ? Essas empresas já usam essas ferramentas.

[/quote]

Se essas ferramentas fossem tão usadas afetariam muito mais a plataforma da Apple, pois é muito mais fácil desenvolver em Java que em Objective-C. Ou, pelo menos, afetaria igualmente já que é multi-plataforma e não apenas o Java.
A minha colocação é que o índice está superestimando a popularidade do Objective-C e subestimando a do Java.