Vous êtes sur la page 1sur 4

SOFTWARE SQUEAK

Squeak: contenidos educativos


L as nuevas tecnologías
están introduciendo ele-
mentos modernos dentro
del sistema educativo, así
el docente puede ampliar el catá-
logo de recursos a su alcance
facilitando el proceso de aprendi-
zaje del alumno.
Una de las herramientas más conoci-
das en este ámbito es Squeak, un proyec-
to internacional en el que colabora la
Junta de Extremadura.
En las siguientes páginas realizaremos El famoso conejo, en tres dimensiones. Un ejemplo de manipulación de texto.
un repaso a las principales características
de este entorno de creación de conteni- Como muestra, podemos destacar las ▼ INSTALACIÓN
dos multimedia. siguientes características: La manera más sencilla de conseguir que
 Alta portabilidad de sus proyectos, gra- Squeak funcione en nuestra máquina es a
▼ INTRODUCCIÓN cias a la máquina virtual que funciona través del CD autoarrancable que se
Squeak (http://www.squeak.org) es una en los sistemas operativos más exten- puede descargar desde la página del pro-
implementación open source de Smalltalk, didos. yecto gnuLinEx. Al cierre de estas líneas la
un lenguaje de programación orientado a  Soporte de gráficos y vídeo, incluyendo última versión disponible era la 3.8, y se
objetos diseñado durante la década de renderizado en tres dimensiones. podía descargar desde el servidor CVS
los setenta. Su diseño ha influido en el  Soporte de sonidos y música, con (http://cvs.linex.org/linex2004/Squeak-
desarrollo de muchos otros lenguajes y, motor de habla incorporado. 3.8-LIVE.iso). Se trata de una imagen ISO
pese al paso del tiempo, no ha quedado  Integración con la Web gracias a la que debemos grabar en un CD, y puesto
relegado a un segundo plano, sigue vivo y posibilidad de visualizar los proyectos que se trata de un formato estándar,
evolucionando. en un navegador. prácticamente cualquier software de gra-
Smalltalk tiene características presen- bación nos valdrá. Después configurare-
tes en los lenguajes de programación más Es por ello que la Junta de Extremadu- mos el ordenador para que pueda arran-
modernos. Así, por ejemplo, todo es con- ra, dentro del proceso de alfabetización car desde la unidad lectora de CDs, y rei-
siderado un objeto que puede ser modifi- tecnológica en el que se encuentra niciaremos desde ella. En unos pocos
cado dinámicamente. La interacción con gnuLinEx, ha apostado por Squeak y está segundos se cargará un sistema operati-
el usuario sigue la metodología modelo- colaborando de forma directa en su desa- vo GNU/Linux que lanzará automática-
vista-controlador para abstraer los dife- rrollo y en la generación de nuevos conte- mente el entorno.
rentes componentes de un programa. nidos. Para usar Squeak dentro de una distri-
Posee un recolector de basura interno SmallLand (http://www.small-land.org) bución que ya está instalada, lo más senci-
para un eficiente manejo de la memoria, y es el centro de recursos educativos de llo es que sigamos las instrucciones del
sus programas se ejecutan sobre una Squeak en español y es la mejor toma de proyecto SmallLand, concretamente las
máquina virtual implementada en contacto posible. Especialmente intere- que podemos encontrar en la página de
Smalltalk, lo que facilita la portabilidad de sante es el wiki (http://swiki.agro.uba.ar/ instalación de su wiki (http://swiki.agro.
sus aplicaciones. Además, para mejorar el small_land), dado que contiene una gran uba.ar/small_land/58). Así, además, lo ten-
rendimiento, las aplicaciones pueden ser cantidad de información válida para estu- dremos en español y con algunos ficheros
compiladas para una arquitectura deter- diantes, profesores e incluso desarrollado- de ejemplo que nos ayudarán a comenzar.
minada. res que deseen colaborar en la marcha En lo sucesivo será necesario estar
El propósito de Squeak es aprovechar del proyecto. autenticados como administradores
todas estas virtudes de Smalltalk para cons- A continuación veremos cómo instalar (root). Si estamos utilizando un sistema
truir un entorno de generación de aplicacio- Squeak en nuestro propio ordenador. Así Debian, añadiremos la siguiente línea al
nes especialmente destinado al mundo podremos realizar un breve recorrido por fichero /etc/apt/sources.list:
educativo (http://www.squeakland.org). sus principales características.
deb http://www.linex.org/sources
/linex/debian/ woody linex
Squeak es una implementación open source de Smalltalk,
Si usamos gnuLinEx no será necesa-
un lenguaje de programación orientado a objetos rio puesto que ya viene incluido por

46 · TODO LINUX · Número 52 www.iberprensa.com


SQUEAK SOFTWARE

Y para instalarlos:

# rpm -Uvh *rpm

En algunos casos puede que sea


necesario instalar previamente la librería
NAS (Network Audio System), la cuál se
puede descargar desde
http://radscan.com/nas.html. De este
modo instalaremos en nuestro ordenador:
la máquina virtual, el plugin para el nave-
gador, las fuentes de las clases del siste-
Un muestrario de objetos multimedia de Squeak. ma y una imagen de sesión. La pantalla de presentación del Squeak de SmallLand.
Ahora, para lanzar Squeak, tecleare-
defecto. Después actualizaremos la base mos squeak en una ventana de terminal: ce maximizada a la izquierda contiene un
de datos de paquetes e instalaremos pequeño texto de introducción, que es
Squeak: $ squeak aconsejable que leamos detenidamente si
es la primera vez que nos manejamos en
# apt-get update o buscaremos el icono correspondiente este entorno. Además, contiene dos enla-
# apt-get install squeak dentro de Aplicaciones -> Sonido y vídeo ces a páginas introductorias en el wiki que
(para esto ya no necesitamos ser adminis- citábamos antes. Si pulsamos sobre ellos
Para sistemas basados en RPM des- tradores del sistema). Squeak se integra se abrirá un navegador dentro del propio
cargaremos desde http://squeak.linex.org/ perfectamente con el escritorio GNOME. entorno Squeak, no hay necesidad de lan-
rpm los cuatro archivos siguientes: zar ninguna aplicación externa. Algo más
 squeak-image-3.5.5180linex-16. ▼ PRIMEROS PASOS abajo está “Ratonete”, la mascota de
i386.rpm (10.9 Mb) La primera vez que lo arrancamos vere- SmallLand, que nos dará la bienvenida
 squeak-plugin-3.3-2.i386.rpm mos una Figura como la que aparece arri- cuando pulsemos sobre él.
(5.3 Mb) ba a la derecha. A la derecha tenemos una matriz de
 squeak-sources-3_all-2.i386.rpm Squeak recrea dentro de una ventana ventanas de dos colores distintos que sir-
(3.3 Mb) un escritorio de lo más simpático. Desde ven para familiarizarnos con el entorno, las
 squeak-vm-3.7b_linex-6.i386.rpm ella podemos acceder a todas sus funcio- cinco primeras (de color azul) son los
(520 Kb) nalidades. La ventana amarilla que apare- siguientes tutoriales:

Entrevista a Diego Gómez Deck 


 Todo Linux: Antes de nada nos gustaría que te presentaras para Para dar algunos ejemplos:
que podamos conocerte un poco mejor, ¿quién es Diego Gómez Deck – Los condicionales no existen como parte del lenguaje
y a qué se dedica exactamente? que tiene Smalltalk, sino que se resuelve enviando un
■ Diego Gómez Deck: Mi nombre es Diego Gómez Deck, tengo 32 años, mensaje a un objeto de clase Boolean. Lo mismo ocurre
soy argentino y amante de las computadoras y la programación. Me dedico a con las estructuras de control.
ello de forma profesional desde hace 16 años. Descubrí Smalltalk y Squeak – Las clases son objetos de pleno derecho, por ejemplo, para agregar un mé-
hace unos seis años, y desde hace algunos soy parte activa en la comunidad todo a una clase hay que enviarle un mensaje a la misma clase.
que desarrolla el proyecto. Hace aproximadamente un año llegué a – El compilador es un objeto y eso permite, por ejemplo, refinar el comporta-
Extremadura para ser parte de la revolución que está ocurriendo por estas miento del compilador para determinadas clases.
tierras, y actualmente trabajo como Director del Proyecto Squeak. – El contexto de ejecución de los métodos también son objetos de primera
 TL: Squeak es una implementación abierta del sistema de progra- clase y eso permite, por ejemplo, que el depurador esté 100 por cien escrito
mación Smalltalk, diseñado hace más de 30 años, ¿cuáles son esas en Smalltalk.
características fundamentales que le han permitido sobrevivir du-  TL: El interés por Squeak ha crecido muchísimo últimamente y, a
rante tanto tiempo? pesar de su larga trayectoria, se habla de él como un proyecto inno-
■ DGD: La característica fundamental de Smalltalk es que todo es un objeto. vador y ambicioso, ¿A qué se debe?
De hecho, la programación orientada a objetos fue uno de los tantos aportes ■ DGD: El éxito de Squeak se debe, en mi opinión, a que retoma el camino que
que el proyecto Smalltalk ha hecho a la informática. Una vez escuché a Alan el proyecto Smalltalk perdió a principios de los años ochenta. En esa fecha Xerox
Kay decir que no hay que confiar en lenguajes de programación que no pue- decide mostrar los resultados de los diez años de investigación y desarrollo del
dan soportarse a sí mismos. Todo en Smalltalk está escrito en Smalltalk, si- proyecto, y muchas empresas se vuelcan en el uso comercial de Smalltalk.
guiendo siempre los mismos conceptos: Objetos y Mensajes. Prácticamente en ese mismo momento Smalltalk perdió sus capacidades multi-
Creo que todos los programadores deberían aprender, como mínimo, tres len- media. El ordenador puede simular cualquier medio de expresión (texto, vídeo,
guajes: Smalltalk, LISP y Prolog. gráficos, sonido, música, etc) y ese hecho, sumado a la propia capacidad de si-
 TL: ¿En qué se diferencia de otros sistemas de programación más mulación, lo convierte en un nuevo medio de expresión diferente a todos los an-
modernos como Java o C# que también usan una máquina virtual? teriores. En el año 95 Alan Kay y gran parte del grupo que desarrolló Smalltalk en
■ DGD: La diferencia fundamental es que Smalltalk es fiel a los conceptos de la los 70, retoman su propio trabajo en ese punto y comienzan el proyecto Squeak
programación con objetos. En Smalltalk todo, absolutamente todo, es un objeto. pretendiendo poner en manos del usuario todo el poder de simulación de las

www.iberprensa.com Número 52 · TODO LINUX · 47


SOFTWARE SQUEAK

 Conducir un coche con Squeak un catálogo de objetos que podemos in-


 Pecera 3D sertar en nuestros proyectos: texto, soni-
 Presentaciones dos, polígonos, relojes, etc.
 Uso de textos
 Un auto que conduce ▼ SMALLTALK
La primera y la última nos enseñan a Y para terminar, descenderemos hasta los
construir un coche y una pista para que se pilares de Squeak: Smalltalk. No debemos
desplace. La pecera nos introduce en el olvidar que Squeak es, al fin y al cabo, una
diseño tridimensional, las otras dos nos implementación open source de este len-
muestran cómo crear presentaciones de guaje de programación. A continuación ha-
ordenador con Squeak y a manejar el remos lo más parecido a a crear un progra-
texto de diferentes maneras. mar en este “entorno de desarrollo”.
Cada actividad es un “proyecto” y Aprendiendo a manipular objetos. En Smalltalk todo es un objeto que
podemos pasar de uno a otro pulsando básicamente recibe mensajes de la
con el botón izquierdo del ratón sobre el muy diferentes maneras. Por ejemplo, el siguiente manera:
escritorio, se desplegará un menú con “ratonete” parlanchín de la portada lo es, y
numerosas opciones. Las cuatro primeras si pulsamos sobre él con el botón dere- objeto mensaje
nos sirven para pasar de un proyecto a cho del ratón se activarán una serie de
otro o para cargar uno nuevo, y las cinco iconos a su alrededor que nos dejarán, Supongamos que queremos escribir el
últimas guardan los cambios y salen del entre otras cosas: borrarlo, colapsarlo, clásico “Hola Mundo” en Smalltalk.
entorno. mostrar su visor de propiedades, cam- Fijémonos antes cómo sería en otros len-
Las otras cuatro ventanas (moradas) biarlo de tamaño, moverlo y redibujarlo. Lo guajes orientados a objetos. Por ejemplo,
son proyectos que ejemplifican lo que se mismo ocurre si pulsamos con el botón en C# (y en Java sería completamente
puede llegar a hacer con Squeak. derecho sobre el propio escritorio. análogo) haríamos lo siguiente:
Tenemos un cambalache con un popurrí Para crear un nuevo proyecto pode-
de objetos: un ratón que enseña la dife- mos usar la pestaña naranja, (“navega- using System;
rencia entre pH ácido y básico, un ejemplo dor”), que podemos ver en la parte inferior
literario que sitúa el texto de forma ser- de la pantalla. Pulsaremos sobre “Nuevo” y class HolaMundo
penteante y el famoso conejo de las pilas, se creará una pequeña ventana anónima {
implementado en tres dimensiones. en la que podemos comenzar a trabajar. Si static void Main ()
Como decíamos al comienzo, todo es pulsamos sobre ella se maximizará. Con la {
un objeto que puede ser manipulado de pestaña roja, “Provisiones”, accedemos a Console.WriteLine (“¡Hola Mundo!”);

Entrevista a Diego Gómez Deck (cont.) 


computadoras. Un dato curioso es que el Squeak versión 1.0 no es más que un  TL: En la práctica, ¿cómo se utiliza hoy día Squeak? ¿nos podrías
Smalltalk/80 “actualizado” a una estructura de 32 bits y manejo de colores. contar algunos ejemplos concretos?
 TL: Extremadura se ha unido al esfuerzo internacional que hace ■ DGD: La Junta de Extremadura apuesta por los usos educativos de
posible Squeak y está apoyando su desarrollo de manera decidida, Squeak, pero éste incluye muchos otros tipos de uso, ya que es un entorno de
¿en qué se concreta ese trabajo? programación completo. En los usos no-educativos Squeak está teniendo
■ DGD: Básicamente el trabajo que hacemos en Extremadura está encuadra- mucho éxito para el desarrollo de aplicaciones web con el uso de un frame-
do en tres áreas: Difusión, Regionalización y Desarrollo. work de características únicas llamado Seaside. También tiene una utilidad
El trabajo de difusión incluye la generación de documentación, organización bastante extendida como herramienta de investigación en lenguajes de pro-
de charlas, cursos, presentación de Squeak en varias conferencias nacionales gramación, interfaces de usuario, etc., y se emplea en proyectos de investiga-
e internacionales, etc. La regionalización incluye la modificación de Squeak ción en la Universidad de Berna (Suiza) y la de Kyoto (Japón).
para hacerlo traducible y la traducción al español. El trabajo de hacerlo tradu- Como herramienta para la educación se está usando básicamente de dos for-
cible permitió que Squeak también esté disponible en gallego, catalán, fran- mas: para la publicación multimedia, y para que los niños aprendan por sí so-
cés y alemán, y se están preparando trabajos de traducción al italiano y eus- los. En el sitio http://repository.small-land.org tenemos más de 200 proyectos
kera. Y por último, el trabajo de desarrollo incluye la creación de todo tipo de que muestran ambas formas de uso, y en http://www.small-land.org se pue-
herramientas que se puedan necesitar en el ámbito educativo. de encontrar documentación y sugerencias de uso, así como una lista de co-
 TL: ¿Cuántas personas se encuentran involucradas de una u otra rreo en español que agrupa a unas 200 personas de España y Latinoamérica.
manera?  TL: ¿Se puede decir que Squeak es una herramienta única o cono-
■ DGD: En el equipo de Squeak contamos con unas cinco personas. ces alguna buena alternativa? ¿Su funcionamiento final se parece a
 TL: ¿Tenéis conocimiento de que otras Comunidades Autónomas NeoSoft NeoBook?
estén adoptando Squeak también? ¿Quizás Andalucía? ■ DGD: Sin duda Squeak es una herramienta única ya que puede incluir las
■ DGD: Las Juntas de Extremadura y Andalucía tienen un acuerdo de colabo- características de todas las aplicaciones conocidas. Squeak tiene posibilida-
ración que se plasma en los proyectos LinEx/GuadaLinEx y también en des de procesamiento de texto, de imágenes, sonido de todo tipo (MP3, midi,
Squeak. Hemos dado varias charlas y cursos de Squeak en Andalucía y se sonido FM), capacidades de text to speech, capacidades gráficas 2D y 3D, etc.
que varios profesores lo usan diariamente. También tengo conocimiento de  TL: Los profesores son parte fundamental del sistema educativo y
que usan Squeak profesores en Galicia, Madrid y en varios lugares de los responsables últimos de utilizar las nuevas tecnologías en el au-
Latinoamérica como Argentina, Uruguay y Perú. la ¿qué clase de respuesta habéis obtenido de ellos?

48 · TODO LINUX · Número 52 www.iberprensa.com


SQUEAK SOFTWARE

} ra escribiremos el código y en la segunda Esto no es más que una brevísima in-


} aparecerán los resultados. troducción al lenguaje. Para profundizar en
Para crear un espacio de trabajo, pul- su conocimiento podemos consultar los si-
Esto es, tenemos un objeto llamado samos con el botón izquierdo sobre el tios que hemos venido citando hasta aho-
Console (que es una clase) que recibe escritorio y, en el menú emergente, elegi- ra. También Wikipedia tiene información y
una determinada información (la cadena mos Abrir... -> Espacio de trabajo (k). Para enlaces que pueden resultarnos de utilidad
“¡Hola Mundo”) y que la procesa a través crear un Transcript se procede de forma (http://en.wikipedia.org/wiki/Smalltalk).
de uno de sus muchos métodos parecida. Volvemos a pulsar con el botón
(WriteLine). Al ejecutar este programa se izquierdo sobre el escritorio, seleccionan- ▼ CONCLUSIÓN
vería la cadena impresa en pantalla. Pues do ahora Ventanas -> Encontrar un trans- Hace unos años, cuando la Administración
bien, en Smalltalk tenemos una forma cript (t). Ya tenemos las dos ventanas Pública anunció su apuesta por el software
parecida de hacerlo, concretamente la necesarias, en el espacio de trabajo escri- libre en la enseñanza, uno de los primeros
siguiente: biremos la línea de código anterior. problemas que se plantearon fue la migra-
Para ejecutar el código hay que pulsar ción de aplicaciones educativas a GNU/
Transcript show: ‘¡Hola Mundo!’ con el botón central del ratón dentro del Linux. La gran mayoría de las existentes no
espacio de trabajo. En el menú que apa- eran multiplataforma, y no se podían usar
En este caso, y siguiendo el formato rece se selecciona ejecútalo (d), acto sin más en las nuevas distribuciones públi-
anterior, el objeto que recibe el mensaje seguido la ventana de Transcript actualiza- cas. Con Squeak este problema desapare-
se llama Transcript, y el mensaje es todo rá su contenido como en la Figura: ce, puesto que no solo se trata de una so-
lo demás: show: ‘¡Hola Mundo!’. El análo- lución multiplataforma, sino que además es
go al método WriteLine sería show. En un entorno especialmente diseñado para
este caso, no necesitamos los puntos facilitar la creación de contenidos educati-
para separar los objetos de sus métodos, vos. Su uso no requiere de grandes cono-
y la información que se recibe (los pará- cimientos si se desean realizar tareas relati-
metros) no necesita encajarse entre vamente sencillas. Además, dado su ca-
paréntesis. rácter open source, aquellos que quieran
Para llevar este ejemplo a la práctica, profundizar en su uso y conocimiento, no
dentro del entorno de Squeak, necesita- se encontrarán ante ningún obstáculo que
remos crear dos ventanas nuevas. Una pueda entorpecer el proceso de enseñan-
será el espacio de trabajo (workspace si za-aprendizaje. ■
estamos usando una versión sin traducir) ✒ ANTONIO ZUGALDÍA
y la otra será la de Transcript. En la prime- azugaldia@iberprensa.com

Entrevista a Diego Gómez Deck (cont.) 


■ DGD: Estamos teniendo todo tipo de respuestas, desde profesores que no  TL: Dice Alan Kay, una de las personalidades detrás de Squeak y
quieren cambiar, hasta aquellos que se involucraron en el proyecto realizando Smalltalk, que “la mejor manera de predecir el futuro es inventarlo”,
una gran aportación (incluyendo su valioso tiempo libre). Lo que sí notamos ¿en qué futuro estáis trabajando? ¿qué se puede esperar de este
es que, conforme avanzamos en la tarea de difusión, más gente se acerca al proyecto próximamente?
proyecto. ■ DGD: Uno de los principios que rige el desarrollo es que Squeak debe ser-
 TL: A pesar de los numerosos avances tecnológicos que, como vir de plataforma para convertir al mismo Squeak en obsoleto; dentro de ese
Squeak, pueden servir de apoyo a la enseñanza, hay quien aún con- esquema la comunidad es muy receptiva a aceptar todo tipo de proyectos in-
fía más en métodos más clásicos o tradicionales, ¿en qué medida novadores. Dentro de la Junta de Extremadura ponemos especial énfasis en
crees que favorecen al aprendizaje estos nuevos métodos? conectar todo el hardware posible a Squeak. Hace unos meses terminamos el
■ DGD: Tanto el sistema educativo 'tradicional', cómo todos los medios de soporte de webcams y dispositivos de vídeo dentro del proyecto, y en este
expresión que manejamos hoy en día, nos adjudican un rol de consumidor momento estamos terminando el soporte de programación de Lego
pasivo. Desde los libros a la TV, pasando por las películas en DVD, la pizarra, Mindstorms y tenemos planeado conectar el Squeak a GPSs, a centrales me-
los libros de texto, etc., nos condicionan a ser meros consumidores pasivos teorológicas, a pizarras inteligentes y en general a cuanto hardware se nos
de la información ya que la interactividad que estos medios brindan es, como cruce por delante. Squeak corre actualmente en 25 plataformas diferentes
mínimo, muy limitada. El ordenador está siendo muy usado hoy en día para (Linux, otros sabores de UNIX, Windows, Apple, iPaq, y un largo etc.) y conoz-
imitar estos medios y ése es el riesgo mayor que tenemos a la vista. La posi- co un proyecto para portarlo a las nuevas Palm. Por otro lado, estamos eva-
bilidad que nos brinda éste de involucrar más al consumidor de la informa- luando la posibilidad de portar Squeak al sistema operativo Symbian para lo-
ción en el proceso de construcción de su aprendizaje, no implica que automá- grar una mayor presencia en los teléfonos móviles. También hay proyectos en
ticamente el ordenador se vaya a usar para hacer a la gente más crítica y más marcha para hacer una máquina virtual de Squeak de 64 bits, nuevos para-
reflexiva. Lamentablemente nos sobran ejemplos de cómo desperdiciamos digmas de interfaces gráficos como Tweak, mejora de los frameworks “tradi-
las oportunidades que nos ofrecen los nuevos medios de expresión; el ejem- cionales” como Seaside (para aplicaciones web), etc.
plo más ilustrativo es la televisión, nadie duda de su capacidad de comunica- Y, para finalizar, el proyecto que más expectativas está generando: Open
ción, pero no se está usando para hacer a la gente más crítica. Lo más impor- Croquet (http://www.opencroquet.org). Croquet está sentando las bases de có-
tante de Squeak es que promueve la participación del usuario en todos los lu- mo serán los sistemas operativos del futuro próximo, brindando una platafor-
gares posibles, es abierto para que todos puedan modificar cualquier parte ma de objetos distribuidos en red que permite una colaboración entre usuarios
del sistema. nunca antes vista, combinada con un nuevo interfaz gráfico totalmente en 3D.

www.iberprensa.com Número 52 · TODO LINUX · 49

Vous aimerez peut-être aussi