Quando falamos sobre o que as crianças aprendem em programação, normalmente dividimos isso em três grandes categorias amplas. A primeira categoria são os conceitos que elas aprendem. Aprendem conceitos como variáveis, como expressões condicionais que são importantes em computação e matemática. Aprendem alguns conceitos específicos matemática, ciências e engenharia. Isso é o que a maioria das escolas de programação enfocam, mas não é o que Mitchel Resnik, o criador do Scratch, considera mais importante, não é o que mais se relaciona com as habilidades do século XXI.

A segunda categoria, chamamos de práticas ou estratégias é, segundo ele, a mais importante. Quando as crianças programam elas aprendem importantes práticas de design e solução de problemas, que são habilidades necessária no século XXI. Por exemplo, elas aprendem a experimentar e interagir, experimentar as coisas e fazer ajustes e revisões ao longo do tempo. E isso é importante não só em programação, mas em todos os tipos de projetos e solução de problemas. Então, experimentar e interagir é uma prática. A segunda é o teste e a depuração. De novo, teste e depuração são importantes para codificação, mas também para todos os projetos de design e solução de problemas. A terceira coisa que eles aprendem é reutilizar e remixar, como desenvolver o trabalho dos outros. Novamente, isso é importante para a programação mas também em todas as atividades de design. Como desenvolver o trabalho dos outros. Você não deve achar que faz as coisas sozinho, e sim que você pode desenvolver ainda mais o trabalho dos outros. A quarta prática é o que chamamos de decomposição, como dividir problemas em partes simples. Repito, isso é muito importante para programação, mas também é importante em todo tipo de solução de problemas, dividir um problema complexo em partes simples. Essas são algumas habilidades importantes para o século XXI que as crianças aprendem através da programação: experimentação e interação, teste e depuração, reutilização e remixagem, decomposição e abstração, para criar ideias abstratas para casos simples. Adicionalmente aprendem a habilidade de perseverar e persistir diante das frustrações. Através da programação, assim como com todos os projetos, você aprende a continuar trabalhando mesmo quando as coisas dão errado.

A terceira categoria que é importante não só na programação, mas também para outras coisas, chamamos de perspectivas. Quando as crianças começam a criar programas no Scratch eles começam a se ver como designers. Isso é diferente de aprender design, tem a ver com a identidade delas. E, segundo Resnik, é muito importante que as crianças cresçam se considerando capazes de criar e projetar algo. Geralmente, quando as pessoas interagem com o computador, elas veem o que outra pessoa criou e o usam. Queremos que as crianças cresçam com a identidade de um designer, que elas se vejam como designers. Também queremos que as crianças vejam o mundo com olhos críticos. Quando elas veem as coisas no mundo, elas devem se perguntar, “como isso funciona?”. A programação nos dá olhos críticos para começar a questionar como as coisas no mundo funcionam e isso é importante aprender. Essas são algumas das maneiras em que aprender a programar vai além de aprender conceitos, o que muitas pessoas enfocam. As pessoas geralmente ficam empolgadas a aprender a programar, mas o foco é nos conceitos para que consigam um trabalho ou sigam uma carreira. Para Resnik, isso vai além de aprender conceitos, trata-se de aprender estratégias para solução de problemas, para se ver de novas formas, ver o mundo de novas maneiras para que você seja um participante ativo da sociedade.”

Palestra completa do Mitchel Resnick