Conferencia: "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.
http://www.eduteka.org/ScratchDay2012/
3. Introducción
En 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?
4. Etapas para la solución
Tomado de http://www.eduteka.org/pdfdir/AlgoritmosProgramacion.pdf
Citando a Polya
5. Introducción
La 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..!
8. Hormigas y acacias
La simbiosis que existe entre las
acacias y las hormigas, la acacia
alimenta la hormiga y la hormiga
protege la acacia de los insectos
depredadores.
9. Problemas del mundo
moderno
Piensen 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.
10. 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
11. 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.
12. Problemas (4)
John Snow – MD Anestesiólogo fundó
las bases de la Epidemiología
13. 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.
14. Problemas
Solo en 1883, 20 años después de la
epidemia, Robert Koch logró
identificar la bacteria que ocasionaba
el cólera.
15. Otro problema del mundo
moderno
Piensen 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.
16. Otro problema del mundo
moderno
Alguien soñó en tener una red que
interconectara a todos. Que la red
fuera libre y gratuita.
Internet
17. Otro problema del mundo
moderno
Muchos 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..!
18. El mundo de hoy
Vivimos 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?
19. 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/
20. Pensamiento computacional
(2) el mundo de hoy el pensamiento
En
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
CMU Center for Computational Thinking – efectivamente.
y resolver problemas
http://www.cs.cmu.edu/~CompThink/
22. Pensamiento Algorítmico
Un 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
24. 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.
25. Pensamiento computacional
Pensamien
to
Científico
Soluciones
eficientes
Pensamien
to Lógico
Pensamien
to
Algorítmico
26. Soluciones eficientes
Una 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..
27. Pensamiento computacional
Pensamien Innovación
to y
Científico Creatividad
Soluciones
eficientes
Pensamien
to Lógico
Pensamien
to
Algorítmico
28. Pensamiento creativo
(Innovación)
Espiral de la creatividad – Michael Resnick- MIT Media Lab - Lifelong Kinderga
29. 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 complejidad
Persistencia al trabajar con problemas
difíciles
Tolerancia a la ambigüedad.
Habilidad para lidiar con problemas no
estructurados (open-ended)
Habilidad para comunicarse y trabajar con
30. Por qué usar Scratch para
fortalecer el Pensamiento
computacional?
Facilidad de uso
Exige 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
35. Scratch
cuadrado
POLÍGONOS
Determinar qué hacer
Determinar qué hacer
¿Qué es un cuadrado?
Probar las modificaciones
Probar el programa resultante
¿qué pasó? ¿Por qué no dibuja?
Modificar el programa para lograr que dibuje el
Dibujar un cuadrado en el reverso de esta hoja
Elaborar un programa para dibujar un cuadrado en
Memoria, pensamiento simbó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, simulaciones)
Algoritmos y procedimientos
Automatización (pasos ordenados)
Probar, evaluar y compartir resultados
PENSAMIENTO COMPUTACIONAL
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)
CONCEPTOS DE PROGRAMACIÓN
Interacción dinámica (tiempo real)
37. “
POLÍGONOS
Determinar qué hacer
¿Qué es pentágono?
Probar las modificaciones
Modificar el programa para dibujar un pentágono
Memoria, pensamiento simbó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, simulaciones)
Algoritmos y procedimientos
Automatización (pasos ordenados)
Probar, evaluar y compartir resultados
PENSAMIENTO COMPUTACIONAL
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)
CONCEPTOS DE PROGRAMACIÓN
Interacción dinámica (tiempo real)
39. “
POLÍGONOS
muchos lados?
Determinar qué hacer
Determinar qué hacer
Determinar qué hacer
Probar las modificaciones
Probar las modificaciones
Probar las modificaciones
¿Podemos mejorar el código?
¿Cómo dibujar cualquier polígono regular?
Modificar el programa para hacer más claro el código
Modificar el programa para dibujar polígonos regulares
¿Qué pasa en Scratch cuando el polígono regular tiene
Modificar el programa para 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)
Analizar datos
Formular un plan
Ejecutar un primer intento para alcanzar la meta
Representar datos (abstracciones, simulaciones)
Algoritmos y procedimientos
Automatización (pasos ordenados)
Probar, evaluar y compartir resultados
PENSAMIENTO COMPUTACIONAL
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)
CONCEPTOS DE PROGRAMACIÓN
Interacción dinámica (tiempo real)
40. MUCHAS GRACIAS
Juan Carlos López –
editor@eduteka.org
Gonzalo Ulloa –
gulloa@icesi.edu.co