Lugar de programação de computadores é na Escola!

(Adriano Canabarro Teixeira, Milene Giaretta, Daiane Folle)



Fonte: PENDENTE

Por que devemos ensinar nossas crianças a programar?


São vários os motivos pelos quais a programação de computadores deve ser inserida na Educação Básica. O primeiro e mais óbvio: “Because we can”! Mas calma, não nos referimos à frase de campanha de Barack Obama – que no caso era “Yes we can!” – mas à música de Bon Jovy [https://goo.gl/i5hb0]. Uma vez que tenha escutado a música, apresentamos o segundo motivo: Não podemos ser mais uma onda no oceano, precisamos nos diferenciar e, quando se fala em computadores para esta geração em idade escolar, são poucas as atividades que podemos propor que, de fato as desafiará! Pois bem a programação de computadores é uma das poucas atividades que os colocará em condições de criadores, desafiados a construir soluções de forma criativa, alçando-os de usuários de tecnologia para desenvolvedores de soluções. Ainda, não podemos desconsiderar as habilidades e competências esperadas de um aluno e futuro profissional do século 21 que, nas mais diversas listas sempre se apresenta a habilidade de Proficiência em Tecnologias da Informação e Comunicação. De quebra, a programação de computadores desenvolve o que se chama de pensamento computacional que nada mais é do que uma oportunidade de desenvolvimento de competências e habilidades cognitivas que tem desdobramentos em todas as demais disciplinas! Posto isto, mãos à obra!

Objetivos Educacionais:

  • Reconhecer o potencial da programação de computadores na educação básica;
  • Compreender que a lógica de programação pode ser desenvolvida não somente em um computador;
  • Identificar a existência de ambientes de programação baseados em blocos;
  • Identificar as demandas envolvidas no ensino de programação de computadores para alunos da educação básica;
  • Reconhecer formatos de desafios utilizando programação;

ATIVIDADE: Qual a experiência de seus alunos com programação de computadores antes do curso superior?

Fazer com cada um reflita sobre esta relação entre programação de computadores x infância pode criar uma sensibilização interessante em torno do tema. Algumas questões poderiam ser feitas aos alunos para conduzir esta discussão: Qual a sua experiência com programação entes do curso superior? Na sua educação básica, você teve contato com esta prática? Se sim, o que significou para você? Se não, no que o domínio de técnicas e noções básicas de programação impactaria na sua vivência e aprendizado no curso superior?

Índice:

1 QUANDO A PROGRAMAÇÃO SE TORNOU UMA COISA DE CRIANÇA?

Para contextualizar a discussão lhe convido a refletir sobre a seguinte pergunta: Quais têm sido as contribuições práticas da Informática para a Educação? A tecnologia por si só não possui valor algum quando desprovida da manipulação humana! Seu valor está exatamente nesta simbiose potencial entre nós e os aparatos tecnológicos! De qualquer forma, o mundo é definido pelas tecnologias. Repetindo: o mundo é definido pelas tecnologias!  Todas as grandes evoluções e revoluções da humanidade ocorreram a partir de tecnologias.

Alvin Toffler apresenta esta relação de forma clara e precisa em seu livro “A Terceira Onda”. Ele apresenta três grandes revoluções pelas quais a humanidade passou e que tiveram seu suporte nas tecnologias do momento histórico. A primeira foi quando o homem dominou uma tecnologia que se mostrou revolucionária em relação ao modo como viviam, deixando de ser nômade, e assim decidiu fixar-se em uma determinada região, gênese do que atualmente chamamos de “aldeias”. Entretanto, para que pudesse sobreviver, as tecnologias que permitiram cultivar a terra e criar animais foram determinantes! E esta foi a primeira grande revolução pela qual passamos!

A terceira onda (TOFFLER, 1997)

Alvin Toffler
1928-2016

Ao longo de seus 87 anos, Alvin Toffler estudou e escreveu sobre praticamente todas as facetas do nosso mundo moderno. Juntamente com sua parceira e sua esposa, Heidi, previu e documentou a dramática evolução da economia baseada no conhecimento que substituiu a Idade Industrial. O livro Terceira Onda influenciou, desde a nossa vida pessoal, passando pela sociedade, cultura, política, empresas, inovação, segurança, infra-estrutura e até mesmo as fronteiras do espaço.

Em determinado momento, precisávamos transformar matéria prima em produtos e a revolução industrial, com suas diferentes facetas, transformou radicalmente a vida das pessoas, impulsionou o desenvolvimento e transformou processos que antes eram realizados por seres humanos. Músculos foram substituídos por engrenagens, válvulas e correias. Por fim, a terceira grande revolução apontada por Toffler foi aquela impulsionada pelos dispositivos digitais onde processos cognitivos básicos começavam a ser realizados por computadores. Mais um abalo radical no modo como o mundo se organizava. Mas este livro foi escrito em 1980 e é possível perguntar: Qual seria a 4ª Onda?

Em 2019 temos um mundo absolutamente transformado pelas tecnologias digitais – agora eu sugiro que acesse o Google, pois vai querer saber mais sobre o que vamos apresentar. O avanço da Inteligência Artificial representada pelo supercomputador Watson da IBM; O avanço da Internet das Coisas que conectará tudo à rede mundial de computadores; A pesquisa da Universidade do Sul da Califórnia – publicada na revista Science, uma das mais importantes revista científica do mundo – que aponta que 97% da informação do mundo está digitalizada e, destas, 80% estão na internet – vale à pena abreviar sua busca [https://goo.gl/mDLeLh]; A impressora 3D alemã que imprime casas em 24 horas; A unidade MacDonalds  totalmente robotizada inaugurada na cidade de Phoenix, Estados Unidos, em 2015; por fim o robô cirurgião chamado DaVinci, já em funcionamento em três hospitais brasileiros.

Na próxima década veremos muitas atividades serem substituídas por tecnologia! Quais? Todas aquelas que possuírem algum nível de repetição e previsibilidade! Nova pergunta: Em que medida nossas Escolas e Universidades preparam para este mundo?

Feita esta contextualização reformularemos a resposta dada inicialmente: Algumas apropriações da informática podem nos ensinar a pensar! Sim, assim como outras práticas e áreas de estudo. Entretanto, se os computadores são tão determinantes no mundo em que vivemos, qual o motivo para não explorarmos o potencial destes dispositivos na formação de indivíduos que são capazes de resolver problemas de forma criativa, de pensar de forma estratégica e procedimental? Sim, você já entendeu que estamos falando de programação de computadores.

Uma discussão iniciada por Seymour Papert em 1993 quando publicou o livro “A Máquina das Crianças” – leitura que recomendo a todos aqueles que se ocupam da educação – o computador e a programação como ferramentas de aprendizagem, com a premissa de que o computador é importante para a autonomia intelectual do aprendiz a partir dos primeiros anos de escolarização. Nos últimos anos, a importância da programação de computadores na educação básica ressurgiu com força nos Estados Unidos da América e em alguns países da Europa.

Computadores e Educação

Seymour Papert
1928-2016

Seymour Papert foi considerado um dos principais especialistas do mundo em sobre como a tecnologia pode fornecer novas maneiras de aprender e ensinar matemática e a pensar em gera. Pesquisador no Instituto de Tecnologia de Massachusetts, inspirou e se associou a equipes de pesquisadores e profissionais da educação que realizaram projetos educacionais em todos os continentes, alguns deles em aldeias remotas em países em desenvolvimento, influenciando positivamente cidades, estados e países, bem como em universidades e corporações globais.

DEBATE: O que mais você conhece sobre as ideias de Papert?

Convide sua turma para assistir os vídeos e realize uma discussão acerca das principais questões!

Vídeo 1: Um Encontro Inesquecível entre Paulo Freire e Seymour Papert [https://youtu.be/FnVCyL9BwS8 – Duração de 49m29s]

Vídeo 2: Papert e a linguagem Logo [https://youtu.be/2lA0QZTbwJs – Duração de 5m25s]

Vídeo 3: Learning from Seymour Papert [https://youtu.be/Pvgef9ABDUc – Duração de 1h01m12s]

Vídeo 4: Papert – Linguagem de Programação [https://youtu.be/kh1CUkUpZnM – Duração de 0:56s]

2 POR QUE PROGRAMAR COMPUTADORES?

Para iniciar, vamos apresentar um arrazoado de argumentações com vistas a refletir sobre o potencial da programação de computadores no desenvolvimento cognitivo de crianças:

1 A programação desenvolve nas crianças uma cultura de produção de tecnologia não somente de consumo. O desenvolvimento de uma postura de protagonismo na criação de soluções para problemas que vão, desde movimentar um gatinho na tela- no caso do Scratch – até programar um braço robótico para levar uma bolinha de isopor do ponto A ao ponto B!

2 A programação cria um espaço aberto para que as crianças expressem livremente suas ideias e de forma multimídia e testem suas hipóteses de melhor solução para o que querem. Portanto, é possível apontar que a programação de computadores desenvolve a criatividade nas crianças.

3 Uma das grandes questões da educação é nossa inabilidade em tratar o erro. Não raramente ele é visto como um atestado de incompetência quando, na verdade, é uma oportunidade rica de aprendizagem! Assim, aterrorizados pelo erro e sua característica tinta vermelha, desenvolvemos em nosso estudantes a falsa sensação de que não devemos experimentar, tentar novas soluções, sair da “trilha de ouro” do livro didático, dos slides do professor ou do que foi escrito no quadro. Tudo para que não tenhamos que nos deparar com o erro! Ter medo de errar mata gradativamente qualquer centelha de criatividade! Na programação, o erro acontece, é detectado em tempo real e pode ser tratado imediatamente pela criança com a ajuda dos colegas. Aprender a trabalhar com o erro é uma das grandes contribuições da programação de computadores!

4 Programar computadores auxilia no desenvolvimento de Competências de manipulação e seleção de informação, fundamental em um mundo onde a internet nos dá acesso a uma quantidade de informação inimaginável a 10 anos atrás. Aprendendo a selecionar, criar e gerir múltiplas formas de mídia, incluindo texto, imagens, animação e áudio, as crianças se tornam mais perspicazes e críticas na análise dos recursos disponíveis!

5 Programar nos ajuda a desenvolver Competências de comunicação! Uma comunicação eficaz requer mais do que a capacidade de ler e escrever textos. Nessa perspectiva, programar computadores envolve as crianças na escolha, manipulação e integração de uma grande variedade de mídias para se expressarem, individualmente, de forma criativa e persuasiva.

6 Programar computadores auxilia no desenvolvimento do raciocínio crítico e pensamento sistêmico. Para construir seus projetos, as crianças necessitam coordenar o tempo e a interação entre múltiplos objetos móveis programáveis. Para programar é preciso definir de antemão os passos necessários, todos os procedimentos e sua ordem a fim de que se possa resolver o problema apresentado.

7 A programação apoia a formulação de hipóteses de resolução de problemas. Criar um programa requer que a criança, considerando um problema, divida-o em partes menores, defina passos para solucioná-lo, formule hipóteses de resolução e teste-as.

8 Programar aprimora competências interpessoais e de colaboração. Por serem – geralmente – construídos com blocos gráficos, o código de programação é mais compreensível e compartilhável facilitando a colaboração entre as crianças e potencializado a partilha de blocos de código.

9 A Disciplina e a iniciativa são duas competências desenvolvidas no ato de programar. Ter uma ideia e descobrir como transformá-la em um programa de computador requer persistência e prática. Quando os jovens trabalham em projetos baseados em ideias que consideram pessoalmente importantes e significativas, estas geram motivação para ultrapassar os desafios e as frustrações encontradas no processo de concepção e de resolução de problemas.

10 A programação de uma solução para um problema real requer que se tenha em mente a real demanda das pessoas para as quais a criança está desenvolvendo o programa e o modo como responderão ao programa feito. Geralmente, tal processo ocasiona a alterações no programa original. Esta dinâmica auxilia no desenvolvimento de competências de empatia e plasticidade mental.

Inovação de dentro para fora

Douglas Rushkoff
18/02/1961

Programe, ou será programado! Escolha a primeira opção e ganhe acesso ao painel de controle da civilização. Escolha a última, e poderá ser sua última escolha real.”! Esta frase foi dita por Douglas Ruskoff, conhecido por sua associação com a cultura cibernética precoce e sua defesa de soluções de código aberto para problemas sociais.

Estes 10 motivos apresentados exploram habilidades inerentes ao que podemos chamar de Pensamento Computacional (que por coincidência ou não, são convergentes com a maior parte das habilidades desejadas para a formação dos profissionais do século XXI, descritas pela ONU, ATC, OCDE, etc. como visto neste texto [goo.gl/td55ZY]). Segundo a Wikipédia, Pensamento Computacional é um processo de resolução de problemas que inclui determinadas características de disposições, que referem-se à tendência de a pessoa julgar determinadas ações, objetos, objetivos, pensamentos de determinada maneira e situações. Este processo por sua vez, é essencial para o desenvolvimento de programas para computador, mas pode também ser utilizado como suporte para a resolução de problemas independentemente da disciplina, incluindo matemática, ciências e as áreas humanas.

ATIVIDADE: Vamos aprofundar o conceito de Pensamento Computacional?

A seguir indicamos dois textos interessantes para aprofundar esta definição:

Computational Thinking de Jeannette M. Wing: [http://www.cs.cmu.edu/~CompThink/papers/Wing06.pdf]

What is computational thinking? [http://scratched.gse.harvard.edu/ct/defining.html]

ATIVIDADE: Que iniciativas você conhece na área de programação de computadores na educação básica?

Começamos este capítulo provocando um questionamento sobre a importância da programação de computadores como alternativa tecnológica para a informática educativa na educação básica e, principalmente, como forma de criação de ambientes propícios ao desenvolvimento de competências cognitivas que terão desdobramentos em outras disciplinas. Qual a sua opinião – e de seus alunos – acerca desta possibilidade? Enumere as potencialidades e as limitações que podem estar envolvidas nesta opção! Feito isto, colabore com a discussão do grupo Programação de computadores para crianças? no Facebook!

DICA: Aproveitamos para sugerir que você visite a página do projeto Escola de Hackers, desenvolvido pela Prefeitura Municipal de Passo Fundo com a parceria da Universidade de Passo Fundo, uma iniciativa na área de programação de computadores para crianças. [http://mutirao.upf.br/hackers/]

CINECLUBE: MATRIX (1999)

Trailer disponível no YouTube
Este filme é um clássico Ciberpunk e apresenta um futuro distópico onde as máquinas dominaram o mundo e os humanos são manipulados física e mentalmente para assegurar esta dominação. Entretanto, o filme é muito mais do que isto e pode ser melhor compreendido a partir da leitura do livro “Matrix – Bem Vindo ao Deserto do Real!”, do filósofo William Irwin.

Reflexão possível
Em um mundo absolutamente dominado por máquinas – o que de certa forma já está se efetivando, programar é preciso, estratégico e libertador.

3 PROGRAMAÇÃO PARA CRIANÇAS: ALGUMAS QUESTÕES PRÁTICAS E INICIAIS

São várias as opções de ambientes de programação para crianças disponíveis para utilização. Na prática, aqueles baseados em blocos, e não em linhas de código, mostram-se mais indicados para estudantes da educação básica. Dentre estas opções, destacamos o software Scratch. Trata-se de um ambiente gráfico de programação desenvolvido pelo MIT, permitindo e possibilitando o desenvolvimento de aplicativos que integram recursos de multimídia de forma intuitiva. Seu objetivo é facilitar a introdução de conceitos de matemática e de computação, bem como oportunizar o pensamento criativo, o raciocínio e o trabalho colaborativo.

Curiosidade

O termo “Scratch” provém da técnica de scratching utilizada pelos disc-jockeys do hip-hop, que giram os discos de vinil com as suas mãos para frente e para trás de modo a fazer misturas musicais originais. Com o Scratch, é possível fazer algo semelhante, misturando diferentes tipos de clipes de mídia de modos criativos, usando uma programação matemática similar à feita nos programas de computador reais, porém de forma lúdica, simples e intuitiva (MARQUES, 2009). Abaixo, alguns links que podem ajudar na iniciação dos alunos no Scratch:

Tutoriais: https://scratch.mit.edu/tips

Canal do projeto Scratch Brasil no Youtube: https://www.youtube.com/user/scratchbr

O Scratch é software livre e está disponível no site [https://scratch.mit.edu/]. Neste site é possível criar uma conta para acessar, visualizar o interior e o executável de projetos já compartilhados por outros usuários, bem como compartilhar seus próprios projetos. Além disso você poderá encontrar tutoriais e vídeos que auxiliam na melhor compreensão e utilização do software. Para instalar o Scratch, em seu computador, você poderá utilizar o mesmo link. Se preferir, você poderá realizar seu projeto online, para isso basta clicar no link “Criar”.

Conheça os campos do Scratch

Vamos conhecer agora os nomes dos campos, abas, botões da Tela Inicial para facilitar o uso deste aplicativo. Na Figura 1 aparece um objeto com a imagem de um gato (um “sprite”) que pode ser movimentado na tela a partir da utilização dos comandos desta linguagem de programação.

Figura 1: Tela Inicial do Scratch: áreas, botões, abas e elementos gráficos
Fonte: <https://scratch.mit.edu/>, adaptado pelos autores.
  1. Categoria de comandos: Movimento, Aparência, Som, Caneta, Controle, Sensores, Operadores, Variáveis;
  2. Bloco de comandos: ao escolher uma categoria de comando temos várias opções de comandos;
  3. Botões de atalho: selecionar idioma, salvar este projeto e compartilhar este projeto;
  4. Abas para opções roteiros, fantasias e sons;
  5. Área de edição (depende da aba selecionada – item anterior 4);
  6. Botões para editar o objeto no palco: Duplicar, Apagar, Crescer objeto e Encolher objeto;
  7. Botão para alterar o tamanho de visualização do palco;
  8. Botões para iniciar (bandeira verde) e parar o script (círculo vermelho);
  9. Palco: local onde visualizamos o Sprite;
  10. Área que disponibiliza a seleção/criação dos Sprites e do palco.

O Scratch é considerado uma linguagem de programação por blocos que funciona a partir do encaixe de blocos que se constituem em comandos que serão seguidos pelo personagem quando o programa for executado.

ATIVIDADE: Que outros ambientes de programação por blocos você conhece?

Como falamos anteriormente, o Scratch é um dos ambientes de programação de computadores por blocos. Entretanto, existem outros que podem, em determinadas situações, ser mais adequados ao grupo de alunos com que se vai trabalhar, a infra-estrutura disponível no ambiente escolar ou dos objetivos do programa que se deseja codificar. Assim, você pode propor aos estudantes a exploração de outros ambientes de programação. Abaixo algumas sugestões:
Alice: https://www.alice.org/

Scratch Jr.: https://www.scratchjr.org/

Code Academy: https://www.codecademy.com/pt-BR

Antes de continuarmos, é importante destacar que os seus estudantes devem reconhecer que, ao contrário deles – que já estão em curso de graduação na área de Tecnologia da Informação, em uma situação de ensino de programação de computadores para a educação básica, é preciso que se criem situações de desenvolvimento do raciocínio lógico antes mesmo de programar utilizando um ambiente específico. Uma das alternativas para esta importante tarefa é a utilização de blocos lógicos.

Origens da cognição humana

Jean Piaget
1896 – 1980

Jean William Fritz Piaget foi um biólogo, psicólogo e epistemólogo suíço, considerado um dos mais importantes pensadores do século XX. Piaget também teve um considerável impacto no campo da ciência da computação.

A função dos blocos lógicos é dar aos alunos ideias das primeiras operações lógicas, como correspondência e classificação, auxiliando o aluno na capacitação de análise e raciocínio.​ Essa importância atribuída aos materiais concretos tem raiz nas pesquisas de Jean Piaget. Segundo ele, a aprendizagem da Matemática envolve o conhecimento físico e o lógico ­matemático. No caso dos blocos lógicos, o conhecimento físico ocorre quando o aluno manuseia, observa e identifica os atributos de cada peça. Desta forma, sugerimos que sejam utilizados simultaneamente com a programação de computadores por blocos.

Blocos lógicos: Quando surgiram?

Na década de 1950, os blocos lógicos foram criados por Zoltan Paul Dienes, um matemático húngaro. Esses blocos são auxiliares para o exercício da lógica e do raciocínio abstrato, exercitando o pensamento racional de acordo com as especificidades cognitivas e ajudam ainda a estimular a análise, o raciocínio e o julgamento.
Blocos Lógicos são um conjunto de 48 peças de plástico ou madeira e apresentam formas de círculo, quadrado, triângulo e retângulo, de tamanho grande ou pequeno, espessura grosso ou fino e coloridos (amarelo, vermelho e azul).
Esse material é um recurso de grande aplicabilidade no Ensino Fundamental, pois permite que a criança desenvolva as primeiras noções de operações lógicas e suas relações como correspondência e classificação, imprescindíveis na formação de conceitos de matemática e importante aliado na programação de computadores por blocos.

ATIVIDADE: Você conhece o potencial dos blocos lógicos?

O trabalho com os blocos lógicos permite desenvolver a flexibilidade do raciocínio em atividades que contemplem classificações, formação de sequências, estabelecimento de correspondências e comparações, análises e sínteses, discriminação e memória visual, simbolização, dentre outras habilidades. Desta forma, sugerimos algumas atividades que podem ser desenvolvidas com o material: [https://goo.gl/tJRLD5].

Fonte: encurtador.com.br/pBLMW.

4 ATIVIDADE PRÁTICA

Fonte: encurtador.com.br/ivwX1.

Bem tudo o que está antes deste item tem por objetivo criar uma contextualização acerca da programação de computadores na educação básica e outros elementos que seriam altamente pertinentes no momento em que seus alunos estiverem à frente de um computador com o objetivo de ensiná-los a programar.

Neste sentido, fizemos inúmeras sugestões de atividades que podem ser realizadas de uma forma dinâmica e colaborativa, por exemplo. A atividade prática proposta a seguir pode ser executada em 2h, está organizada em etapas e cada uma delas foi construída a partir de um objetivo de aprendizagem proposto na Taxonomia de Bloom, cujo objetivo é hierarquizar os objetivos educacionais de uma determinada atividade, sempre em ordem de complexidade crescente.

Os objetivos desta sequência didática para informática educativa é capacita-lo a identificar as demandas envolvidas no ensino de programação de computadores para alunos da educação básica; reconhecer o potencial da programação de computadores na educação básica, considerando ambientes de programação baseados em blocos e, em uma dinâmica recursiva, propor uma sequência que possa ser aplicada também na educação básica.

Estimamos uma duração de 2 horas para a sequência que demanda a disponibilização de um computador e acesso à internet para a utilização das versões on-line do Scratch e do Dr.Scratch. A fim de potencializar o aproveitamento da atividade, dividimos em etapas organizadas a partir da Taxonomia de Bloom com objetivos em ordem crescente de complexidade.

ETAPA 1

📍 Conhecer e Compreender
🕓 20 minutos

AONDE VOCÊ DEVE CHEGAR?
Ao final desta etapa os estudantes devem recordar, definir, reconhecer ou identificar as potencialidades da programação por blocos a partir do resgate do que os acadêmicos aprenderam e vivenciaram anteriormente.

ATIVIDADE A SER REALIZADA

  1. Criar uma dinâmica de compartilhamento de experiências entre os acadêmicos acerca de seus conhecimentos prévios de programação. Algumas das questões que podem ser feitas para motivar o diálogo são:
  • O que é programação por blocos?
    • Qual o objetivo da programação por blocos?
    • A programação de blocos é de fácil compreensão?
    • Já programaram a partir de blocos?
  • Quais Softwares são conhecidos pela programação por blocos?
  • Na sua opinião, programação por blocos depende de lógica?
  1. Levando em consideração a atividade anterior, as lembranças e conhecimentos construídos, chegou a hora de identificar o nível de compreensão das informações anteriores por parte dos alunos a partir da apresentação do Scratch. Sugerimos a seguinte sequência de atividades :
  • Explicitação de que trabalharão com Scratch, ambiente de programação em blocos;
  • Acesso ao Scratch e apresentação de sua interface, recursos, comandos, roteiros e fantasias.
  • Visita aos “cartões de aprendizagem” do Scratch e execução dos exercícios propostos.

QUE INTERVENÇÃO FAZER?
A ideia é que ao propor as questões para discussão, fomente o resgate das diferentes experiências dos alunos com programação na educação básica e que direcione a discussão para a pertinência desta prática entre crianças. Provavelmente alguns dos estudantes não tenham tido experiências de programação na educação formal, a estes, instigue a imaginação sobre como teria sido caso esta atividade tivesse sido proposta a eles.

ETAPA 2

📍 Aplicar
🕓 20 minutos

AONDE VOCÊ DEVE CHEGAR?
Ao final da desta etapa os estudantes devem experimentar o potencial do Scratch como um espaço de programação lúdico e indicado para crianças, bem como das competências cognitivas que o ato de programar exige e desenvolve. Sugere-se realizar esta primeira atividade em duplas ou trios, dependendo do tamanho da turma. É importante que não sejam criados muitos grupos a fim de que se possa proceder às discussões fundamentais para esta aula. Neste sentido, para que todos os estudantes possam participar, sugere-se que você implemente a metodologia do Coding Dojo para a execução desta atividade.

ATIVIDADE A SER REALIZADA
Com os questionamentos concluídos e a exploração inicial do Scratch, você poderá propor que os estudantes solucionem um desafio utilizando o Scratch.

DESAFIO:
Construção da escada e inserção do macaco.

 MOTIVAÇÃO: O macaco Kako deve subir uma escada com 17 degraus e alcançar o cacho de banana, que está no topo desta. Só que a escada está muito lisa e Kako tem dificuldade de subir. A cada passo, Kako sobe três degraus e desliza dois.

O desafio resolvido pode ser acessado em https://scratch.mit.edu/projects/173442486/

DETALHAMENTO DA PROGRAMAÇÃO:

  • Construção de degraus da escada com o mesmo espaçamento (passos do macaco)
  • Movimentação do macaco
  • Variável que controla os passos

EXECUTANDO O DESAFIO:
1 – Construir o objeto escada, conforme a descrição.
2 – Mostrar Kako subindo a escada, conforme o critério descrito.
3 – Mostrar o total de passos que Kako levou para chegar ao topo da escada.

Figura 2: Sugestão de comando para execução do Desafio.
Fonte: encurtador.com.br/ivwX1.

QUE INTERVENÇÃO FAZER?

Você deverá observar as duplas a fim de identificar indícios de processos colaborativos de aprendizagem e para, se necessário, auxiliar nas dificuldades. Ao final da atividade é interessante deixar espaço para que se manifestem acerca do ambiente e dos processos que tiveram que vivenciar para resolver o desafio.

ETAPA 2.1

📍 Experimentar

AONDE VOCÊ DEVE CHEGAR
O objetivo desta atividade adicional é possibilitar aos estudantes o aprofundamento do domínio da ferramenta para que possam, em um contexto de ensino de programação, identificar desafios que sejam adequados à faixa etária dos estudantes e passíveis de serem realizados no Scratch.

ATIVIDADE A SER REALIZADA
DESAFIO: Construção do jogo Breakout

O desafio resolvido pode ser acessado em https://scratch.mit.edu/projects/173443956

DETALHAMENTO DA PROGRAMAÇÃO:

  • No jogo os tijolos são alinhados no topo da tela;
  • A bola se movimenta pela tela, rebatendo nas paredes laterais e superiores da tela.
  • Quando um tijolo é atingido pela bola, a bola toca na parte inferior da tela.
  • Para prevenir que isso aconteça, o jogador move uma raquete para rebater a bola para cima mantendo-a no jogo.

Figura 3: Imagem do jogo Breakout
Fonte: Os autores.

EXECUTANDO O DESAFIO:
1 – Insira um pano de fundo.

2 – Desenhe os Sprites que fazem parte do jogo. Os Sprites são aqueles que estão na Figura 1 e são denominados por:
2.1. raquete – retângulo marrom;
2.2. tijolos – retângulos amarelos;
2.3. bola – círculo vermelho.

3 – Faça a programação dos Sprites:
3.1. raquete – movimentação para direita e esquerda, respeitando as bordas;
3.2. tijolos – posicionamento de pelo menos 11 tijolos e o desaparecimento quando a bola tocá-los;
3.3. bola – movimentação automática, número de vidas (mínimo 3), controle das bordas, contato com o tijolo;

4 – Faça a finalização do jogo com dois panos de fundo (venceu e game over).

POSSIBILIDADE DE PROGRAMAÇÃO DE CADA COMPONENTE
Programação de uma barrinha amarela:

Figura 4: Sugestão de comando para execução da atividade
Fonte: Os autores.

Programação barrinha inferior

Figura 5: Sugestão de comando para execução da atividade
Fonte: Os autores.

Programação da bolinha:

Figura 6: Sugestão de comando para execução da atividade
Fonte: Os autores.

QUE INTERVENÇÃO FAZER?
Você estará a disposição para auxiliar nas dificuldades e proporcionará um espaço de troca de conhecimento, pois os acadêmicos que tiverem condições poderão ajudar os colegas a solucionar a atividade, tornando as relações de programação mais simplificadas.

ETAPA 3

📍 Formular
🕓 50 minutos

AONDE VOCÊ DEVE CHEGAR
A intenção desta atividade é complexificar as habilidades construídas pelos alunos nas atividades anteriores, relacionando-as com processos de programação de computadores no  ensino fundamental. Ao final da atividade os alunos devem estar aptos a construir uma proposta de atividade hipotética a ser executada por crianças em idade escolar utilizando o Scratch.

ATIVIDADE A SER REALIZADA

  1. Você deverá propor aos acadêmicos a criação de uma situação hipotética de ensino de programação para alunos da educação Básica. A solução deve passar pela construção de uma pequena história, cartão multimídia ou jogo por parte das crianças. Antes de iniciá-la, os estudantes deverão fazer as seguintes definições, denominada de requisitos básicos:
  • Objetivo do projeto: definição do que os alunos devem construir (cartão multimídia, história ou jogo)
  • Caracterização dos alunos: Qual faixa etária e qual ano escolar?
  • Que competências desejam desenvolver: Raciocínio lógico? Abstração? Decomposição de problemas?
  • Conteúdo a ser trabalhado: Qual o conteúdo a ser tratado no software?

Para definição destes conteúdos em relação ao ano escolar os estudantes podem acessar http://basenacionalcomum.mec.gov.br/a-base

  1. Feitas estas definições, cada estudante deverá implementar seu projeto utilizando o Scratch e, com base nisto, disponibilizar o projeto on-line na comunidade do Scratch.
  2. Com os projetos concluídos, haverá uma apresentação e comentários sobre os mesmos.

QUE INTERVENÇÃO FAZER?

Você estará a disposição para auxiliar nas dificuldades e proporcionará um espaço de troca de conhecimento, pois os acadêmicos que tiverem condições poderão ajudar os colegas a solucionar o seu desafio, agregando aprendizagem para o grande grupo. Você poderá ainda, questionar tais relações da programação e o ensino fundamental, com o intuito de ajudar nesta construção.

É importante que sua intervenção colabore para que eles compreendam que o ato de programar por crianças, embora tenha uma dimensão lúdica, ajuda a desenvolver competências cognitivas fundamentais aos estudantes. Antes de realizar esta etapa, seria interessante retomar nossa Sugestão de Atividade 3, referente ao conceito de Pensamento Computacional.

ETAPA 4

📍 Avaliar
🕓 30 minutos

AONDE VOCÊ DEVE CHEGAR

Ao final desta etapa, a turma deve ser capaz de identificar potencialidades e limitações do que foi construído na etapa anterior enquanto proposta de atividade de ensino de programação para crianças da educação básica. A proposta de avaliação deve cumprir os objetivos da sua sequência didática, então relembre que é necessário:

  • identificar as demandas envolvidas no ensino de programação de computadores para alunos da educação básica;
  • reconhecer o potencial da programação de computadores na educação básica, considerando ambientes de programação baseados em blocos.

Lembre-se que o mais importante nesta avaliação dos produtos é que sua turma construa conhecimento acerca da ferramenta utilizada, compreendam seu potencial educacional e detenham as bases didáticas mínimas para que possam ensinar programação de computadores para crianças.

ATIVIDADE A SER REALIZADA

A ideia é que os acadêmicos avaliem, além da real possibilidade de  execução da proposta elaborada na Etapa 3, que competências foram melhor demonstradas a partir da análise dos blocos de programação. Para tanto, os alunos devem:

  • Subir seu projeto no Dr. Scratch e salvar a ficha de avaliação – figura 8.
  • Apresentar seus projetos para a turma, bem como os requisitos básicos definidos.
  • Discutir criticamente acerca da pertinência do projeto para os requisitos definidos;

Figura 8: Tabela de avaliação que o Software Dr. Scratch apresenta
Fonte: Os autores.

QUE INTERVENÇÃO FAZER?

Você deve valorizar cada projeto desenvolvido dentro do software Scratch, criando críticas construtivas com o mesmo critério para todos, além de validar o potencial que a programação de computadores tem na educação básica, incentivando os acadêmicos a dar aula de programação nas escolas em futuro próximo.

Você poderá fazer questionamentos pertinentes em relação ao que os acadêmicos absorveram, deixando claro se os mesmos compreenderam  os itens básicos para ensinar programação, tais como os elencados acima (conhecimento prévio da ferramenta utilizada, compreensão dos dados, capacidade de aplicação das informações, estruturação e relação das informações e valor significativo para a aprendizagem).

Dr. Scratch: O que é?

O Dr. Scratch  [http://www.drscratch.org/] é um software livre (ferramenta web gratuita) de código aberto, que está sendo desenvolvido por uma equipe de professores, desenvolvedores e pesquisadores da Universidad Rey Juan Carlos, na Espanha, que analisa automaticamente projetos que foram feitos dentro do Scratch. Esta ferramenta permite que se descubra um bom programador e o ajuda a atualizar habilidades de codificação.

Ao incorporar um projeto Scratch no Dr. Scratch, ele fornecerá informações sobre o desenvolvimento do pensamento computacional, concedendo com valor em relação à capacidade de abstração, pensamento lógico, sincronização, paralelismo, controle de fluxo, interatividade do usuário e representação de dados, podendo atingir a pontuação máxima de 21 pontos, pois cada categoria elencada vale 3 pontos.

5 (IN)CONCLUSÕES

Na sociedade contemporânea, programar não é importante somente para alunos do ensino fundamental, mas para qualquer pessoa. Entretanto, desenvolver habilidades de programação já no ensino fundamental cria situações que podem contribuir decisivamente no potencial das crianças de construir conhecimento quando, onde e se precisarem. Programar computadores está centrado no desenvolvimento de habilidades cognitivas e não na memorização de conteúdos.

Umberto Eco, aponta que a sociedade do futuro será composta por três castas: a primeira, mais numerosa e na base da pirâmide, será formada pelas pessoas que percebem o mundo pelos meios de comunicação de massa. O segundo grupo intermediário nesta forma piramidal, será composto pelas pessoas que utilizam computadores. Ou seja, utilizam e-mail, possuem contas em redes sociais, etc. Por fim, a elite intelectual da sociedade do futuro, será composta por pessoas que saibam programar computadores, sentencia Eco. Além do mais, caso não ampliarmos drasticamente o número de pessoas capazes de programar computadores, teremos um colapso global em pouco tempo, uma vez que, com o advento da internet das coisas, tudo será programável!

Posto isto, é importante que estejamos programados para os desafios de diferentes naturezas que teremos de enfrentar para implementarmos um processo amplo de ensino de programação de computadores. Dentre eles: Derrubar a ideia de que programar computadores é para adultos e para quem quer ser um profissional da área; formar pessoas capacitadas a ensinar programação com o devido cuidado pedagógico; Ampliar as oportunidades de programação de computadores para as crianças; Suplantar os limites tecnológicos existentes, como o acesso à internet ou computadores com baixa capacidade de processamento. Mas calma, para tudo tem solução: Para criar cultura – disseminar livros como estes e conversar muito sobre o assunto com professores e alunos; Para formar pessoas capazes de ensinar programação: valorizar iniciativas como a deste livro e tratar de forma séria o assunto nos cursos de Ciência da Computação; Ampliar as oportunidades de programação: Incentive seus alunos a prestarem serviços comunitários em escolas, associações e entidades sociais envolvendo programação de computadores; Suplantar limites tecnológicos: Relaxe o Scratch roda off line! Por isso, do 5 aos 100, vamos programar computadores!

Resumo

Neste capítulo procuramos construir uma argumentação acerca do significado de programar computadores na sociedade contemporânea e os motivos pelos quais esta habilidade deve ser dominada por crianças desde a mais tenra idade. Para tanto, exploramos a ideia de que a lógica de programação pode ser desenvolvida não somente por adultos, possibilidade esta que se efetiva a partir da existência de ambientes de programação baseados em blocos, como o Scratch, que potencializa o desenvolvimento de habilidades cognitivas necessária à programação, em especial para crianças. Entretanto, tomamos o cuidado de reconhecer que existem demandas específicas envolvidas no ensino de programação de computadores para alunos da educação básica que exigem a formatação cuidadosa dos desafios utilizando programação. No decorrer do capítulo você encontrou um grande número de indicações de leituras, documentários, entrevistas e filmes que te ajudarão a compreender a importância de ensinar crianças a programar e de como, depois de tanto tempo, a discussão da programação de computadores para crianças volta com tamanha força às rodas de discussão sobre informática educativa. Esperamos que este capítulo lhe ajude a despertar seu interesse sobre a importância de implementar processos de ensino de programação para crianças no contexto onde você está inseridx!

Leituras Recomendadas

A terceira onda
TOFFLER, Alvin. A terceira onda. 22.ed. Rio de Janeiro: Record, 1997. 491 p.

Taxionomia de Objetivos Educacionais
BLOOM, Benjamin S.; KRATHWOHL, David R.; MASIA, Bertram B. Taxionomia de Objetivos Educacionais. Porto Alegre: Editora Globo, 1972.

O ambiente de autoria Scratch e suas possibilidades de apoio ao processo de aprendizagem
DULLIUS, Simone Rosanelli. O ambiente de autoria Scratch e suas possibilidades de apoio ao processo de aprendizagem. 2008, 56f. Monografia (Especialização em Informática na Educação) – Universidade Federal do Rio Grande do Sul, Porto Alegre, 2008.

Taxonomia de Bloom: domínios de aprendizagem
MOREIRA, Claudio. Taxonomia de Bloom: domínios de aprendizagem. 2009. Disponível em: <https://goo.gl/QZPLcR>. Acesso em: 05 mar. 2018.

Teaching children thinking
PAPERT, Seymour. Teaching children thinking (Logo memo). Massachusetts Institute of Technology Cambridge, MA, USA, 1971. Disponível em: <https://goo.gl/9is34j>. Acesso em: 28 jul. 2017.

Mindstorms: children, computers, and powerful ideas
PAPERT, Seymour. Mindstorms: children, computers, and powerful ideas. New York: Basic Books, 1980.

Logo: computadores e educação
PAPERT, Seymour. Logo: computadores e educação. Trad. Editora Brasiliense S. A. São Paulo: Brasiliense S. A, 1985.

A máquina das crianças: repensando a escola na era da informática
PAPERT, Seymour. A máquina das crianças: repensando a escola na era da informática. Porto Alegre: Artmed, 2008.

Autorias docente e discentes em redes de aprendizagem online
RUSHKOFF, Douglas. As 10 questões essenciais da era digital. São Paulo: Editora Saraiva, 2012.

Computational thinking: it represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use
WING, Jeannette M. Computational thinking: it represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use. Communications of The ACM, v. 49, n. 3, p. 33-35, mar. 2006.


Exercícios

  1. Com base na atividade 1, proponha uma reflexão sobre a relação entre programação de computadores x infância e suas experiências com a programação de computadores antes do curso superior.
  2. Após aprofundar o conhecimento sobre pensamento computacional, proposto na atividade 3, recomendamos a utilização inicial da programação desplugada, com auxílio dos blocos lógicos. Execute as atividades propostas.
  3. Considerando ambientes de programação baseados em blocos e em uma dinâmica recursiva, como é o Scratch, propomos uma sequência de atividades que estão organizadas em nível de complexidade crescente.
  4. Crie uma atividade que possibilite o desenvolvimento do pensamento computacional para alunos da educação básica.

Referências

ADALBERTO, Edeli Luglio. Papert – Linguagem de Programação. Disponível em: <https://youtu.be/kh1CUkUpZnM>. Acesso em: 14 jul. 2019.

BRASIL. Base Nacional Comum Curricular: educação é a base. Brasília: 2018. Disponível em: <https://goo.gl/sQB1xQ>. Acesso em: 14 jul. 2019.

CASTRO, J. Papert Legendando. Disponível em: <https://youtu.be/2lA0QZTbwJs>. Acesso em: 14 jul. 2019.

EDUScratch. Cartões: Anime um Nome. Elaborado por Scratch. Disponível em: <https://resources.scratch.mit.edu/www/cards/pt-br/scratch-cards-all.pdf>. Acesso em: 14 jul. 2019.

EDUScratch. Site do Scratch para educadores. Disponível em: <http://eduscratch.dge.mec.pt/>. Acesso em: 10 jun. 2019.

HILBERT, Martin. The World’s Technological Capacity to Store, Communicate, and Compute Information. Elaborado por Science. Disponível em: <https://drive.google.com/file/d/0B0GrwJTV8WmQTjRhck4waWtrT2M/view>. Acesso em: 14 jul. 2019.

INSTITUTO NET CLARO EMBRATEL. Pensadores na Educação: Jean Piaget. Disponível em: <https://youtu.be/MwKEO2pkLP8>. Acesso em: 14 jul. 2019.

JOVI, B. Bon Jovi – Because We Can. Disponível em: <https://youtu.be/chXJFjrl-Q4>. Acesso em: 14 jul. 2019.

MIT Media Lab. Learning from Seymour Papert. Disponível em: <https://youtu.be/Pvgef9ABDUc>. Acesso em: 14 jul. 2019.

ORO, N. T.; PAZINATO, A. M.; TEIXEIRA, A. C. Programação de Computadores na educação: um passo a passo utilizando o Scratch. Passo Fundo: Ed. Universidade de Passo Fundo, 2016.

PAPERT, S.; BARBOSA, M. C. S. (Rev.). A máquina das crianças: repensando a escola na era da informática. Porto Alegre: Artes Médicas, 1994. 210 p.

PIAGET, J. Sobre a pedagogia: textos inéditos. São Paulo: Casa do Psicólogo, 1998. 262 p.

SEYMOUR, Papert. Disponível em: <http://www.papert.org/>. Acesso em: 14 jul. 2019.

TOFFLER, Alvin. A terceira onda. 22.ed. Rio de Janeiro: Record, 1997. 491 p.

VIEIRA, Azeinaide. Um Encontro Inesquecível entre Paulo Freire e Seymour Papert. Disponível em: <https://youtu.be/FnVCyL9BwS8>. Acesso em: 14 jul. 2019.

Autoria

Adriano Canabarro Teixeira
Adriano Canabarro Teixeira
(http://lattes.cnpq.br/1841882790688813)
Doutor no Programa de Pós-Graduação em Informática na Educação [Conceito 7 Capes] na Universidade Federal do Rio Grande do Sul – UFRGS [Conceito 6 Capes] em 2005, período no qual realizou estágio de doutorado na Universidade de Roma Três – Itália. É pós-doutor em Educação [Conceito 6 CAPES] pela UFRGS com apoio do CNPq. Atualmente é bolsista de Pós-Doutorado Sênior CNPq no Programa de Pós-Graduação em Informática na Educação [Conceito 7 Capes]. É Professor Titular na Universidade de Passo Fundo onde atua no Programa de Pós-Graduação em Educação [Conceito 5 Capes] – Mestrado e Doutorado- e no Programa de Pós-Graduação em Ensino de Ciências e Matemática [Conceito 4 Capes] – Mestrado -, ambos da Universidade de Passo Fundo. Na Universidade Regional Integrada do Alto Uruguai, campus Santo Ângelo, é professor permanente do Programa de Pós-Graduação em Ensino Científico e Tecnológico [Conceito 4 CAPES]. Atua como pesquisador colaborador no Departamento de Ciência da Formação da Universidade de Roma Três. É pesquisador e líder do Grupo de Pesquisa em Cultura Digital na Educação e responsável pelo programa de extensão Mutirão pela Inclusão Digital. É o idealizador dos Seminários Nacionais de Inclusão Digital e coordenador das quatro primeiras edições. É o idealizador dos projetos Berçário de Hackers, Escola de Hackers, Escola de Hackers Avançada e Academia White Hat da Prefeitura Municipal de Passo Fundo, agraciados com o Prêmio Líderes & Vencedores da Assembleia Legislativa do Estado do Rio Grande do Sul em 2015. É líder do Grupo de Educadores Google Passo Fundo.

Milene Giaretta
Milene Giaretta
(http://lattes.cnpq.br/6048136392800989)
É graduada em matemática pela Universidade de Passo Fundo, mestre em Ensino de Ciências e Matemática pela Universidade de Passo Fundo, e doutoranda do Programa de Pós-Graduação em Educação, da Universidade de Passo Fundo. Atualmente é pesquisadora no Grupo de Estudo e Pesquisa em Cultura Digital (GEPID), também na Universidade de Passo Fundo. Componente organizadora dos projetos Berçário de Hackers, Escola de Hackers, Escola de Hackers Avançada e Academia White Hat da Prefeitura Municipal de Passo Fundo, agraciados com o Prêmio Líderes & Vencedores da Assembleia Legislativa do Estado do Rio Grande do Sul em 2015.

Daiane Folle
Daiane Folle
(http://lattes.cnpq.br/7344017648258038)
Graduada em Engenharia Civil pela Universidade de Passo Fundo (1999). É mestre (2002), doutora (2009) e Pós-Doutora (2010), em Engenharia pela Universidade Federal do Rio Grande do Sul (PPGEM – Conceito 7 – CAPES). Especialista em Geoestatística pela École des Mines de Paris (Fontainebleau – 2003) e Especialista em Gestão da Qualidade para o Meio Ambiente pela PUC-RS (2007). Atualmente é Diretora Acadêmica da Faculdade Meridional (IMED – 2012). Foi professora substituta no ano de 2009 junto ao Curso de Engenharia Ambiental e Engenharia Civil da UFRGS. Realizou Doutorado Sanduíche na Università La Sapienza di Roma (Roma – Itália – 2005). Participa do Grupo de Pesquisa do CNPq: Materiais Alternativos para Pavimentação e Engenharia Geotécnica [PUC-RIO]; Inovação no Ambiente Construído [IMED]; Desempenho no Ambiente Construído [IMED]; Sociedade, ambiente e impactos ambientais urbanos [IMED]. É vice-presidente do Consórcio STHEM BRASIL – Laspau que trouxe para o Brasil a formação de docentes em metodologias ativas e processos de aprendizagem ativa. Participante do InovaEdu – Laboratório de Ciência e Inovação para a Educação da IMED. Tem interesse na área da Educação com foco em metodologias e tecnologias inovadoras para o processo de inovação acadêmica.