sábado, 24 de noviembre de 2012

Pensamiento Computacional: Paralelismo Jeannette Wing

Introducción.


Fuente http://competencias3m.wordpress.com

El paralelismo se define como la capacidad que tiene los artefactos programables de realizar tareas o acciones de manera simultánea, Brenan y Resnik (2012) lo definen como “… secuencias de instrucciones que se suceden simultáneamente”. Visto como una competencia, es la capacidad de utilizar este recurso computacional de manera eficiente y oportuna. Más concretamente, consiste en la capacidad para programar tareas en un dispositivo inteligente de manera tal que puedan trabajar de manera simultánea y coordinada para el logro de un objetivo específico.
Muchos de los dispositivos inteligentes modernos tienen esta capacidad, es posible escribir un mensaje de texto mientras se monitorea el estado de recepción de la señal, o se recibe una llamada, por ejemplo. El entendimiento de esta capacidad es vital para comprender hasta donde es posible llegar con un dispositivo programable determinado y por ende cómo obtener el mejor provecho de él. Además tanto siga evolucionando la tecnología, habrá dispositivos con mayor poder de procesamiento y mejores características.
Para el programador, es una competencia básica para la elaboración de programas que además reviste un nivel de dificultad mayor relacionado por ejemplo con la identificación de patrones.
Para desarrollar esta habilidad con Scratch, se propone entonces utilizar los diálogos como elemento para la introducción de este indicador, por tratarse de un recurso literario bien conocido por los niños y sumamente fácil de implementar en este entorno. En concordancia con esta situación es posible mencionar el documento “Computación Creativa. Una Introducción al Pensamiento Computacional orientado al diseño, este documento presenta una serie de actividades para el desarrollo del PC. La Sesión 3, específicamente utiliza los diálogos para la introducción al paralelismo.

La Estrategia.

Paso 1. Para iniciar, los estudiantes deben dominar  los bloques decir … por, decir, pensar…por y pensar. De los bloques de control, es necesario saber utilizar los bloques al presionar bandera verde, y esperar … segundos.Pueden explicarse antes de la actividad de forma magistral apoyándose en el entorno un videobeam es ideal o una pizarra digital para esto.
Paso 2. Seguidamente solicite a los chicos que seleccionen dos personajes (objetos) cualesquiera los coloquen sobre algún escenario y programen una conversación corta como un intercambio de saludos. Lo primero que preguntarán es cómo hacer para que no “hablen al mismo tiempo”, con esta observación concientizan la esencia del paralelismo, pero ven la necesidad de coordinar los programas. Si no descubren el uso del esperar … segundos, puede ayudárseles pero dejar que descubran cómo utilizarlo. Usualmente a alguno se le ocurre y se encarga de mostrar su hallazgo a los demás. Estas interacciones sociales resultan ser fijadores increíblemente efectivos del aprendizaje (cabe mencionar aquí  Vigosky ).
Paso 3. El siguiente paso puede ser ampliar la conversación entre los personajes, puede solicitarse que cada personaje “hable” al menos cinco veces.
Paso 4. Después de esta experiencia, puede introducirse el uso de los diagramas de tiempo, como herramienta para el diseño de diálogos. Con una hoja de cálculo (Excel por ejemplo) se puede hacer fácilmente ya que tiene la retícula incluida y se pueden importar objetos como las cajas de diálogos en la sección de insertar à formas:
En este caso, cada fila representa un (1) segundo, las cajas de dialogo se estiran hasta ocupar la cantidad de segundos (filas) que estará visible el texto y los espacios en blanco representan el tiempo que ha de esperar el objeto antes de presentar el siguiente texto:
Es muy fácil también realizar esta plantilla en papel o crearla en la hoja de cálculo e imprimirla.
Paso 5. Una vez que los estudiantes han dominado esta técnica, pueden abordar proyectos más ambiciosos, donde se combine el diálogo con el movimiento, en estos casos es recomendable realizar un programa para el diálogo y otro para el movimiento en cada objeto.
Les dejo el siguiente proyecto, con su respectiva hoja de tiempo como un ejemplo de lo planteado.
Scratch Project