POR QUE PENSAR COMPUTACIONALMENTE?

Caio Perroni    Novembro 8, 2019

TEXTO

COMPARTILHE:

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

O QUE EU FAçO ?

  • Sites, Aplicativos e Sistemas

    Desenvolvimento de sites, aplicativos e sistemas personalizados

  • Adequação LGPD

    Mapeamento dos dados, análise de sistemas e adequação

  • Auxílio em Pesquisas e Teses

    Foco acadêmico, auxílio no uso da computação como pilar da ciência

  • Consultoria em T.I.

    Orientação especializada para tecnologias

  • Análise e Gestão de Sistemas

    Teste, documentação, configurações e gerenciamento de aplicações

  • Pensamento Computacional

    Análise e Abstração de Problemas; Análise e Automação de Soluções