57
Quer aprender a programar direito? Pergunte-me como!

Quer aprender a programar direito? Pergunte-me como!

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Quer aprender a programar direito? Pergunte-me como!

Quer aprender a programar direito?

Pergunte-me como!

Page 2: Quer aprender a programar direito? Pergunte-me como!

Henri...quem?

Page 3: Quer aprender a programar direito? Pergunte-me como!
Page 4: Quer aprender a programar direito? Pergunte-me como!

PythonCampus

#horaextra

dojorioForkinRio

Page 5: Quer aprender a programar direito? Pergunte-me como!

A história doBernardo

Antes de abordar o tema do título, eu preciso contar a história do Bernardo.

Page 6: Quer aprender a programar direito? Pergunte-me como!

Bernardo era uma criança como muitas outras... um menino travesso...

Page 7: Quer aprender a programar direito? Pergunte-me como!

...curioso que só...

Page 8: Quer aprender a programar direito? Pergunte-me como!

Como muitos da sua geração, Bernardo era apaixonado por video games.

Page 9: Quer aprender a programar direito? Pergunte-me como!

“Quando eu crescer quero programar jogos

quinem o Dukão!”

Essa paixão se transformou em um sonho! (link do blog)

Page 10: Quer aprender a programar direito? Pergunte-me como!

Para perseguir seu sonho, Bernardo decidiu estudar Ciência da Computação, enfrentando um caminho árduo até o vestibular.

Page 11: Quer aprender a programar direito? Pergunte-me como!

Mas sacrificando muitas festas e noitadas, Bernardo passou!

Page 12: Quer aprender a programar direito? Pergunte-me como!

Pascal?No quadro negro?

#wtf

Entretanto, já no primeiro período, Bernardo teve uma grande e desagradável surpresa.

Page 13: Quer aprender a programar direito? Pergunte-me como!

Frustração

Surpresa que se repetiu nos períodos seguintes onde ele estudou muita coisa sem conseguir compreender como isso o levaria a realizar seu sonho...

Page 14: Quer aprender a programar direito? Pergunte-me como!

Desânimo

Período após período, Bernardo já não se sentia muito bem, e começou a questionar seu caminho...

Page 15: Quer aprender a programar direito? Pergunte-me como!

Estágio numa Consultoria Multinacional

Sem uma visão clara das coisas, a vida foi se arrastando, e para orgulho de sua Família, Bernardo conseguiu seu primeiro trabalho. Quem sabe uma atividade profissional poderia responder suas perguntas?

Page 16: Quer aprender a programar direito? Pergunte-me como!

Analista de Documentação

Junior

#wtf

As coisas iam bem no trabalho e Bernardo recebeu sua primeira promoção após cursar 7 períodos de Ciência da Computação.

Page 17: Quer aprender a programar direito? Pergunte-me como!

Com o tempo, o sonho do Bernardo foi minguando... Com uma carreira para cuidar, lentamente, seu sonho se desfez corrompido em sua memória.

Page 18: Quer aprender a programar direito? Pergunte-me como!

Por que existem tantosBernardos?

Essa já seria uma história triste se houvesse apenas 1 Bernardo. Mas existem vários! Por quê?

Page 19: Quer aprender a programar direito? Pergunte-me como!

O ensino de computação também é

Waterfall

Sofremos de um problema crônico: Big Education Upfront! A preparação para o mercado ganha de goleada da preparação para a vida.

Page 20: Quer aprender a programar direito? Pergunte-me como!

“Arte e Ciênciasão duas faces da mesma moeda.”

-- Donald Knuth

Mas não foi sempre assim... Mais de 30 anos atrás, os grandes mestres e pais da computação já alertavam para esse (d)efeito.

Page 21: Quer aprender a programar direito? Pergunte-me como!

Prática e Teoriasão duas faces da mesma moeda.

Se preocupavam com a temida dissociação entre Prática e Teoria.

Page 22: Quer aprender a programar direito? Pergunte-me como!

Feedback

Eliminando do processo de aprendizado, aquilo que nos move adiante: Feedback!

Page 23: Quer aprender a programar direito? Pergunte-me como!

Jean Piaget

Sobre o processo de formação do conhecimento, Jean Piaget realizou muitos estudos.

Page 24: Quer aprender a programar direito? Pergunte-me como!

