.comment-link {margin-left:.6em;}

BETA (Bytes sobre Educación y Tecnología en Argentina)

lunes, abril 11, 2005

Squeak - Segunda Parte

Va la segunda parte del reportaje sobre Squeak

¿Pero, pensando en el trabajo diario de un docente, cómo se aplica esto de los objetos?

Pongamos otro ejemplo. En un lenguaje de programación tradicional, cuánto da un tercio más un tercio, o sea 1/3 + 1/3. Decimal más, decimal menos, el resultado será 0.666666, el mismo resultado que daría una calculadora. Sin embargo, si estamos enseñando fracciones y no operaciones con números decimales, este resultado no nos sirve. En Smalltalk esta operación da como resultatado dos tercios (2/3). Porqué? Porque existe un objeto "fracción" que responde al mensaje suma, de manera distinta que los números enteros o los números decimales: siempre devuelve otro objeto "fracción". Porque los números no son datos, son objetos. Y responder de distinta manera a los mismos mensajes forma parte del conocimiento que está dentro de los objetos y no afuera, en las operaciones.

Volviendo entonces a la pregunta inicial, además de ser un Smalltalk, qué es Squeak?

Squeak es muchas cosas más. Es un Smalltalk solo en un nivel, el más bajo, el nivel en el que trabajan los programadores. Pero como un Smalltalk es un mundo en donde habitan objetos, estos objetos pueden servirnos para muchas cosas y no es necesario ser un programador para aprovecharlas.
Por ejemplo, Squeak es un pintor, o sea un programa de dibujo como el paint de Windows. De la misma forma que hacemos un dibujo con uno de esos programas, lo podemos hacer con Squeak. La diferencia es que, al estar dentro del mismo ambiente de objetos, al terminar del dibujo, en lugar de tener una imagen que deberemos grabar como archivo en un formato determinado para usarlo después para otra cosa, lo que tendremos es un nuevo objeto en el mundo de Squeak. Al ser un objeto, en lugar de una serie de datos, podremos hacer que se comporte de determinada manera, que interactue con otros objetos de ese mundo.

¿Ese objeto nuevo, es lo que se llama un "eToy"?

Si, un eToy es un objeto visual, un dibujo, al que le podemos "programar" acciones. Un eToy puede avanzar, retroceder, girar, reconocer colores, reconocer otros eToys, etc. Esta "programación" no se hace con un lenguaje formal, si no escribiendo un "guión" en donde indicamos las acciones que queremos que realice. Este guión no consiste en instrucciones de un lenguaje de programación: lo que se hace es arrojar "tejas" dentro del guión; cada teja representa una acción distinta. Por ejemplo, para que el eToy se mueva avanzando, tenemos que arrojar la teja "avance". Apretamos un botón y el guión comienza a correr: nuestro dibujo comenzará avanzar. Podemos seguir arrojándole tejas distintas, por ejemplo la teja "girar": nuestro dibujo avanzará y girará a la vez, es decir, dará vueltas en círculo.

¿Cual es la idea atrás de los eToys?

Los eToys están pensados para ser usados en la enseñanza primaria. La idea es que jugando con dibujos e instrucciones, los niños adquieren conocimientos a través de la experiencia de construir cosas e interactuar con ellas, y no incorporando conocimientos abstractos. Después de jugar con eTyos, llegar a abstracciones como "número negativo" o "ley de la gravedad" es sólo la resultante natural de una experimentación concreta.