Post on 21-Jun-2015
description
DESARROLLO DEL PENSAMIENTO
COMPUTACIONALEN EL AULA
Juan Carlos López – EdutekaGonzalo Ulloa – Universidad Icesi
IntroducciónEn muchas ocasiones debemos
resolver problemas, así no los veamos como problemas o los resolvamos intuitivamente.
Ejemplo: ◦Quienes de ustedes han venido a
Cali antes?◦A la Universidad Icesi antes? ◦A este auditorio?
Etapas para la solución
Tomado de http://www.eduteka.org/pdfdir/AlgoritmosProgramacion.pdf Citando a Polya
IntroducciónLa naturaleza es sabia
resolviendo problemas, problemas complejos.
La evolución desarrolla mecanismos para resolver los problemas, las especies que no los logran se extinguen.
La vida misma es una competencia feroz..! Solo las mejores estrategias triunfan..!
Problemas biológicos
La avispa que parasita las avispas de los ficus.
Problemas biológicos
Hormigas y acaciasLa simbiosis que existe entre las
acacias y las hormigas, la acacia alimenta la hormiga y la hormiga protege la acacia de los insectos depredadores.
Problemas del mundo modernoPiensen en un escenario catastrófico de ciencia
ficción, una ciudad de dos millones de habitantes donde comienza una epidemia.
Esta dura ya dos años y ha muerto el 2,5% de la población. No se sabe cómo se propaga ni por qué afecta a todos por igual, ricos y pobres. Es la historia de una epidemia anunciada que ha infectado otros países en los últimos cinco años. Es una pandemia a escala mundial. Cómo atacar el problema?
No se sabe nada de la enfermedad que causa la pandemia. La enfermedad se dispersa mucho más rápidamente que la investigación sobre las causas. Se piensa que es una enfermedad que se propaga por el aire.
Problemas (2) A alguien se le ocurre llevar un
censo de los muertos y marcar sobre el mapa los lugares donde ocurrían y observa que los muertos se concentran en ciertos sectores
Problemas (3)Descubre que cuando aparecen
casos en un sector se propagan en todas direcciones (no en la dirección del viento). Se propaga alrededor de las fuentes de agua que se contaminan.
Esta fue la epidemia de cólera que azotó a Londres en 1854.
Problemas (4)John Snow – MD Anestesiólogo
fundó las bases de la Epidemiología
Problemas (5)Identificada la causa un ingeniero
británico Joseph Bazalguette diseña y construye todo un sistema de alcantarillado para evitar que las aguas se contaminen (1858) resolviendo de esta forma la epidemia y presentando un modelo de sistema sanitario para la ciudades modernas.
ProblemasSolo en 1883, 20 años después
de la epidemia, Robert Koch logró identificar la bacteria que ocasionaba el cólera.
Otro problema del mundo modernoPiensen en un mundo donde los
computadores están aislados, donde para comunicarme con el extranjero se debía enviar una carta que tomaban semanas.
La información solo estaba en las bibliotecas y había que ir a ellas físicamente para revisar los documentos.
Otro problema del mundo modernoAlguien soñó en tener una red
que interconectara a todos. Que la red fuera libre y gratuita.
Internet
Otro problema del mundo modernoMuchos de ustedes tienen ya
teléfonos celulares inteligentes que pueden ser usados no solo como teléfonos sino que son capaces de recibir correo electrónico, navegar por Internet o acceder a las redes sociales.
Habrían anticipado ustedes que esto sucedería?
Piensen en el mundo del futuro..!
El mundo de hoyVivimos en un mundo complejo y
globalizado, donde nuestros jóvenes deben adquirir nuevos conocimientos y habilidades a lo largo de la vida.
¿Cómo podemos aportar en la educación en la formación de nuestros niños y jóvenes a resolver problemas y a innovar?
Pensamiento computacional“El pensamiento computacional
son los procesos y la ideas relacionados con la formulación y la solución de un problema de manera que esta pueda ser realizada por un agente de procesamiento de información”
CMU Center for Computational Thinking – Cuny, Snyder, Wing – http://www.cs.cmu.edu/~CompThink/
Pensamiento computacional (2)En el mundo de hoy el pensamiento
computacional debe ser una parte como las personas piensan y entienden el mundo.
Es una forma de resolver problemas, diseñar sistemas y entender el comportamiento humano que deriva sus principios en la ciencia de la computación.
Significa crear y hacer uso de diferentes niveles de abstracción para entender y resolver problemas efectivamente.
CMU Center for Computational Thinking – http://www.cs.cmu.edu/~CompThink/
Pensamiento computacional
Pensamiento
Algorítmico
Pensamiento AlgorítmicoUn Algoritmo es una forma
ordenada y sistemática para descomponer y resolver un problema.Formular problemas para facilitar el uso de computadores y otras herramientas para solucionarlos
Pensamiento computacional
Pensamiento
Algorítmico
Pensamiento
Lógico
Pensamiento
Científico
Pensamiento Lógico y Científico
Buscar las relaciones entre las causas y los efectos. Demostrar las hipótesis. Analizar los datos, ser sistemático.
Pensamiento computacional
Pensamiento
Algorítmico
Pensamiento
Lógico
Soluciones
eficientes
Pensamiento
Científico
Soluciones eficientesUna vez se tiene una solución, es
tratar de buscar una solución que utilice menos recursos, sea más sencilla o pueda conducir a la solución más rápidamente..
Pensamiento computacional
Pensamiento
Algorítmico
Pensamiento
Lógico
Soluciones
eficientes
Pensamiento
Científico
Innovación y
Creatividad
Pensamiento creativo (Innovación)
Espiral de la creatividad – Michael Resnick- MIT Media Lab - Lifelong Kindergarten
Otras características y habilidades
Generalizar y transferir el proceso de solución de problemas a una gran diversidad de estos
Confianza en el manejo de la complejidadPersistencia al trabajar con problemas
difícilesTolerancia a la ambigüedad.Habilidad para lidiar con problemas no
estructurados (open-ended)Habilidad para comunicarse y trabajar con
otros para alcanzar una meta o solución común
Por qué usar Scratch para fortalecer el Pensamiento computacional?Facilidad de usoExige un estrategia precisa y un
método ordenado (lógica y algoritmica)
Todo lenguaje de programación exige una solución ordenada y precisa pues el computador no permite ambigüedades.
Puede ser optimizada.Permite resolver muchos
problemas de otro tipo.
Video de Pensamiento computacional
“DESARROLLO DEL PENSAMIENTO COMPUTACIONAL EN EL AULA”, Dr. Gonzalo Ulloa Villegas, decano Facultad Ingeniería, Universidad Icesi & Lic. Juan Carlos López García, Editor Eduteka, Fundación Gabriel Piedrahita Uribe. M
emor
ia, p
ensa
mie
nto
sim
bólic
o, s
igno
s
Form
ular
pro
blem
as (i
dent
ifica
r una
met
a)
Desc
ompo
ner e
l pro
blem
a
Reco
pila
r y o
rgan
izar
dat
os
Estru
ctur
as d
e da
tos
(tabl
as, á
rbol
es, r
edes
)
Anal
izar
dat
os
Form
ular
un
plan
Ejec
utar
un
prim
er in
tent
o pa
ra a
lcan
zar l
a m
eta
Repr
esen
tar d
atos
(abs
tracc
ione
s, s
imul
acio
nes)
Algo
ritm
os y
pro
cedi
mie
ntos
Auto
mat
izac
ión
(pas
os o
rden
ados
)
Prob
ar, e
valu
ar y
com
parti
r res
ulta
dos
Depu
rar,
edita
r y re
visa
r (re
troal
imen
taci
ón)
Opt
imiz
ar c
ódig
os
Gen
eral
izar
y tr
ansf
erir
Estru
ctur
a se
cuen
cial
Estru
ctur
a ite
rativ
a (c
iclo
s)
Man
ejo
de e
vent
os
Estru
ctur
as c
ondi
cion
ales
Prop
osic
ione
s (ló
gica
boo
lean
a)
Ope
rado
res
Varia
bles
y L
ista
s
Coor
dina
ción
y s
incr
oniz
ació
n (e
nvia
r men
saje
s)
Para
lelis
mo
(hilo
s)
Inte
racc
ión
diná
mic
a (ti
empo
real
)
POLÍGONOS
Dibujar un cuadrado en el reverso de esta hoja
¿Qué es un cuadrado?Determinar qué hacerElaborar un programa para dibujar un cuadrado en ScratchProbar el programa resultante
¿qué pasó? ¿Por qué no dibuja?Determinar qué hacerModificar el programa para lograr que dibuje el cuadradoProbar las modificaciones
¿Hay otra forma de dibujar un cuadrado con Scratch?Determinar qué hacerModificar el programa para optimizar el códigoProbar las modificaciones
¿Qué es pentágono?Determinar qué hacerModificar el programa para dibujar un pentágonoProbar las modificaciones
¿Cómo dibujar cualquier polígono regular?Determinar qué hacerModificar el programa para dibujar cualquier polígono regularProbar las modificaciones
¿Qué pasa en Scratch cuando el polígono tiene muchos lados?Determinar qué hacerModificar el programa para dibujar polígonos regularesProbar las modificaciones
¿Podemos mejorar el código?Determinar qué hacerModificar el programa para hacer más claro el códigoProbar las modificaciones
PENSAMIENTO COMPUTACIONAL CONCEPTOS DE PROGRAMACIÓN
¿Qué es un cuadrado?
Pensamiento simbólico Operación con modelos Memoria Comprensión Lenguaje
Memoria, pensamiento si
mbólico, signos
Formular problemas
(identificar una
meta)
Descomponer el
problema
Recopilar y
organizar datos
Estructuras de datos (tablas,
árboles,
redes)
Analizar datos
Formular un plan
Ejecutar un primer
intento
para
alcanzar la
meta
Representar
datos (abstracciones, si
mulaciones)
Algoritmos y procedimientos
Automatización
(pasos
ordenados)
Probar, evaluar y
compartir
resultados
Depurar, editar y
revisar
(retroalimentación)
Optimizar
códigos
Generalizar y
transferir
Estructura secuencial
Estructura
iterativa (ciclos)
Manejo de eventos
Estructuras condicionales
Proposiciones
(lógica booleana)
Operadores
Variables y
Listas
Coordinación y sincronización (enviar
mensajes)
Paralelismo (hilos)
Interacción dinámica (tiempo
real)
POLÍGONOS PENSAMIENTO COMPUTACIONAL CONCEPTOS DE PROGRAMACIÓNDibujar un cuadrado en el reverso de esta hoja Ö ¿Qué es un cuadrado? Ö Ö Ö Ö Determinar qué hacer Ö Elaborar un programa para dibujar un cuadrado en Scratch Ö Ö Ö Ö
Probar el programa resultante Ö Ö Ö Ö ¿qué pasó? ¿Por qué no dibuja? Ö Ö Ö Ö Determinar qué hacer Ö Modificar el programa para lograr que dibuje el cuadrado Ö Ö Ö Ö Ö
Probar las modificaciones Ö Ö Ö Ö
¿Qué es un pentágono?
“
Memoria, pensamiento si
mbólico, signos
Formular problemas
(identificar una
meta)
Descomponer el
problema
Recopilar y organizar datos
Estructuras de datos (tablas,
árboles,
redes)
Analizar datos
Formular un plan
Ejecutar un primer
intento
para
alcanzar la
meta
Representar
datos (abstracciones, si
mulaciones)
Algoritmos y procedimientos
Automatización
(pasos
ordenados)
Probar, evaluar y compartir
resultados
Depurar, editar y
revisar
(retroalimentación)
Optimizar
códigos
Generalizar y
transferir
Estructura secuencial
Estructura
iterativa (ciclos)
Manejo
de eventos
Estructuras condicionales
Proposiciones
(lógica
booleana)
Operadores
Variables y
Listas
Coordinación y sincronización (enviar
mensajes)
Paralelismo (hilos)
Interacción dinámica (tiempo
real)
POLÍGONOS PENSAMIENTO COMPUTACIONAL CONCEPTOS DE PROGRAMACIÓN
¿Qué es pentágono? Ö Ö Ö Ö
Determinar qué hacer Ö
Modificar el programa para dibujar un pentágono Ö Ö Ö Ö Ö Ö Ö
Probar las modificaciones Ö Ö Ö Ö Ö
¿Cómo dibujar cualquier polígono regular?
“
Memoria,
pensamiento simbólico, signos
Formular
problemas
(identificar una meta)
Descomponer el problema
Recopilar y organizar datos
Estructuras
de datos
(tablas, árboles,
redes)
Analiza
r datos
Formular un plan
Ejecutar un pri
mer intento para
alcanzar la
meta
Representar datos (abstracciones
, simulaciones
)
Algoritmos y procedimientos
Automatización (pasos ordenados
)
Probar, evaluar
y compartir resultados
Depurar, editar y revisar (retroalimentación)
Optimizar
códigos
Generalizar y transfer
ir
Estructura secuencial
Estructura iterativa
(ciclos)
Manejo
de eventos
Estructuras
condicionales
Proposiciones (lógica booleana)
Operadores
Variables y
Listas
Coordinación y
sincronización (enviar mensajes)
Paralelismo
(hilos)
Interacción
dinámica (tiempo
real)
POLÍGONOS PENSAMIENTO COMPUTACIONAL CONCEPTOS DE PROGRAMACIÓN¿Cómo dibujar cualquier polígono regular? Ö Ö Ö Ö Determinar qué hacer Ö Modificar el programa para dibujar cualquier polígono regular Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö ÖProbar las modificaciones Ö Ö Ö Ö Ö Ö Ö
¿Qué pasa en Scratch cuando el polígono regular tiene muchos lados? Ö Ö Ö Ö Determinar qué hacer Ö Modificar el programa para dibujar polígonos regulares Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö ÖProbar las modificaciones Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö¿Podemos mejorar el código? Ö Ö Ö Ö Determinar qué hacer Ö Modificar el programa para hacer más claro el código Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö ÖProbar las modificaciones Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö
MUCHAS GRACIAS
Juan Carlos López – editor@eduteka.orgGonzalo Ulloa – gulloa@icesi.edu.co