Estou com muita dificuldade de acompanhar o módulo "Flask: desenvolvendo APIs e aplicações web com MongoDB" e queria registrar um feedback bem específico, porque não é uma sensação vaga de "tá difícil" — é um padrão que consigo apontar com exemplos.
Nas aulas de modelagem de dados (configuração do modelo Product com Pydantic), surgem de uma vez, sem introdução prévia:
- Uso avançado de Pydantic:
Field(alias=...),ConfigDict(populate_by_name=..., arbitrary_types_allowed=...) - Herança de classe aplicada a um model (
class ProductDBModel(Product)) - Sobrescrita de método com
super() - Desempacotamento de dicionário em argumentos (
**product) - List comprehension combinada com instanciação de objeto
- Import com wildcard (
from ... import *) - MongoDB e conversão de
ObjectId, sendo a primeira vez que o aluno tem contato prático com um banco NoSQL
Isso não é uma crítica genérica: já revisei os cursos anteriores da minha trilha (POO com herança e polimorfismo, POO aplicada com classes/property/composição, e o curso de persistência com SQL/FastAPI) e nenhum deles cobre super(), **kwargs, list comprehension ou os recursos avançados do Pydantic (Field, ConfigDict, alias, model_dump). O Pydantic até é citado brevemente em um desses cursos, mas só como "instale via pip, ele valida dados" — nunca é ensinado como usar de verdade. MongoDB, da mesma forma, aparece só como item de instalação em outro curso, nunca é praticado.
Ou seja, essa aula específica presume um repertório que a trilha, até este ponto, simplesmente não construiu. O resultado prático é que fico copiando o código do vídeo sem entender por que cada peça está ali, o que é o oposto do que eu esperava de uma trilha estruturada.
Isso desmotiva bastante: ver um monte de conceito novo empilhado de uma vez, sem nexo entre o que já foi ensinado e o que está sendo pedido agora, passa a sensação de estar sempre um passo atrás, mesmo estudando na ordem certa. Uma trilha de carreira deveria evitar exatamente esse tipo de salto — ou intercalando uma aula-ponte antes de usar essas ferramentas, ou pelo menos sinalizando "isso aqui é avançado, veja tal referência antes".
Sugestão: incluir uma aula (ou ao menos um "para saber mais" mais completo) cobrindo super(), desempacotamento de argumentos e os recursos do Pydantic antes de usá-los em um projeto prático, e uma introdução mínima ao MongoDB antes do módulo de Flask que já assume familiaridade com ele.