Buscar

Pensamento Computacional

Prévia do material em texto

13/05/16 Departamento de Ciência da Computação 
Por que pensar 
computacionalmente? 
 
 
Edison Ishikawa, D. Sc. 
1 
“A ciência é o que nós compreendemos suficientemente bem 
para explicar a 
um computador. A arte é tudo mais.” 
 Donald Knuth 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Objetivo 
2 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Sumário 
•Introdução 
•Desenvolvimento 
•Considerações Finais 
 
3 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
O que é pensamento 
computacional? 
100110101110001101 
101001101010110010 
101001110010011010 
10110101101100110 
1011010010101100001 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Caneta x Computador 
lQual é a diferença relevante? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Saber usar uma caneta significa 
que você o usa para escrever 
um livro? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Diferença 1 
lPara escrever um livro é preciso ter muitas 
outras capacidades além de saber usar uma 
caneta 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Você usa um computador como 
uma caneta (edita texto)? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Ou saber usar um computador 
significa que você o usa para 
aumentar as suas capacidades 
cognitivas? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Caneta x Computador 
• O computador, assim como a caneta, é apenas um 
instrumento 
• No entanto, quando escrevo com uma caneta, se o 
que escrevo me permite melhorar o meu raciocínio, a 
escrita está aumentando a minha capacidade 
cognitiva 
• Se o que eu escrevo me permite gravar dados que 
esqueço, a escrita está aumentado a minha 
capacidade cognitiva 
• Mas o computador pode processar e gravar mais 
dados do que a gente conseguiria ler e escrever 
durante uma vida inteira. Durante várias vidas! Ele 
poderia aumentar a “produtividade” cognitiva muitas 
vezes! 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Caneta x Computador 
• Agora imagine este computador ligado à 
Internet . . . 
• Agora são vários computadores em rede para 
aumentar a nossa capacidade cognitiva! 
• Ou seja, usar o computador em rede como se 
fosse uma caneta é um desperdício de 
recurso! 
• Mas como usar o computador para aumentar 
a minha capacidade cognitiva de acordo com 
o poder que ele pode me dar? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Mas o que é pensamento 
computacional? 
100110101110001101 
101001101010110010 
101001110010011010 
10110101101100110 
1011010010101100001 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
É usar o computador como 
se fosse uma caneta? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Ou temos que usar o 
computador para multiplicar 
exponencialmente a nossa 
capacidade cognitiva? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Pensamento Computacional 
Para mim, uma cientista da computação, a 
essência [do pensamento computacional] é o 
que nós podemos fazer enquanto 
interagimos com computadores, como uma 
extensão do nosso pensamento, para criar e 
descobrir...[Lorena Barba, 2015] 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
lPensamento computacional 
“É saber usar o computador como um 
instrumento de aumento do poder cognitivo e 
operacional humano – em outras palavras, 
usar computadores, e redes de 
computadores, para aumentar nossa 
produtividade, inventividade, e criatividade 
(Paulo Blikstein)”. 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
4ª Revolução 
Industrial 
1ª 
2ª 
3ª 
4ª 
Mecanização 
Uso da energia hidráulica 
e vapor 
Produção em 
massa 
Divisão do trabalho 
(especialização) 
Energia Elétrica 
Automação 
Uso da 
computação 
Sistemas Físicos 
Cibernéticos 
Uso da 
conectividade 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Evolução da 
Humanidade 
1ª 
2ª 
3ª 
4ª 
Agricultura 
Escrita 
Revolução 
Industrial 
Revolução Cognitiva 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Revolução? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação lAdaptado de Paulo Blikstein 
Estamos em uma época de 
transição 
• O pensamento computacional está transformando 
profundamente a academia e a indústria. Hoje em 
dia: 
• um pesquisador passa a maior parte do tempo 
em frente a um computador, construindo e 
estudando modelos computacionais 
• um engenheiro de produção, ao tentar 
redesenhar a linha de produção, não usa só 
papel e lápis – usa modelos computacionais 
• Um economista tentando fazer uma projeção de 
inflação não faz as contas de cabeça – usa, 
claro, modelos. 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação lAdaptado de Paulo Blikstein 
Como se preparar para o 
presente e o futuro? 
• A primeira etapa do “pensar 
computacionalmente” é identificar as tarefas 
cognitivas que podem ser feitas de forma mais 
rápida e eficiente por um computador. 
• A segunda etapa é saber programar um 
computador para realizar essas tarefas 
cognitivas – em outras palavras, transferir aquilo 
que não é essencialmente humano para um 
computador (é burro, mas muito rápido). 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
lAdaptado de Paulo Blikstein 
Gerar novos conhecimentos 
• Não dá para gerar novos 
conhecimentos apenas: 
• navegando na internet, 
• consultando a Wikipédia, 
• Fazendo apresentações em PowerPoint ou 
copiando e colando textos da internet. 
• O conhecimento novo não está na 
internet, facilmente encontrável em um 
mecanismo de busca com meia dúzia 
de palavras-chave. 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
lAdaptado de Paulo Blikstein 
Gerar novos conhecimentos 
• Ele está por ser descoberto. 
 
