Eu gosto muito de ler, principalmente livros. As vezes prefiro ler as legendas de um vídeo do que propriamente ficar olhando o mesmo.
Porém para aprender, sinto um pequeno gap apenas com leitura, falta algo. E com programação, esse gap fica muito grande. É preciso "colocar a mão na massa" além da teoria.
O que tem me ajudado muito a aprender Rust e Java, é escolher um problema para resolver, e deixar esse problema me impulsionar para aprender sobre novos conceitos e técnicas.
Isso faz com que eu aprenda essas técnicas novas quando faz sentido aplica-lás. A "hierarquia" da aprendizagem fica um pouco ao contrário da escola, que é como geralmente estudamos. Não é nos apresentado um conteúdo e dito "isso é importante", e sim o contrário, precisamos do material para resolver um determinado problema.
No trabalho atual que desenvolvo com Java, é "fácil" aprender pois tenho tarefas a serem desenvolvidas que os cliente precisam. Então tenho direcionado meu problema para resolver, me baseio em soluções parecidas, busco novas, e resolvo.
Já para aprender Rust, preciso encontrar esses problemas. Comecei pelo clássico aplicativo de To-do. Vi algumas soluções, entendi os motivos de usarem determinadas coisas e tentei fazer o meu. Mas é muito vago, cheguei a usar uma crate de Rust sem ao menos saber exatamente o que ela fazia.
Um caminho que experimentei e deu certo é:
- Entender e definir o problema;
- Explorar o que já se sabe sobre e tentativas anteriores de solução;
- Determinar as necessidade (conhecimento, ferramentas) para solucionar;
- Explorar diferentes opções de solução;
- Resolver o problema;
- Avaliar pontos de melhoria.
E olha só, nada disso é novidade. Vários métodos de aprendizagem falam sobre vários desses mesmos pontos. Explorar, definir, entender, avaliar. Nada é novo ou muito complicado, sempre partimos do básico bem feito.
Agora falta eu achar um problema bacana para resolver com Rust.
Top comments (0)