Coding Dojo Belém - ベレン・ド・パラ
Kevin Durant
O trabalho duro ganha do talento quando o talento não trabalha duro.
Objetivos
- Praticar programação em grupo
- Compartilhar conhecimento
- Aprender novas técnicas e linguagens
- Resolver problemas de forma colaborativa
Como Participar
- Acompanhe nossos encontros
- Traga sua curiosidade e vontade de aprender
- Participe ativamente das discussões
- Compartilhe seu conhecimento
Dica
Não é necessário ser um expert para participar. O Coding Dojo é um ambiente de aprendizado para todos os níveis!
O que é um Coding Dojo, ou Dojo de código?
Um Coding Dojo nada mais é do que um encontro colaborativo de pessoas interessadas em melhorar suas habilidades através do treino de programação, hacking, testes de software, codificação de infraestruturas diversas, Web Designer, e também treino em tecnologias, ferramentas, frameworks, bibliotecas, etc...
O termo dojo - (道場) vem do japonês, que significam "lugar do caminho" ou "lugar de treinamento" que são espaços frequentemente utilizados para se praticar artes marciais, como judô, karatê, aikidô, etc.
A palavra caminho se refere ao caminho do aprendizado, ou seja, um dojo é um local de aprendizado e evolução profissional e pessoal. Não há competição entre os participantes portanto não há perdedores, e todos que estão ali são considerados vencedores por tomarem a iniciativa de praticar e melhorar suas habilidades, seja a habilidade de ação ou a sua habilidade de observação e raciocínio.
Saindo um pouco da parte filosófica e entrando na parte de desenvolvimento. O termo foi trazido para a área de desenvolvimento justamente porque para se tornar um bom programador, um bom desenvolvedor, ou um bom hacker também exige prática constante.
Durante o dojo de código os erros não são punidos, muito pelo contrário, o dojo de código é um ambiente seguro para aprender, errar, refatorar e melhorar.
Abaixo, um exemplo de um dojo japonês:
Metodologias
Existem alguns formatos em que o dojo de código pode ser executado a escolha do formato vai depender do objetivo do encontro e o número de pessoas presentes.
Conheça alguns formatos abaixo:
Coding Kata: Repetição
Coding Kata é um exercício pequeno e focado que você resolve várias vezes. O objetivo não é apenas resolver, mas melhorar tanto o modo com que você enxerga o problema quanto a forma com você pensa na solução.
Coding Kata é frequentemente utilizado para treinamentos de TDD, BDD, entre outras metódoligas de testes automatizados.
Objetivos do Kata
-
Praticar boas práticas como TDD, refatoração e clean code.
-
Ganhar fluidez com a linguagem ou uma técnica específica.
-
Aprender de forma segura, sem pressão de "entregar" nada.
-
Criar memória muscular para padrões de solução comuns.
Randori: Rotativo
No mundo do desenvolvimento o Radori é utilizado no dojo como prática de exercício para desenvolvimento colaborativo de código. Além de estimular o trabalho em equipe o Radori também exercita a autoconfiança do piloto em si mesmo, e a confiança do piloto em seu co-piloto, garantindo que a equipe trabalhe em conjunto em direção ao mesmo objetivo.
Nesse modelo existem alguns papéis como:
- Piloto: O codificador, é quem fica com o teclado digitando o código.
- Co-Piloto: O co-piloto é que dá as instruções para o piloto codificar.
- Platéia: É o público em geral, iteragem somente quando necessário.
Como funciona o Radori:
- Uma dupla assume os papéis de piloto e co-piloto. A cada 5 ou 7 minutos é feita uma troca
Também existem algumas regras como:
- O Piloto não toma toma decisões, apenas codifica o que o co-piloto manda.
- O Co-Piloto sempre explica o porque da decisão em voz alta para que o piloto entanda exatamente o que precisa ser feito
- A plateia só iteragem em caso do co-piloto solicitar alguma ajuda, ou caso o time fique muito travado.