POR QUE PENSAR COMPUTACIONALMENTE?

Caio Perroni    Novembro 8, 2019

TEXTO

Para aprender ciência da computação por exemplo, você certamente precisará de matemática, lógica e até física. O quanto você sabe e o quão importante você acha que essas outras ciências fundamentais são dentro de sua ciência?
Há um pequeno detalhe na nova revolução que estamos vivendo, que provavelmente passou pela cabeça de alguns cientistas. Estes podem ainda não ter claro a razão deste fenômeno estar acontecendo:

Algumas ciências estão avançando rápido enquanto outras parecem estagnadas ou se movendo lentamente, parecendo obsoletas.

Pelo momento em que estou vivendo na carreira que estou construindo em uma empresa incrível, e pelas grandes conquistas que tive na minha evolução como um ser humano em constante aprendizado, me sinto seguro para compartilhar uma opinião e talvez iniciar um debate, que pode me provar certo ou errado.

Eu realmente acredito que a causa raiz deste problema da ‘estagnação’ é a falta de aceite, entendimento e uso do pensamento computacional por parte das pessoas pesquisadoras, professoras, trabalhadoras e alunas destas ciências.

A razão desta opinião, nasce no fato de que estou muito acostumado a trabalhar diariamente com tecnologias de ponta, pessoas incrivelmente mais inteligentes do que eu, inovadores e muito competentes, que me ensinam todos os dias.

Claro que eles são, assim como eu, treinados e acostumados a pensar computacionalmente, afinal, trabalhamos com isso. Mas o ponto principal aqui não é quão inteligente ou competente você precisa ser em uma ciência específica, é sobre tudo o que você sabe e quanta importância você dá a cada coisa que sabe.

Para aprender ciência da computação por exemplo, você certamente precisará de matemática, lógica e até física. O quanto você sabe e o quão importante você acha que essas outras ciências fundamentais são dentro de sua ciência?

O detalhe que “talvez” falte para as ciências estagnadas se moverem, reside na aceitação dentro da comunidade acadêmica e profissional de que, no mundo digital em que vivemos, a ciência da computação se tornou tão fundamental quanto matemática, física, biologia, línguas (que não diferimos disso muito), etc…

Tenho observado e celebrado grandes vitórias do RH, Finanças e Marketing da minha empresa. Todas essas áreas adotam, sem restrições e com suporte, os processos de Metodologia Ágil por exemplo, influenciados principalmente pelos líderes que vieram de posições de tecnologia. Vejo todos os dias minha amada ciência ajudar os outros a avançar. Nós realmente nos tornamos fundamentais.

Ciência da Computação tornou-se o terceiro pilar da iniciativa científica, formando um trio, ao lado da teoria e experimento físico.

[PITAC 2005, p. 13, traduzido]

Outro fator importante é a comunicação: como trabalhar para o setor financeiro, como na minha empresa, se não tivéssemos antes aprendido sobre negócios, bancos, finanças? Para trabalhar junto e poder se entender e cooperar, qualquer par ou grupo de especialistas de ciências distintas deve aprender um pouco sobre a ciência do outro.

Se você é um professor, trabalhador, pesquisador, estudante dessas ciências que imploram por inovação e novas vitórias, experimente:
Vá aprender um pouco sobre lógica e algoritmos, UI / UX, Agile, Teoria da Computação de Alan Turing e, principalmente, como decompor, encontrar padrões e abstrair seus problemas!

Certamente será mais fácil receber ajuda e ajudar de especialistas em TI se você souber pelo menos o que estamos falando. Podemos fazer sua ciência decolar, e você também pode fazer isso, contando conosco se tentar aprender um pouco sobre computação.

Pergunte a si mesmo, quanta importância você dá em aprender sobre computadores e nossa maneira de pensar e abordar os problemas para resolvê-los? Talvez você descubra que responder por que pensar computacionalmente é tão natural quanto responder por que pensar 🙂

MAS O QUE É AFINAL PENSAMENTO COMPUTACIONAL?

O Pensamento Computacional é um termo de amplo contexto e aplicação, mas que se refere principalmente às estratégias de abordagem, análise e comunicação usada pelos cientistas da computação para humanizar e abstrair os problemas e desafios que encontram no mundo real.

Hoje, é usado especialmente quando dando suporte a outras áreas, na tentativa de tornar o mais exato possível coisas que parecem não ter padrões ou parâmetros funcionalizáveis.

Pensamento Computacional é o processo de pensamento envolvido na formulação de um problema e na expressão de sua solução de forma que um computador — humano ou máquina — possa efetivamente realizar.

Wing, Jeannette (2014). «Computational Thinking Benefits Society». 40th Anniversary Blog of Social Issues in Computing, traduzido

Esta maneira de entender e buscar soluções para problemas reais pode ser compreendido, também, como um processo iterativo baseado em três estágios:

  1. Formulação do problema (decomposição, padrões, abstração);
  2. Expressão da solução (automação);
  3. Execução da solução e avaliação (análise);

EXEMPLO

Como funciona o deslizamento de terra?

MÃOS A OBRA!

Que tal começar com alguma matemática em uma atividade desplugada

PROBLEMA:
Encontre a soma de todos os números entre um e duzentos.

SOLUÇÃO USANDO PENSAMENTO COMPUTACIONAL: Tentativa 1

  • 1+2=3
  • 3+4=7
  • 5+6=11

100 mil anos depois…talvez encontraríamos a solução. Mas a estratégia não é boa o suficiente:  ssamos aqui a decomposição – uma forma de abstração – mas, sem identificar um padrão, isso apenas nos daria mais trabalho (número de somas ) para resolver, e não um modelo ou expressão lógica genérico, que representaria uma solução.

Vamos tentar de novo, pensando em usar a decomposição aliada ao reconhecimento de padrões?

SOLUÇÃO USANDO PENSAMENTO COMPUTACIONAL: Tentativa 2

  • 1+200=201
  • 2+199=201
  • 3+198=201

Encontramos um padrão !

Qualquer par somado, começando do primeiro e último, e incrementando o inicial ao mesmo tempo que decrementa o final, da 201!

Mas o que esse padrão quer dizer? Bem, ele é um pedaço menor do problema, mas já resolvido. A questão agora é pensar em como juntar essas soluções para o problema que queremos !

Nesse caso a resposta é simples, mas nem sempre será, por isso, o Pensamento Computacional é também um processo de melhoria de soluções, não apenas para encontrá-las quando não existem.

Quantas vezes, neste exemplo, esse padrão se repete ?
São 200 números e somados aos pares, logo temos (200/2) = 100 pares que somam 201.

Essa expressão final já é nossa solução genérica expressada, basta trocar o 200 por outro numero qualquer que funciona !

SOLUÇÃO GENÉRICA, FORMULADA ATRAVÉS DO PENSAMENTO COMPUTACIONAL:

Para encontrar a soma de todos os números entre 1 e N basta aplicar a fórmula matemática abaixo:

( N + 1) * (N / 2)

CONTEÚDO EXTRA

Atividade demonstrada em vídeo (inglês) e Live do autor no canal Conversações Filosóficas