Uma opção válida para quem está começando com Python hoje
Eu estava revisando materiais de introdução à programação quando encontrei o python crash course eric matthes pela terceira ou quarta vez. A pergunta que sempre volta é a mesma: esse livro ainda faz sentido em 2024, ou já vira pó na prateleira digital? A resposta curta é que ele continua útil, mas só se você souber onde ele peca. O livro foi lançado originalmente em 2015 e passou por uma atualização significativa na segunda edição. Eric Matthes parte do conceito mais básico — variáveis, strings, dicionários — e avança até projetos concretos como gráficos interativos com pygame e visualizações com plotly. A progressão é lógica. Eu li esse material quando ainda ensinava Python para iniciantes em cursos presenciais, e ele funcionava como base sólida para as primeiras seis semanas de trabalho.
python crash course eric matthes como ponto de partida
O que diferencia esse livro da maioria dos tutoriais gratuitos na internet é a intenção didática. Cada capítulo termina com exercícios propostos, muitos deles com soluções disponíveis. Eu já vi alunos perderem dias tentando depurar um erro de sintaxe porque o código-fonte do exercício simplesmente não foi explicado com clareza. Nesse livro, os exemplos são repetidos de forma suficiente para fixar o padrão, mas não tanto a ponto de soar repetitivo. A estrutura segue um caminho previsível: fundamentos, listas e dicionários, laços de repetição, funções, classes, arquivos e testes unitários. A parte de testes unitários é frequentemente negligenciada em outros materiais introdutórios, mas Eric dedica um capítulo inteiro a isso. Eu recomendaria isso com muita calma se você quiser ir além do Hello World. Testar seu código desde o início economiza horas de dor de cabeça depois, especialmente quando o projeto cresce.
Existe um problema específico que eu encontrei ao usar esse material. A segunda edição usa Python 3.6+, mas muitos dos comandos de instalação no site oficial e nos repositórios do GitHub ainda referenciam versões mais antigas do pip e virtualenv. Quando um aluno meu tentou rodar o projeto de gráfico com matplotlib em um ambiente virtual atualizado, recebeu erros de dependência conflitante que não apareciam no livro. A solução foi forçar a instalação das versões específicas indicadas nos comentários do repositório do GitHub, não nas páginas do site.
O que o livro oferece e onde ele falha
O livro cobre cerca de 20 projetos ao longo de seus 500 páginas. Os primeiros capítulos são rápidos e diretos. A parte de jogos com Pygame é onde mais gente se empolga, mas também é onde mais problemas aparecem. Eu já vi pessoas travarem por horas porque uma versão específica da biblioteca não era compatível com o sistema operacional delas. Não é falha do livro em si, mas sim da eclosão de dependências que o Python carrega consigo. Um ponto que poucos mencionam: o livro não entra fundo em tipagem estática, type hints, nem em patterns de design avançados. Isso não é necessariamente ruim, mas é importante saber que, ao terminar a leitura, você estará preparado para escrever scripts funcionais, não para estruturar aplicações grandes do zero. Se o seu objetivo é engenharia de software séria, considere complementar com outros materiais após concluir o livro.
A parte de projetos web usando Django é interessante, mas limitada. O autor passa por conceitos básicos de modelos, views e templates, mas não chega a abordar autenticação avançada, APIs REST ou deploy em produção. Eu usei esses capítulos como introdução, mas depois direcionei meus alunos para documentações oficiais e tutoriais mais específicos sobre Django.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Dados concretos sobre o livro
Segunda edição. Publicado pela No Starch Press. Cerca de 544 páginas. O código-fonte completo está disponível no GitHub do autor, repositório chamado python_crash_course. A primeira edição saiu em 2015, a segunda em 2019. O preço varia entre 40 e 60 dólares na versão impressa, e cerca de 30 dólares no eBook. Em plataformas como Amazon e Kaggle, é possível encontrar cópias usadas ou acesso digital por preços menores. O repositório oficial está em https://github.com/ehmatthes/pcc_2e. Lá você encontra todos os exercícios, soluções opcionais e notas de atualização. Eu recomendo baixar o código antes mesmo de começar a ler, para verificar se há alguma correção recente que o PDF impresso ainda não traz.
Contras que merecem atenção
O livro é bom, mas tem limitações claras. A primeira é a velocidade. Alguns capítulos avançam rápido demais para pessoas sem nenhuma experiência prévia em lógica de programação. Eu já vi iniciantes absolutos precisarem de duas ou três leituras para absorver o conteúdo de classes e herança, simplesmente porque o ritmo era acelerado demais. Outro ponto: o livro não aborda muito bem bibliotecas modernas como pandas para análise de dados ou fastapi para desenvolvimento web atual. Se o seu interesse é data science ou APIs RESTful contemporâneas, vá além desse material. Ele serve como base, não como destino final.
Também notei que a parte de deployment e configurações de servidor é praticamente inexistente. O livro termina nos conceitos de projeto web, mas não mostra como colocar algo no ar de verdade. Isso é uma lacuna importante se você pretende usar o conhecimento em um contexto profissional.
Alternativas que eu considero
Se você já tem alguma experiência com programação e quer algo mais direto, Automate the Boring Stuff with Python do Al Sweigart pode ser mais produtivo. Se o foco é ciência de dados desde o início, Python for Data Analysis do Wes McKinney é mais adequado. O python crash course eric matthes funciona melhor como primeiro contato sistemático com a linguagem, desde que você tenha consciência das suas limitações. Eu li o livro duas vezes, uma em 2016 e outra em 2020, antes de adotar outros materiais como referência principal. A segunda leitura me mostrou coisas que eu tinha ignorado na primeira, especialmente na parte de testes e organização de código. Isso indica que o conteúdo tem densidade suficiente para ser revisitado, mesmo que alguns exemplos pareçam datados.
A versão mais recente mantém o foco em Python 3. Se você estiver usando Python 2 por qualquer motivo, esse livro não servirá. Mas esse é um cenário raro hoje em dia. A comunidade já migrou quase completamente para a versão 3. O livro funciona bem em formato físico ou digital. Eu pessoalmente prefiro o digital para consultar rapidamente durante os exercícios, mas muitos leitores relatam que a experiência de leitura no papel é mais confortável para acompanhar a progressão dos capítulos. Não há diferençanel no conteúdo entre as versões.
Se você está em dúvida se vale a pena investir tempo nisso, a minha resposta prática é: sim, mas com os pés no chão. Não espere que esse livro resolva todos os seus problemas de aprendizado. Ele abre portas, mas não caminha por você. O esforço adicional para praticar os exercícios e explorar os repositórios do GitHub é o que realmente faz a diferença.