Esta é a quinta pesquisa anual oficial para desenvolvedores Python, conduzida como um esforço colaborativo entre a Python Software Foundation e a JetBrains. No outono de 2021, mais de 23.000 desenvolvedores e entusiastas do Python de quase 200 países/regiões participaram da pesquisa para revelar o estado atual da linguagem e do ecossistema ao seu redor.
Principal
Secundária
Nos últimos 4 anos, a parcela de desenvolvedores que usam o Python como linguagem principal permanece no mesmo nível de 84-85%.
40%
41%
JavaScript
38%
38%
HTML/CSS
33%
35%
Bash/Shell
33%
33%
SQL
30%
29%
C/C++
20%
20%
Java
11%
11%
C#
10%
9%
TypeScript
9%
8%
Go
9%
10%
PHP
6%
5%
Rust
5%
6%
R
4%
4%
Visual Basic
3%
3%
Kotlin
O JavaScript é a linguagem mais popular usada com o Python. No entanto, para desenvolvedores que usam o Python como linguagem secundária, o C/C++ são quase tão populares quanto o JavaScript. O HTML/CSS, o Bash/Shell e o SQL também são comuns, cada um sendo usado por mais de um terço dos desenvolvedores Python.
42%
49%
SQL
37%
45%
Bash/Shell
36%
69%
JavaScript
34%
60%
HTML/CSS
33%
19%
C/C++
Desenvolvimento Web refere-se a pessoas que selecionaram "Desenvolvimento Web" em resposta à pergunta "Para o que você mais usa o Python?". Os dados referem-se a pessoas que selecionaram "Análise de dados" ou "Machine learning" na mesma pergunta.
Como era de se esperar, as linguagens mais populares usadas junto com o Python pelos desenvolvedores Web são JavaScript (69%) e HTML/CSS (60%), enquanto os desenvolvedores envolvidos em tarefas relacionadas a dados costumam usar o SQL (42%). Além disso, em comparação com os desenvolvedores Web, a proporção de desenvolvedores que não usam uma linguagem adicional é três vezes maior entre aqueles que estão envolvidos em tarefas relacionadas a dados.
Nesta seção, fizemos perguntas para descobrir para que as pessoas usam o Python, em que tipos de desenvolvimento elas estão envolvidas e como combinam seus vários usos.
Tanto para o trabalho quanto para projetos pessoais
Para projetos pessoais, educacionais ou paralelos
Para o trabalho
51%
54%
Análise de dados
45%
48%
Desenvolvimento Web
36%
38%
DevOps/Administração do sistema/Composição de scripts de automação
36%
38%
Machine learning
31%
35%
Programação de web parsers/scrapers/crawlers
Não há grandes mudanças na distribuição dos casos de uso do Python ao longo dos anos. Análise de dados, machine learning, desenvolvimento Web e DevOps ainda são as áreas mais populares para o uso do Python.
52%
46%
Análise de dados
48%
32%
Desenvolvimento Web
37%
30%
Machine learning
35%
37%
DevOps/Administração do sistema/Composição de scripts de automação
32%
28%
Programação de web parsers/scrapers/crawlers
Desenvolvimento Web
Análise de dados
Machine learning
Testes de software/Criação de testes automatizados
Prototipagem de software
DevOps/Administração do sistema/Composição de scripts de automação
Fins educacionais
Desenvolvimento para desktop
Desenvolvimento embarcado
Programação de rede
Desenvolvimento móvel
Desenvolvimento de aplicações multimídia
Computação gráfica
Programação de web parsers/scrapers/crawlers
Desenvolvimento de jogos
Outros
23%
25%
Desenvolvimento Web
17%
17%
Análise de dados
11%
13%
Machine learning
10%
10%
DevOps/Administração do sistema/Composição de scripts de automação
9%
7%
Fins educacionais
Um quarto dos desenvolvedores que usam o Python como linguagem principal o usam principalmente para desenvolvimento Web. Entre aqueles para quem o Python é uma linguagem secundária, apenas 12% o usam principalmente para desenvolvimento Web.
Curiosamente, a análise de dados como um campo primário para uso do Python é mencionada por quase a mesma parcela dos desenvolvedores, tanto para quem ele é a linguagem de programação principal (17%) quanto secundária (16%).
Essa pergunta foi respondida apenas por entrevistados que estão envolvidos em análises de dados e machine learning.
Apenas 29% dos desenvolvedores Python envolvidos em análises de dados e machine learning se consideram Cientistas de Dados.
2021
2020
2019
2018
2017
Em média, a participação de usuários do Python 2 diminui 5 pontos percentuais a cada ano, e agora apenas 5 desenvolvedores em 100 o utilizam.
É interessante que, comparado ao Python 3, o Python 2 é mais frequentemente aplicado a áreas de computação gráfica, jogos e desenvolvimento móvel.
54%
31%
Análise de dados
48%
24%
Desenvolvimento Web
38%
27%
DevOps/Administração do sistema/Composição de scripts de automação
38%
16%
Machine learning
34%
14%
Programação de web parsers/scrapers/crawlers
Python 3.5 ou inferior
Python 3.6
Python 3.7
Python 3.8
Python 3.9
Python 3.10
Observação: o Enthought obteve menos de 0,5% e foi combinado com a categoria "Outros".
Mais da metade dos usuários do Windows obtêm o Python da Python.org, enquanto, apenas um terço dos usuários do Linux fazem o mesmo. Como era de se esperar, os usuários de Linux e macOS geralmente instalam e atualizam o Python usando as opções fornecidas pelo sistema operacional. Ao mesmo tempo, para usuários do macOS, os contêineres pyenv e Docker também são formas bastante populares de obter o Python.
Entre os desenvolvedores Python, 75% usam algumas ferramentas para isolar ambientes Python. Curiosamente, o Conda é a ferramenta mais popular entre os desenvolvedores que utilizam o Jupyter Notebook (50%), enquanto outros desenvolvedores preferem o Virtualenv e o Docker.
O Flask, o Django e a FastAPI ainda são as três principais frameworks da Web para Python. A FastAPI, lançada inicialmente no final de 2018, apresenta o crescimento mais rápido, tendo aumentado 9 pontos percentuais em relação ao ano anterior. Ao mesmo tempo, em comparação com 2020, a parcela de usuários do Flask diminuiu 5 pontos percentuais.
Você pode encontrar mais informações sobre o panorama do framework Django na Pesquisa para desenvolvedores Django de 2021, conduzida em parceria com a Django Software Foundation.
10% dos desenvolvedores Python usam simultaneamente 7 ou mais frameworks de ciência de dados e bibliotecas, enquanto cerca de metade deles usa 2 ou menos frameworks.
A maioria das outras frameworks é mais popular entre os desenvolvedores Web do que entre os cientistas de dados, que usam o Tkinker e o PyQT com uma frequência significativamente maior.
A popularidade dos diferentes frameworks de testes de unidade do Python permanece quase a mesma em comparação com o ano passado.
Embora apenas 56% dos desenvolvedores individuais as utilizem, 75% dos entrevistados de empresas com 5.000 ou mais funcionários mencionam o trabalho com frameworks de testes de unidade.
O SQLAlchemy é o ORM mais popular entre todos os usuários de bancos de dados.
É interessante que 52% dos usuários do Redis usam o Django ORM, enquanto ele é geralmente usado por menos de um terço dos desenvolvedores Python. Igualmente digno de nota é que 20% dos usuários do Amazon Redshift usam o SQLObject, enquanto, entre a população geral esse número é de apenas 5%.
Entre os cientistas de dados, 80% usam bancos de dados, enquanto, entre desenvolvedores Web, 98% fazem o mesmo.
Aqueles que estão envolvidos em desenvolvimento Web usam o PostgreSQL com uma frequência 32% superior, o Redis com uma frequência 25% superior e o SQLite com uma frequência 12% superior em comparação com aqueles envolvidos em ciência de dados. Ao mesmo tempo, os cientistas de dados mencionam usar o Oracle Database duas vezes mais que os desenvolvedores Web.
A distribuição de ferramentas de big data permanece praticamente a mesma em relação ao ano passado. Em geral, os cientistas de dados as utilizam com uma frequência 13% superior em comparação a outros desenvolvedores, enquanto o Apache Spark e o Dask são cerca de duas vezes mais populares entre eles.
dos desenvolvedores Python usam plataformas de nuvem.
Essa pergunta foi respondida apenas por entrevistados que usam plataformas de nuvem.
Curiosamente, os usuários do Visual Basic, C# e C/C++ usam a AWS com quase metade da frequência dos desenvolvedores Python em geral.
48%
47%
Dentro de containers
41%
43%
Em máquinas virtuais
27%
27%
Em uma plataforma como serviço
24%
25%
Serverless
2%
2%
Outros
Essa pergunta foi respondida apenas por entrevistados que usam plataformas de nuvem.
As máquinas virtuais continuam a perder popularidade. Em 2018, elas tinham uma parcela de 47% e eram a escolha mais popular. Agora, apenas 41% dos desenvolvedores Python as utilizam.
53%
56%
Localmente com o virtualenv
41%
40%
Em containers do Docker
20%
21%
Em máquinas virtuais
19%
17%
Em ambientes de desenvolvimento remoto
18%
18%
Com um interpretador de sistema local
Essa pergunta foi respondida apenas por entrevistados que usam plataformas de nuvem.
O desenvolvimento Python local com o virtualenv é extremamente popular entre aqueles envolvidos em desenvolvimento Web, DevOps e prototipagem de software (61-65%). O uso de contêineres do Docker é mais popular entre os desenvolvedores Web (54%).
Máquinas virtuais são amplamente utilizadas por desenvolvedores envolvidos em DevOps, machine learning e programação de rede (26-27%). Curiosamente, aqueles envolvidos em DevOps e machine learning também usam ambientes de desenvolvimento remoto com mais frequência do que todos os outros entrevistados.
Linux
Windows
macOS
BSD
Outros
Em comparação com 2020, a popularidade do Linux e do macOS diminuiu 5 pontos percentuais cada, enquanto o uso do Windows aumentou 10 pontos percentuais.
Introduzido em 2018, o GitHub Actions rapidamente ganhou popularidade e agora está em primeiro lugar na lista de sistemas de CI, sendo usado por pouco menos de um terço dos desenvolvedores Python.
Outro sistema de CI em crescimento é o Gitlab CI: seu uso aumentou 4 pontos percentuais desde 2018. Ao mesmo tempo, o Travis CI está perdendo rapidamente sua popularidade, com uma queda de 13% em relação a 2018. O Jenkins/Hudson também perdeu 8 pontos percentuais em três anos.
dos programadores Python usam ferramentas de documentação. A mais popular é o Sphinx.
Sphinx
MKDocs
Doxygen
Outros
usam complementação automática no editor
refatoram código
usam Sistemas de Controle de Versão
usam ambientes virtuais Python para projetos
usam linting de código
escrevem testes para código
usam bancos de dados SQL
usam dicas de tipo opcionais
usam um depurador
executam/depuram ou editam código em máquinas remotas
usam ferramentas de Integração Contínua
usam Rastreadores de Issues
usam cobertura de código
usam um profiler Python
usam bancos de dados NoSQL
Aqueles que usam o Python como linguagem principal usam um profiler Python e cobertura de código com uma frequência 8% superior e ambientes virtuais Python com uma frequência 10% superior para seus projetos em comparação com desenvolvedores que usam o Python como linguagem secundária.
A parcela combinada das edições PyCharm Community e Professional é de 31%, o que está próximo do resultado do ano passado. O VS Code cresceu 6 pontos percentuais em relação ao ano passado.
Curiosamente, o PyCharm e o VS Code são igualmente populares entre os desenvolvedores Web (39%), enquanto os cientistas de dados preferem o VS Code por 9 pontos percentuais a mais como IDE principal.
Para identificar os editores e IDEs mais populares, fizemos uma pergunta de resposta única "Qual é o editor principal que você usa para o seu desenvolvimento Python atual?".
36%
39%
VS Code
27%
39%
PyCharm
5%
7%
Vim
2%
1%
Atom
2%
2%
Emacs
Desenvolvimento Web refere-se a pessoas que selecionaram "Desenvolvimento Web" em resposta à pergunta "Para o que você mais usa o Python?". Os dados referem-se a pessoas que selecionaram "Análise de dados" ou "Machine learning" na mesma pergunta.
As maneiras mais populares pelas quais os desenvolvedores Python ficam sabendo sobre seus IDEs principais são por meio de atividades de aprendizagem, recomendações de amigos/colegas ou mecanismos de pesquisa.
Curiosamente, apenas 1% dos entrevistados mencionou que a publicidade foi uma fonte de descoberta da ferramenta.
57% daqueles que usam o Jupyter Notebook ficam sabendo sobre ele na escola/universidade ou em cursos online, enquanto 25% dos entrevistados em geral ficam sabendo sobre suas ferramentas da mesma maneira.
1
2
3
4
5 e mais
O VS Code, o Jupyter Notebook e o PyCharm são os mais populares para usar além do IDE principal. Cada um é usado por mais de 20% dos desenvolvedores Python.
Diariamente
Semanalmente
Mensalmente
Menos frequência
O VS Code, o Jupyter Notebook e o PyCharm são os mais populares para usar além do IDE principal. Cada um é usado por mais de 20% dos desenvolvedores Python.
Aqueles que usam o Jupyter Notebook como seu IDE principal também usam o Spyder cerca de quatro vezes mais do que outros desenvolvedores Python.
Em 2021, a Python Software Foundation nomeou um novo desenvolvedor residente (Developer-in-Residence) para trabalhar em tempo integral na linguagem de programação Python e apoiar sua comunidade de desenvolvedores.
O desenvolvedor principal Łukasz Langa foi contratado para o cargo CPython DIR em julho. Langa está trabalhando para ajudar a limpar o backlog, investigar as prioridades do projeto e analisar outras áreas de interesse.
Parece boa, mas ainda não vi nenhum impacto
Parece boa e já estou vendo impacto
Não me agrada
Nunca ouvi falar
23% dos desenvolvedores Python já conhecem a função Developer-in-Residence, e 91% deles consideram essa iniciativa boa.
Além disso, 30% dos desenvolvedores que conhecem a função Developer-in-Residence já veem o impacto dessa inovação.
Apenas 19% dos usuários do Python já chegaram a relatar seus bugs. Curiosamente, o site bugs.python.org não é a maneira mais popular de relatá-los: cerca de duas vezes mais programadores preferem perguntar em outro lugar ou enviar uma solicitação pull ao GitHub.
Daqueles que relataram bugs, 73% tiveram o problema resolvido, e apenas 7% dos entrevistados disseram que nunca tiveram retorno de ninguém.
Esta pergunta foi respondida apenas por entrevistados que já relataram problemas.
dos desenvolvedores Python usam contêineres, e 59% deles usam um ambiente virtual dentro desses contêineres.
45% dos desenvolvedores Python usam algumas ferramentas para afixar versões de dependências de aplicações. A maneira mais comum de armazená-las é em requirements.txt, que é usado por três quartos dos desenvolvedores.
Essa pergunta apenas foi respondida pelos entrevistados que usam algumas ferramentas para gerenciar versões precisas/exatas de dependências de aplicações.
poetry
pipenv
pip-tools
Outros
Nenhuma opção
Essa pergunta apenas foi respondida pelos entrevistados que usam algumas ferramentas para gerenciar versões precisas/exatas de dependências de aplicações.
90% dos desenvolvedores mencionam que usam o pip para instalar pacotes Python. O Python Package Index é o local mais popular para obter os pacotes.
dos desenvolvedores Python dizem que desenvolvem aplicações, e a Setuptools é a ferramenta mais popular para essa finalidade, usada por 46% dos desenvolvedores.
Essa pergunta foi respondida apenas por entrevistados que desenvolvem aplicações.
Embora mais da metade dos usuários do Python desenvolvam aplicações, apenas 40% deles já as publicaram em um repositório de pacotes.
Essa pergunta foi respondida apenas por entrevistados que desenvolvem bibliotecas Python.
34% dos entrevistados desenvolvem bibliotecas Python e, para eles, a Setuptools é a maneira mais comum de criar os pacotes, sendo usada por 71%.
Curiosamente, apenas 27% dos desenvolvedores de bibliotecas Python já as publicaram em um repositório de pacotes.
PyPI
Python Package Index privado
Espelho interno do PyPI
conda-forge
Outros
Essa pergunta foi respondida apenas por entrevistados que publicaram suas bibliotecas Python em pacotes.
O Python Package Index é o local mais popular para publicar bibliotecas desenvolvidas e pacotes de aplicações, enquanto o PyPI privado é usado com cerca da metade da frequência.
Trabalham em equipe
Trabalham em seus próprios projetos de maneira independente
Trabalham como consultor externo ou instrutor
Trabalham em muitos projetos diferentes
Trabalham em um projeto principal e em vários projetos paralelos
Trabalham apenas em um projeto
Essa pergunta só foi respondida por entrevistados que trabalham em empresas.
2 a 7
8 a 12
13 a 20
21 a 40
> 40
Essa pergunta só foi respondida por entrevistados que trabalham em empresas.
Essa pergunta só foi respondida por entrevistados que trabalham em empresas.
Essa pergunta só foi respondida por entrevistados que trabalham em empresas.
Essa pergunta só foi respondida por entrevistados que estão empregados.
18–20
21–29
30–39
40–49
50 a 59
60 anos ou mais
Menos de 1 ano
1 a 2 anos
3 a 5 anos
6 a 10 anos
Mais de 11 anos
Menos de 1 ano
1 a 2 anos
3 a 5 anos
6 a 10 anos
Mais de 11 anos
Todos os países/regiões com menos de 1% foram mesclados em "Outros".
Quer se aprofundar mais nos dados? Baixe as respostas anônimas da pesquisa e veja o que você pode aprender. Compartilhe suas descobertas e ideias mencionando @jetbrains e @ThePSF no Twitter com a hashtag #pythondevsurvey.
Pelo menos dois dos seguintes:
Mais uma vez, em nome da Python Software Foundation e da JetBrains, gostaríamos de agradecer a todos os que participaram desta pesquisa. Com a ajuda de vocês, fomos capazes de mapear o panorama da comunidade Python com mais precisão!
Contribua com a Campanha de Doações Recorrentes da PSF. A PSF é uma organização sem fins lucrativos inteiramente apoiada por seus patrocinadores, membros e o público.
Confira os resultados da Pesquisa de Desenvolvedores Python em 2020 , 2019 , 2018 e 2017.
Descubra os outros relatórios de pesquisa em grande escala da JetBrains!
Esperamos que você tenha achado nosso relatório útil. Compartilhe este relatório com seus amigos e colegas!