O documento discute as regras básicas e benefícios do Coding Dojo, que incluem trabalhar em pequenos passos, programação em pares, garantir que todos entendam o código, e três fases de desenvolvimento. O objetivo é compartilhar conhecimento de forma colaborativa.
5. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Regras Básicas:
• Babysteps
• Pair Programming
• Todos devem entender
• 3 fases
6. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Babysteps
São passos de bebe!
7. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Pair Programming
8. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Todos devem entender
12. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Babysteps
• Ajuda a visualizar o problema de uma maneira
diferente.
• Facilita o raciocínio em equipe.
• Ajuda a controlar a ansiedade.
13. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Pair Programming
• Ajuda trabalhar em equipe.
• Lidar com conflitos.
• Controlar o tempo e manter o foco.
14. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
Todos devem entender
• Ensinar.
• Aprender.
• Perguntar.
15. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
{Coding Dojo}
• Testes... testes... testes... e mais testes...
16. “O conhecimento pertence a todos e não deve ser retido”
by Alê Borba
:wq
Alê Borba
@ale_borba
www.cardcloud.com/aleborba
alexandre.borba@imasters.com.br
Notas do Editor
Review do que será abordado: Apresentação Sobre comunidades Coding Dojo: Regras Coding Dojo: comparativo
Sim, esse é o meu cachorro deitado na minha mesa rsrs Já fui feirante, vendedor de material de construção, gerente de loja, vendedor de motos, vendedor de celulares. Um belo dia resolvi mexer com internet. Fui programador PHP, trabalhei em um provedor de internet a rádio (sim isso existe!!) então...
Trabalho com evangelista das comunidades, fomentando o compartilhamento de conhecimento, convidando articulistas, validando artigos, organizando Hackathons e Coding Dojos. E sempre tomando muito café
Uma comunidade pode ser compreendida como um grupo de pessoas que possui certa identidade devido ao fato de compartilhar interesses comuns ou proximidade geográfica. Uma comunidade pode ser identificada como um grupo de pessoas que vivem na mesma aldeia, cidade ou país. Por outro lado, a comunidade pode ser identificada como um grupo de pessoas que compartilham um conjunto de valores, interesses ou enfermidades comuns.
Se um teste não está passando, você deve escrever o código mais simples possível que faça o teste passar. Quando for escrever um novo teste para o mesmo método, escreva um teste que teste só um pouquinho a mais da funcionalidade desejada.
A programação é feita em duplas. Cada dupla tem um piloto e um co-piloto. Ambos pensam em como passar no teste atual, mas só o piloto digita. Cada par tem por volta de 5 a 10 minutos no seu turno. Quando esse tempo acaba: O piloto volta para a platéia O co-piloto assume o lugar do piloto Um novo co-piloto vem da platéia
O piloto e o co-piloto devem sempre explicar em voz alta o que estão tentando fazer para solucionar o problema. Qualquer um na platéia pode pedir explicações se não entender algum raciocínio
Antes de qualquer código, tem que ser feito um teste.
Um Coding Dojo sempre está em alguma dessas 3 fases, dependendo do estado dos testes: Vermelha: Pelo menos um teste não está passando. A dupla da vez deve se concentrar em fazer o teste passar. A platéia não deve falar nessa fase, para não atrapalhar piloto e co-piloto. Verde: Os testes acabaram de ser rodados e todos estão passando. Essa é a hora de quem está na platéia dar sugestões para melhorar o código. Cinza: O código foi modificado de acordo com as sugestões, mas a bateria de testes ainda não foi rodada. Deve-se evitar fazer grandes modificações no código nessa fase.
E dai? O que que eu tenho com isso tudo? Porque isso me interessa?
Pensando mais calmamente, você consegue visualizar outras formas e caminhos de resolver o problema e não só aquele que veio primeiro na sua mente e que nem sempre é o melhor. Como sempre começamos dos passos mais simples, isso faz com que o raciocinio comece em equipe praticamente do zero. Como você tem sempre que pensar em passos curtos, força que você tenha controle “pegar e resolver”
Você exercita ao extremo o trabalho em equipe e o comando de um projeto. Sempre que aparecem conflitos em piloto e copiloto, quem tem que tomar a decisão final é o piloto, ele tem o comando. Com tempos curtos a equipe tem que dominar o tempo e manter o foco em passar nos testes Com a dinâmica da troca constante de pilotos e copilotos, você tem um problema sério e que tem que ser muito trabalhado. O legado! Aprender a deixar e aprender a trabalhar com ele. O código é do Dojo, o código não é seu.
Aprender a passar o conhecimento. A compartilhar. Humildade para aprender o que não sabe. Cara dura pra sempre perguntar o que não sabe.
Sempre testar! Isso faz com que qualquer um contribua com seu código! Falar sobre retrospectivas!
Sempre testar! Isso faz com que qualquer um contribua com seu código!