Gestão Dev & TIARTIGO

Aprendendo a aprender com as pessoas

Se você for humilde o suficiente para mudar de opinião, debater com isenção, e aceitar que não sabe de tudo, você estará intensificando suas relações e, de fato, aprendendo com as outras pessoas.

Você já parou para pensar em como aprende algo novo? Uma nova linguagem de programação, padrões e boas práticas, ou aquela arquitetura sobre a qual você ouve o tempo todo, mas vem adiando um estudo mais cuidadoso?

Parece uma pergunta com resposta simples, mas tudo começa a ficar mais complicado se você é um desenvolvedor em um mercado agitado, onde as tecnologias mudam e evoluem da noite para o dia, e onde o aprendizado rápido e a adaptação são fundamentais para manter-se atualizado.

Você pode preferir ler livros, ou fazer cursos, mas a verdade é que a troca de experiências tem um papel importante na manutenção do conhecimento, e ter a atitude certa em relação às pessoas ao seu redor pode te levar longe.

Em seu artigo sobre o ShuHaRi, o processo japonês de aprendizagem, Martin Fowler menciona que nos dois primeiros estágios, Shu e Ha, o estudante segue as instruções do mestre precisamente, focando em realizar a tarefa e, posteriormente, começa a desenvolver o entendimento da teoria por trás da técnica. O ponto aí é que há a figura do mestre, aquele que direciona os primeiros passos do discípulo e dá base para que ele possa seguir sozinho.

As virtudes de quem sabe aprender

Em empresas de tecnologia com times cada vez mais heterogêneos, onde encontramos pessoas com diferentes experiências, interesses e especialidades, há um terreno fértil para ampliar o seu entendimento sobre o que ainda não sabe, sobre o que sabe pouco, ou até mesmo o que se considera especialista.

Você precisa estar aberto a ouvir e a enxergar seus colegas como os mestres de algo que pode lhe ser útil em determinado momento. Em uma equipe onde todos trabalham pelos mesmos objetivos, um membro deve colaborar para a evolução do outro, em um processo que culmina em melhores resultados.

É preciso ter humildade para aprender com as outras pessoas.

Praticando a humildade

A humildade é considerada uma grande virtude, ligada ao bom caráter e à simplicidade. Mas, com um conceito tão abstrato, como promover essa característica no desenvolvimento de software?

O Extreme Programming (XP) é uma metodologia que tem como um de seus principais pilares a colaboração. Dentre os processos colaborativos propostos, quero citar dois que exercitam a humildade dos desenvolvedores: code review e pair programming.

Code Review

Todo código escrito por uma pessoa é revisado por um ou mais membros do time antes de ir para produção. O trabalho do autor passa pelo crivo de seus colegas, onde o conteúdo é avaliado de acordo com os padrões estabelecidos para a empresa, o projeto, ou o time.

O código é submetido a críticas e questionamentos, tudo em prol da qualidade do que é entregue, e da aderência aos critérios definidos e acordados entre todos. A adoção de ferramentas automáticas elimina discussões superficiais e abre caminho para debates construtivos. A intenção é que todos participem e aprendam.

Agir com humildade durante esse processo, levando em consideração a opinião dos envolvidos, facilita a discussão sobre determinado tópico e leva ao aperfeiçoamento da solução final. Além disso, é uma ótima ferramenta para a descoberta de gaps de conhecimento entre as pessoas. Nesse caso, o objetivo não é medir habilidades, mas sim promover a evolução de todos.

Pair Programming

Aqui, o código para realizar determinada tarefa é escrito “a quatro mãos”. Dois programadores trabalham juntos, em tempo real, na mesma solução. Enquanto um assume o papel de piloto, escrevendo o código e compartilhando sua linha de raciocínio, o outro atua como co-piloto, dando sugestões e fazendo perguntas. Os participantes revezam nessas posições a cada ciclo de tempo definido.

Agir com humildade frente às sugestões de seu par faz com que o código seja analisado de maneira mais pragmática, buscando o melhor caminho: Esta é mesmo a melhor solução? A mudança sugerida é mais adequada do que a implementação inicial? Por quê? As respostas para essas perguntas são discutidas imediatamente, com bastante interação entre os envolvidos.

Neste método, a troca de experiências é enorme. Quanto mais o par estiver aberto a ouvir e discutir, melhor será o resultado final e maior será o aprendizado.

O poder do “não sei”

Dizer “não sei”. Esta é possivelmente uma das coisas mais desconfortáveis para qualquer desenvolvedor de software. Especialmente os mais experientes, que são vistos como referência em certo assunto, linguagem de programação, framework etc. Certamente, é preciso humildade para admitir que você não sabe algo, e que não tem a resposta para determinada pergunta. Ao mesmo tempo, é algo libertador e abre portas para novas ideias.

Desde sempre, somos ensinados que é errado não saber de alguma coisa. Na escola, somos punidos por isso. Ficamos expostos e nos sentimos enfraquecidos. Na realidade, como alguém pode saber tudo sobre algo?

Partindo dessa premissa, é preciso entender as vantagens de admitir essa condição e buscar respostas, permitindo também que as pessoas ao seu redor compartilhem seu pensamento. Essa é uma característica muito valiosa para se ter no dia-a-dia de trabalho. Mesmo sendo uma referência em certo tema, eventualmente, você não terá a resposta para uma pergunta, e seu comportamento em relação a este fato pode significar o enriquecimento da sua base de conhecimento, e o fortalecimento da sua relação com as pessoas.

Controlando a humildade

Ser humilde demais acaba transformando a virtude em fraqueza. Aceitar tudo o que é imposto por outros invalida o debate de ideias e limita o ganho gerado pela troca de experiências.

Você deve ouvir o que o outro tem a dizer e considerar suas sugestões, mas questionar sua definição até que entenda os benefícios do que é sugerido, para que possa comparar com a ideia inicial. Por vezes, você pode se encontrar numa situação de “mestre-discípulo” (onde não sabe nada sobre o assunto), e decidir se submeter ao Shu, estágio onde simplesmente aplica a técnica proposta, até que tenha familiaridade suficiente para entender seus princípios.

Qualquer que seja a sua posição em um time de desenvolvimento, você deve estar disposto a rever seus paradigmas. Qualquer que seja a sua experiência ou nível de especialidade, você sempre pode aprender coisas novas e aperfeiçoar suas habilidades.

Se você for humilde o suficiente para mudar de opinião, debater com isenção, e aceitar que não sabe de tudo, você estará intensificando suas relações e, de fato, aprendendo com as outras pessoas.

É desenvolvedor há mais de uma década, tendo atuado em diferentes tipos de projetos e mercados ao longo desse tempo. Está constantemente estudando arquitetura de software e boas práticas, e se dedica hoje ao desenvolvimento de aplicativos mobile. É apaixonado por desenvolvimento de jogos e lançou seu primeiro título, Hungrymons, em 2015 para iOS e Android.

Ver perfil