Sobre as motivações da pesquisa, o Emerson Murphy-Hill, professor da UCN e co-autor do artigo, comenta:
Queríamos explorar as percepções de programadores veteranos como pessoas fora de sintonia com as tecnologias emergentes, e ver se poderíamos determinar se os programadores mais velhos realmente conseguem acompanhar as mudanças na área. Descobrimos que, em alguns casos, os programadores veteranos chegam a ter uma pequena vantagem.
Para realizar o estudo, os autores coletaram todas as questões respondidas em 2012 por cerca de 84 mil usuários do Stack Overflow, com idade entre 15 e 70 anos e com reputação entre 2 e 100 mil.
O Stack Overflow é um conhecido site de perguntas e respostas sobre desenvolvimento de software; conta com um sistema de reputação baseado na pontuação dada a cada resposta pela comunidade. O site conta em suas bases com mais de 4 milhões de questões e quase 2 milhões de usuários registrados (embora o registro não seja obrigatório). Desses, cerca de 300 mil especificaram sua idade.
O resultado apresentou uma média de idade de 29 anos. A partir dessa amostra, os pesquisadores extraíram as respostas para três questões, que apresentamos a seguir.
Considerando os pontos de reputação como forma de medir o conhecimento em programação, os autores coletaram o número de programadores, o total de reputação deles e o total de usuários por mês de cada idade entre 10 e 70 anos. A conclusão foi que existe uma relação positiva entre idade e reputação - a reputação cresce aproximadamente de forma linear dos 10 até os 50 anos, conforme mostra o gráfico a seguir:
Programadores mais velhos têm uma variedade maior de habilidades e conhecimentos em tecnologia do que os mais jovens?
O Stack Overfow possui um recurso de tags que permite relacionar um ou mais assuntos a cada pergunta postada (ex: "javascript", "c", "algorithm", "design-patterns" etc.). Os autores da pesquisa contabilizaram a quantidade de tags distintas em cada idade e normalizaram esse total pelo número de programadores daquela faixa etária. O resultado (veja gráfico abaixo) foi que o grupo com idade por volta de 30 é o que demonstra conhecer o menor número de tecnologias. O número aumenta para quem tem por volta de 40 anos. E são os profissionais com mais de 50 que apresentam um repertório de conhecimento mais variado.
Para responder essa questão, os programadores foram divididos em dois grupos: os com até 36 anos, e os mais velhos, com 37 anos ou mais. Considerando a pontuação de cada resposta, os autores separaram as respostas referentes a algumas tecnologias introduzidas nos últimos 5 a 10 anos: Clojure, Django, Git, iOS, jQuery, LINQ, MongoDB, Ruby on Rails, Silverlight e Windows Phone 7.
Após comparação, o resultado foi que ambos os grupos mostraram pontuações similares para cada tecnologia. As exceções foram iOS e Windows Phone, em que, talvez supreendentemente, os veteranos apresentaram vantagem significativa em relação aos mais jovens.
Importante observar que o comparativo não aponta qual grupo aprende melhor uma nova tecnologia. O objetivo dos autores foi verificar que os programadores mais velhos conseguem, de fato, aprender novas tecnologias.
Apesar de os autores apontarem algumas limitações no estudo, com ele foi possível demonstrar uma correlação entre idade e reputação no Stack Overflow, indicando que o conhecimento em programação pode ser mantido em alto nível por desenvolvedores relativamente mais velhos.
Outro ponto é a constatação de que os programadores mais velhos são capazes de continuar acumulando conhecimento, inclusive sobre tecnologias novas. Isso contribui para invalidar o preconceito de os programadores veteranos possuírem menos capacidade em lidar com tecnologias e tendências mais recentes.
E você, o que acha das conclusões dessa pesquisa sobre a idade e conhecimento dos desenvolvedores? O mito contra os programadores mais velhos se justifica?