Texto de Alberto Souza, o Dev Eficiente.
Definir um objetivo de aprendizado é algo que parece simples, mas não é tão fácil de fazer.
Quando pensamos em aprender algo, muitas vezes acabamos com um objetivo amplo demais e que não fala para a gente se estamos nos aproximando daquilo que queremos.
Alguns exemplos:
- Quero dominar arquitetura de software
- Quero melhorar a qualidade do meu código
- Quero dominar Spring
- Quero dominar programação reativa
- Quero dominar testes
Aqui temos algumas perguntas relacionadas.
A primeira é: como você sabe se está chegando mais perto do objetivo?
A segunda é: para que serve você aprender isso?
Aprendizado é um habilitador de capacidades.
Uma pergunta que considero mais interessante para definir seu objetivo é: qual é a próxima coisa que eu quero ser capaz de fazer?
Qual o próximo reconhecimento que eu espero ter?
Quando você encara o aprendizado como um habilitador, tende a ficar mais nítido o que você precisa estudar.
Um segundo ponto muito importante é sobre o controle que você tem em relação ao alcance do seu objetivo.
Tem objetivos que dependem só da gente e objetivos que não dependem só da gente.
Você querer ser capaz de desenvolver uma versão sua do Twitter utilizando Java e Spring depende só de você.
Agora, você querer ser reconhecido(a) como uma referência em Java ou Spring não depende só de você.
Quanto mais fora do seu controle é seu objetivo, mais desafiador tende a ser.
O terceiro ponto muito importante é que você precisar achar o ponto doce do objetivo.
Preste atenção na relação entre suas habilidades e o que você quer buscar.
- Se o objetivo subutilizar suas habilidades, ele tende a ser muito fácil e talvez não te faça querer ir atrás dele.
- Se o objetivo tiver muito das suas habilidades atuais, talvez te deixe frustrado(a) e te faça desistir mais facilmente
- Se o objetivo é um pouco além das suas habilidades vai te deixar naquele estado que você não quer parar de buscá-lo. É aqui que você deve tentar chegar.
Agora alguns exemplos de definição de objetivos que estão sob seu controle.
Fique atento às habilidades.
- Quero implementar minha versão de um Internet Banking com Java e Spring para verificar que sou capaz de desenvolver aplicações web com essas tecnologias.
- Quero implementar um projeto com x% de cobertura de código para verificar que sou capaz de escrever testes automatizados de maneira fluída.
- Quero abrir um Pull Request para um projeto-open source específico para verificar que sou capaz de fazer parte daquele projeto.
- Quero escrever um livro sobre a tecnologia X
- Quero criar uma palestra sobre a tecnologia X
- Quero criar meu canal no youtube sobre design de código
- Quero criar um curso
Tudo que está acima depende só de você.
E cada coisa vai exigir um grau e número de habilidades diferentes.
Só que quando você olha para elas, fica mais fácil de saber o que você precisa aprender.
Agora alguns exemplos de objetivos que não estão sob seu controle.
- Quero ser reconhecido como pleno/sênior/especialista no meu trabalho
- Quero ser convidado para palestrar no evento x
- Quero ser contratado para trabalhar no Netflix
- Quero vender pelo menos x matrículas para meu curso
- Quero ter x seguidores no meu canal do youtube
- Quero ter um Pull Request aprovado no projeto open-source x
Tudo acima está fora do seu controle e você não tem como garantir nada.
Automaticamente este tipo de objetivo fica mais desafiador.
A análise de habilidades continua valendo!
Quando você visualiza onde quer chegar, fica muito mais fácil de traçar o caminho.
Um ponto importante: para aumentar as chances de realizar seu objetivo que está fora do seu controle, maximize a realização dos objetivos que estão sob seu controle!