O conhecimento ocorre pela interação entre sujeito e objeto

E com esta afirmação, concluiu que a única forma de um alguém conhecer o que é um choque, é colocando o dedo na tomada.

Page 25: Quer aprender a programar direito? Pergunte-me como!

Percepção de Progresso

E uma cadeia subsequente de interações, gera a experiência fundamental do aprendizado: A Percepção de Progresso.

Page 26: Quer aprender a programar direito? Pergunte-me como!

#comofaz?

Mas toda crítica precisa ser construtiva. Então como podemos ajudar os Bernardos?

Page 27: Quer aprender a programar direito? Pergunte-me como!

Dojorio+

ForkinRio

Bem, aqui no Rio de Janeiro temos experimentado com muito sucesso a dupla Dojorio + ForkinRio.

Page 28: Quer aprender a programar direito? Pergunte-me como!

Social+

Individual

O Dojorio e o ForkinRio, trabalham Teoria e Prática nas duas condições fundamentais do ser humano: Social e Individual.

Page 29: Quer aprender a programar direito? Pergunte-me como!

O Dojo é uma experiência social onde os participantes exercitam suas habilidades de comunicação, enquanto praticam importantes técnicas de desenvolvimento de software como: TDD, OO, Modelagem, Babysteps e Programação em Par.

Page 30: Quer aprender a programar direito? Pergunte-me como!

Pré-requisitos

1 sala

1 computador

1 projetor

Rango!

Para uma sessão de Dojo, basta reunir um grupo de pessoas em uma sala com projetor e um computador. É importante que a turma leve comida para a reunião. Isso estabelece o tom informal além de estimular o compartilhamento.

Page 31: Quer aprender a programar direito? Pergunte-me como!

Preparação

• Alguém propõe um problema lúdico

• O grupo decide uma estratégia inicial

• O grupo define os papeis iniciais...

Então o grupo escolhe um problema simples, lúdico, para focar no processo ao invés de promover uma competição pela solução do problema. Já os papeis, durante o Dojorio, são 3: Piloto, Co-piloto e Plateia.

Page 32: Quer aprender a programar direito? Pergunte-me como!

Piloto e Co-piloto

O Piloto é quem implementa os testes e o código (nesta ordem). É ele quem interage com o teclado. Ao seu lado, o Co-piloto ajuda o Piloto, mas sem mexer no teclado.

Page 33: Quer aprender a programar direito? Pergunte-me como!

Platéia

Enquanto isso a Platéia ouve atentamente em silêncio enquanto houver um teste quebrado, oferecendo espaço para o Piloto interagir com o código, livremente durante seu turno.

Page 34: Quer aprender a programar direito? Pergunte-me como!

Papeis mudam a cada turno

A cada 4 ou 5 minutos (como o grupo definir), os papeis mudam. O Piloto volta para a Platéia, o Co-piloto vira Piloto e alguém da Platéia vira Co-piloto. Idealmente, em uma sessão, todos os participantes passam por todos os papeis.

Page 35: Quer aprender a programar direito? Pergunte-me como!

Processo

Vermelho

Verde

Refatoração

A sessão evolui seguindo ciclicamente as 3 etapas: Vermelho, Verde, Refatoração.

Page 36: Quer aprender a programar direito? Pergunte-me como!

Vermelho

• Piloto escreve o teste e o código.

• Co-piloto ajuda o piloto.

• Plateia observa em silêncio.

O Piloto escreve um teste que corresponda ao próximo babystep na evolução do problema. Em seguida implementa o código mais simples que faça o teste passar. É importante não copiar e colar, e o silêncio da Platéia oferece espaço para o Piloto aprender.

Page 37: Quer aprender a programar direito? Pergunte-me como!

Verde

• Teste passando!

• Hora de todos participarem sugerindo melhorias.

Agora os testes estão passando. Sinal que o código atende às necessidades dos testes. Hora de todos opinarem e sugerir como melhorar.

Page 38: Quer aprender a programar direito? Pergunte-me como!

Refatoração

“Organizar o códigocomo se o próximo programador

fosse um psicopataque sabe onde você mora.”

Esse é o ápice da iteração do Dojorio! Devemos passar para um próximo teste, apenas quando as sugestões de refatoração estiveram concluídas.

Page 39: Quer aprender a programar direito? Pergunte-me como!