• E diante da complexidade da ciência e da 
indústria dos nossos dias, quem não 
souber viver em simbiose cognitiva com as 
máquinas (e suas redes) não terá muita 
chance de sobreviver. 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Como se preparar para o 
presente e o futuro? 
• Passo 1 – Pensar Computacionalmente 
 
 
 
 
 
 
• Passo 2 – Saber programar um 
computador 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Como é o mundo hoje? 
26 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Como será o mundo no futuro? 
27 
Não esqueça de 
comprar o leite! 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
O que move um computador?28 
Gasolina? 
Energia 
 Elétrica? 
Programa de Computador? 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Programação é coisa para quem 
faz computação? 
29 
Everybody in this country should learn 
how to program a computer, 
should learn a computer language, 
because it teaches you how to think. 
It's like going to law school. 
I don't think anybody should be a lawyer, 
but going to law school can actually be useful 
because it teaches you how to think in a certain way.... 
I view computer science as a liberal art. 
 Steve Jobs 
 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Programação é coisa para quem 
faz computação? 
30 
No one’s born a programmer, 
but with a little hard work, 
and some math and science, 
just about anyone can become one. 
And don’t let anyone tell you “You can’t. 
“ Whether you’re a young man or a young woman, 
whether you live in a city or a rural area, 
computers are going to be a big part of your future. 
And if you’re willing to work and study hard, 
that future is yours to shape. 
Barack Obama 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Para que serve a tecnologia? 
•Para nada, se a gente não faz uso dela. 
•Ela só é útil se a gente a utiliza. 
•Ela é ainda mais útil nas mãos de uma pessoa 
determinada e criativa, 
Que consegue fazer com ela coisas novas; 
Que sequer haviam sido imaginadas; 
…. 
 
31 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
O que eu ganho aprendendo a 
programar? 
32 
Habilidade em Programar 
+ 
Poder da Imaginação 
= 
CRIATIVIDADE 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
É possível mudar o mundo 
programando? 
33 
Linus Torlvalds 
Uber, AirBnB, Amazon, 
... 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
É possível mudar o mundo 
programando? 
34 
Se me deram o código-fonte ;-) 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Mas o que é programar? 
•É simplesmente uma forma de expressar 
ideias para outras pessoas 
 
 
•Não existe muita diferença entre uma 
linguagem de programação e o inglês ou 
português 
35 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Programar tem algum efeito 
colateral? 
•Alguma contra-indicação? 
Programar significa ser desafiado para 
escrever um código 
O problema é que subconscientemente você 
estará desenvolvendo habilidades para 
resolver problemas 
O que vai ser de grande utilidade no seu 
futuro 
36 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 37 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 38 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 39 
Uma boa notícia! 
Você não precisa programar 
usando linguagem de máquina 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Por que não C? ou Por que 
Phyton? 
Uma linguagem de programação é de baixo 
nível quando exige atenção com o 
irrelevante." 
 Alan J. Perlis 
40 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 41 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Agora, relaxe! 
42 
No Browser 
da sua mente 
apague o cache. 
Agora delete 
o histórico ... 
Agora navegue 
por uma página 
em branco 
13/05/16 Departamento de Ciência da Computação Departamento de Ciência da Computação 
Dúvidas 
43

Continue navegando