Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Praticando Programação em um Coding Dojo

Praticando Programação em um Coding Dojo

Palestra apresentada no FLISOL 2011 em Campinas - 09/04/2011

Palestra introdutória sobre o uso de reuniões de Coding Dojo para a prática de programação.
O que é um Coding Dojo?
Como funciona um Coding Dojo?
Dojos em Campinas
Coding Dojo na Prática!

Renne Rocha

April 09, 2011
Tweet

More Decks by Renne Rocha

Other Decks in Programming

Transcript

  1. Sobre o palestrante Estudante de Engenharia Elétrica na Unicamp Desenvolve

    projetos em Python, principalmente utilizando o framework Django. Incentivador de grupos de Coding Dojo na região de Campinas Sempre que possível tenta difundir o desenvolvimento orientado a testes (TDD) Contatos: Email: [email protected] Blog: http://rennerocha. com/ Twitter: @rennerocha
  2. Esta palestra O que é um Coding Dojo? Como funciona

    um Coding Dojo? Dojos em Campinas Coding Dojo na Prática!
  3. O que é um Coding Dojo? Uma reunião de programadores

    onde um desafio de programação é escolhido e resolvido utilizando boas práticas de programação com a preocupação constante com a qualidade do código desenvolvido. É um ambiente inclusivo, colaborativo, pouco formal e descontraído.
  4. O que é um Coding Dojo? Uma reunião de programadores

    onde um desafio de programação é escolhido e resolvido utilizando boas práticas de programação com a preocupação constante com a qualidade do código desenvolvido. É um ambiente inclusivo, colaborativo, pouco formal e descontraído.
  5. Ambiente Ambiente não competitivo, inclusivo e colaborativo Todos devem entender

    o código Sempre começa do zero Metodologias ágeis de desenvolvimento: TDD (Test Driven-Development) Pair Programming
  6. O que eu vou usar? Computador + Projetor Platéia Pair

    Programming TDD (vermelho - verde - refatoração) All Code Is Guilty Until Proven Innocent!
  7. O que eu vou usar? Computador + Projetor Platéia Pair

    Programming TDD (vermelho - verde - refatoração) All Code Is Guilty Until Proven Innocent! Baby-Steps
  8. TDD

  9. Formatos Kata Apresentação de uma solução por uma pessoa Todos

    devem conseguir reproduzir Todos podem interromper para tirar dúvidas
  10. Formatos Randori Pair Programming (piloto + co-piloto) Turnos (5-7 minutos)

    Rodízio: após cada turno: Co-piloto vira piloto O piloto volta para platéia Um novo co-piloto é convidado da platéia Comentários e críticas no verde Silêncio (da platéia) no vermelho Dupla deve explicar o que está fazendo
  11. Formatos Kake Semelhante ao Randori Porém com vários pares Cada

    par trabalhando em um problema diferente A cada turno as pessoas trocam de computador Co-piloto vira piloto O piloto se torna co-piloto de outro par
  12. Retrospectiva O que foi bom? O que não foi bom?

    O que podemos melhorar no próximo?
  13. E em Campinas? Blog: http://dojocampinas.wordpress.com/ Lista de Discussão: [email protected] Grupos

    Dojo@Unicamp - este semestre ainda não conseguiu fixar um dia fixo Dojo@PUCC - toda quinta às 17h30 na PUCC Dojo@Prógonos - quinzenalmente com horário variado Dojo@algum_lugar - incentivamos a criação de mais grupos
  14. E na prática? Problema 1 - Número Romanos Desenvolva um

    programa que converta um número inteiro positivo para algarismos romanos. Problema 2 - FizzBuzz Exiba uma lista de 1 a 100, onde números múltiplos de 3 devem ser exibidos como 'Fizz', múltiplos de 5 devem ser exibidos como 'Buzz' e múltiplos de 3 e 5 devem ser exibidos como 'FizzBuzz'
  15. E na prática? Problema 3 - Seqüência de Colatz O

    próximo termo de uma seqüência de números inteiros é definido por: Se n é par, o próximo termo é igual a n/2 Se n é ímpar, o próximo termo é 3n+1 Essa seqüência sempre converge para 1 Descubra o número inteiro, menor que u milhão que produz a maior seqüência.