Retrospectiva

No final da sessão, que normalmente dura entre 90 e 120 minutos, fazemos uma retrospectiva onde cada participante pode expressar o que foi bom e o que pode melhorar.

Page 40: Quer aprender a programar direito? Pergunte-me como!

Prática ➔ Teoria ➔ Prática

O grande segredo do Dojo é unir iterativamente Prática e Teoria. Durante todo o processo, dúvidas sobre a linguagem, sobre as técnicas e até sobre o ambiente de desenvolvimento surgirão, promovendo discussões fantásticas entre os participantes.

Page 41: Quer aprender a programar direito? Pergunte-me como!

Percepção de Progresso

E o mais importante é que coletivamente, todos têm a todo tempo a percepção de progresso.

Page 42: Quer aprender a programar direito? Pergunte-me como!

O ForkinRio é uma reunião com objetivo de promover um ambiente para que cada indivíduo possa aprender no seu rítmo, sobre um assunto de interesse comum.

Page 43: Quer aprender a programar direito? Pergunte-me como!

ForkinRio

Começa com o grupo elegendo um tema e um material didático que será usado por todos em subsenquentes encontros.

Page 44: Quer aprender a programar direito? Pergunte-me como!

Preparação

O que estudaremos?

O que implementaremos?

Com base no material, o grupo escolhe o que estudar no período até o próximo encontro e define um desafio de implementação diretamente relacionado com a parte estudada. Se for um capítulo de um livro, o desafio pode ser implementar os exercícios deste capítulo.

Page 45: Quer aprender a programar direito? Pergunte-me como!

Fork!

Então o grupo faz o fork, ou seja, se separa para que cada pessoa possa, sozinha, estudar e implementar o desafio até a data do próximo encontro.

Page 46: Quer aprender a programar direito? Pergunte-me como!

Merge

Na data marcada, o grupo parte para o merge. Todos se reúnem trazendo consigo suas implementações e opiniões sobre a experiência vivida.

Page 47: Quer aprender a programar direito? Pergunte-me como!

DIFF

Todos lêem juntos e ordenadamente o código de cada um. Os códigos servem como índice para lembrar das experiências no período de estudo. Neste momento, questões emergem levando o grupo a explorar os detalhes e nuances do tema.

Page 48: Quer aprender a programar direito? Pergunte-me como!

Prática ➔ Teoria ➔ Prática

Novamente, Prática puxa Teoria em ciclos sucessivos durante o aprendizado individual.

Page 49: Quer aprender a programar direito? Pergunte-me como!

Percepção de Progresso

E finalmente, durante os encontros, a exploração do tema pelo grupo promove uma intensa percepção de progresso.

Page 50: Quer aprender a programar direito? Pergunte-me como!

Conclusão

Uma ementa complexa não garante um ensino apropriado nem o aprendizado.

Page 51: Quer aprender a programar direito? Pergunte-me como!

Arte e Ciência

A dualidade da Arte e da Ciência...

Page 52: Quer aprender a programar direito? Pergunte-me como!

Prática e Teoria

... da Prática e da Teoria ...

Page 53: Quer aprender a programar direito? Pergunte-me como!

Individual e Social

... do Individual e do Social ...

Page 54: Quer aprender a programar direito? Pergunte-me como!

São faces de uma mesma moeda!

Page 55: Quer aprender a programar direito? Pergunte-me como!

Portanto, é necessário investir em Você, e não apenas em uma formação mercadológica.

Page 57: Quer aprender a programar direito? Pergunte-me como!

FotosDenis - Hank Ketcham

Curioso http://www.flickr.com/photos/statelibraryofnsw/3210637493

Gamer http://www.flickr.com/photos/therapycatguardian/2775101798

Vestibular http://www.flickr.com/photos/bianchi/47553776

Passei http://www.flickr.com/photos/doctor_silvana/4281256949

Frustração http://www.flickr.com/photos/emagic/56206100

Desânimo http://www.flickr.com/photos/emagic/56206868

Fork http://www.flickr.com/photos/mar00ned/117128024

Merge http://www.flickr.com/photos/aidanmorgan/2344975342

Diff http://www.flickr.com/photos/28642309@N02/2678725846

Moeda http://www.flickr.com/photos/danielneto/2941938228

Você http://www.flickr.com/photos/a2gemma/1448178195