Вы находитесь на странице: 1из 23

ANEXO PRCTICO XO 1.

5 HS
Anexo Prctico para la Gua de Produccin XO 1.5 HS - Versin: 1.0
Fernando Sansberro

Contenido
Captulo 1 - Introduccin................................................................................................... 4 1.1 Sobre la Gua ............................................................................................................. 4 1.2 Pblico Objetivo ......................................................................................................... 4 1.3 Contenido de la Gua ................................................................................................. 5 1.4 Sobre el Autor............................................................................................................. 5 Captulo 2 - La Computadora XO 1.5 HS .......................................................................... 6 2.1 OLPC y la Computadora XO 1.5 ................................................................................ 6 2.2 Hardware .................................................................................................................... 6 2.2.1 La Computadora XO-1.5 ...................................................................................... 7 2.2.2 Display ................................................................................................................. 7 2.2.3 Audio .................................................................................................................... 8 2.2.4 Cmara ................................................................................................................ 8 2.2.5 Red ...................................................................................................................... 8 2.2.6 Dispositivos de Entrada ....................................................................................... 9
2.2.6.1 Teclado .................................................................................................................... 9 2.2.6.2 Gamepad................................................................................................................ 11 2.2.6.3 Touchpad ............................................................................................................... 11 2.2.6.4 Otras Entradas ....................................................................................................... 11

2.3 Software ................................................................................................................... 11 2.3.1 Sistema Operativo ............................................................................................. 12 2.3.2 Interfaz Grfica .................................................................................................. 12 2.3.2.1 Interfaz Grfica Sugar..................................................................................... 13 2.3.2.2 Interfaz Grfica GNOME ................................................................................. 14 2.3.3 El Navegador y las Aplicaciones Web................................................................ 14 Captulo 3 - Desarrollo de Actividades y Juegos .......................................................... 16 3.1 Actividades, Aplicaciones y Aplicaciones Web ......................................................... 16 3.2 Lenguajes de Programacin .................................................................................... 17 _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 2 de 23 Centro Ceibal Uruguay

3.3 Desarrollo en Python ................................................................................................ 17 3.4 Desarrollo en C++ .................................................................................................... 18 3.5 Entornos de Desarrollos ........................................................................................... 18 3.6 Usabilidad y Testing ................................................................................................. 19 3.6.1 Audiencia............................................................................................................... 19 3.6.2 Fundamentos de Diseo ....................................................................................... 19 3.6.3 Testing ............................................................................................................... 19 3.6.4 Instalacin de Actividades y Aplicaciones .......................................................... 20 3.6.5 Desbloqueo y Flasheo de XO 1.5 ...................................................................... 20 3.6.6 Distribucin de Actividades ................................................................................ 20 Referencias ...................................................................................................................... 21

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 3 de 23 Centro Ceibal Uruguay

Captulo 1 - Introduccin

1.1 Sobre la Gua La presente gua es orientada a los desarrolladores de cualquier clase de contenidos para las computadoras XO 1.5, pero poniendo nfasis en el desarrollo de actividades educativas y videojuegos. La gua presenta las caractersticas particulares de las computadoras XO 1.5, y funciona como complemento al Anexo Prctico para la Gua de Produccin que fue escrita para la computadora XO 1.0. Es sumamente importante leer el mencionado trabajo previo, dado que en l se muestran las alternativas de desarrollo existentes, analizando pros y contras de cada una, y enumera un conjunto de tcnicas y prcticas requeridas para el desarrollo de un producto que corra adecuadamente en estas computadoras. En la presente gua, se enumeran las caractersticas de la computadora XO 1.5 y se muestran las diferencias con las computadoras XO 1.0, pero se asume que el lector est familiarizado con el trabajo previo mencionado, dado que aqu se hablan de las diferencias pero no se repiten los conceptos explicados en la gua de XO 1.0. Es recomendable leer primero la gua de XO 1.0, sino obligatorio, ms aun teniendo en cuenta que las dos computadoras no son muy diferentes en cuanto a sus caractersticas. Durante el desarrollo de esta gua se trat de no profundizar demasiado en cada tema para que ste trabajo tenga una funcin de gua introductoria en cada tema. De esta forma se hace posible la consulta rpida de cada tema y en cada uno se listan referencias bibliogrficas o sitios de Internet donde se pueden profundizar los conocimientos. El objetivo de esta gua es que sirva como documento de consulta para las caractersticas de la computadora XO 1.5, mientras que la gua previa sirve como punto de partida para el desarrollo de contenidos para la plataforma XO en general. Nuevamente, es recomendable sino obligatorio leer la gua previa dado que en la presente no se repiten conceptos.

1.2 Pblico Objetivo El pblico objetivo de esta gua son por un lado los programadores que teniendo conocimientos de programacin, ven a la computadora XO como otra plataforma en la cual desarrollar y son los que van a trabajar durante el desarrollo, y por otro lado los gerentes, diseadores, etc. de empresas de informtica y/o audiovisuales que necesiten conocer sobre las caractersticas del desarrollo para la plataforma XO de forma tal de _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 4 de 23 Centro Ceibal Uruguay

poder tomar decisiones con ms informacin a su alcance.

1.3 Contenido de la Gua La gua se divide en dos captulos principales. El captulo dos describe el hardware de la computadora XO 1.5 y el software instalado en ella, as como los dos entornos que trae: Sugar y GNOME. El captulo tres explica que lenguajes de programacin conviene utilizar en cada caso. Los siguientes captulos de la gua de produccin de XO 1.0 son totalmente vigentes para la computadora XO 1.5 y no se encuentran en esta gua con el fin de no repetir conceptos y que quede ms fcil su consulta. Es imprescindible su lectura: Captulo 2 Proceso de Produccin, Captulo 5 - Limitaciones de la Computadora XO y Optimizaciones y Captulo 6 Normas de Usabilidad y Testing.

1.4 Sobre el Autor Fernando Sansberro es Director de Batovi Games Studio (www.batovi.com), un estudio de desarrollo de videojuegos ubicado en Montevideo, Uruguay, que desarrolla juegos para diferentes plataformas como celulares, web y advergaming, juegos casuales para PC, Mac y Linux. Batovi Games ha desarrollado juegos para portales y publishers como AOL, Cartoon Network, Nickelodeon, Big Fish Games, GlobalFun, etc. Fernando ha trabajado tambin como docente enseando programacin de videojuegos web en Flash y programacin de videojuegos Java para celulares en Universidad ORT Uruguay. Muchos de los conceptos volcados en esta gua se recogen de las experiencias adquiridas durante el desarrollo de juegos que Batovi Games Studio ha realizado para la plataforma XO, entre los cuales se encuentran Super Vampire Ninja Zero, Vascolet: La Mquina del Tiempo, Xa contra los Cuatreros Galcticos, Garra Ftbol, Vascolet 2: La Frmula Secreta, Ajedrez y Leyendas , etc.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 5 de 23 Centro Ceibal Uruguay

Captulo 2 - La Computadora XO 1.5 HS


2.1 OLPC y la Computadora XO 1.5 La computadora XO 1.5 HS (High School) es una de las laptops distribuida en el Plan Ceibal en Uruguay [1] para la educacin media (liceos). La otra computadora distribuida en liceos es la Classmate Magallanes de JP SA Couto (existe otra gua de produccin similar a sta para las computadoras Magallanes). La computadora XO 1.5 es diseada por OLPC (One Laptop Per Child) [2] y a simple vista es igual a la computadora XO 1.0, tiene el mismo tamao, pantalla y antenas, con la diferencia que es azul y que tiene un teclado de plstico. El teclado es una de las principales diferencias, para hacer la computadora ms fcil de usar por los estudiantes de educacin media, el teclado tiene teclas ms grandes y es de plstico, siendo ms estndar en lugar de la membrana de goma resistente al agua como tiene la computadora XO 1.0. Comparando con las computadoras actuales en el mercado, la computadora XO 1.5 (al igual que la XO 1.0) tiene una capacidad de procesamiento y almacenamiento limitada. Si comparamos la performance de XO 1.0 y XO 1.5, esta ltima es levemente mayor, pero no tanto como para que cambie la evaluacin realizada en la gua de XO 1.0 sobre el uso de lenguajes o herramientas de desarrollo. Al igual que se explica en la gua de produccin de XO 1.0, durante el desarrollo de una actividad o videojuego, no debe nunca asumirse que las cosas son de la misma manera o funcionan como en otros entornos. La nica forma de asegurarse que algo funciona correctamente es probando en la misma computadora XO 1.5.

2.2 Hardware Las especificaciones completas del hardware de la computadora XO-1.5 en [5]. A continuacin se describe el hardware que es relevante para el desarrollo de actividades. En este documento se puede ver que muchas de las consideraciones de diseo utilizadas en la computadora XO 1.0 tambin permanecen en la XO 1.5, aunque esta ltima apunta a la educacin media. En [23] se pueden ver las especificaciones de las computadoras actuales y tener una idea de lo que se podra venir en futuras versiones de las computadoras.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 6 de 23 Centro Ceibal Uruguay

2.2.1 La Computadora XO-1.5 Las caractersticas ms relevantes de la computadora XO-1.5 son las siguientes: Procesador: Via C7-M (1 GHz.) ULV CPU. Memoria: 1 Gb. DDR2 SDRAM, corriendo a 400 MHz. Almacenamiento: 8 Gb. de memoria NAND flash on board. La computadora no cuenta con disco duro ni con partes mviles para disminuir el riesgo de roturas. Display: Pantalla de cristal lquido (TFT-LCD) de 7.5 pulgadas en diagonal (19.05 cm.) con modo dual: modo color (transmissive, full-color mode) y modo blanco y negro de muy bajo consumo (reflective, high-resolution mode) que puede usarse bajo la luz del sol. Resolucin: 1200 x 900 (200 dpi). Tamao: 15,2 cm. x 11,4 cm.; 6 x 4,5 pulgadas. Soporta una resolucin de color de aproximadamente 6 bits por color (262k de colores).La pantalla es la misma que la XO 1.0 [3]. Audio: Subsistema de audio HD. Ms adelante se mencionan particularidades en las cuales se diferencia de la computadora XO 1.0, en relacin a lo que hay que tener en cuenta cuando se desarrolla una actividad para lograr una performance adecuada.

2.2.2 Display El display de la XO 1.0 es igual al de la XO 1.5 [3]. Al igual que en la XO 1.0, el display tiene una resolucin de 1200 x 900 (200 dpi) y la computadora automticamente maneja el display para que se puede ver a la luz del sol. El display contina siendo el punto ms crtico para la performance de las actividades. Se recomienda leer la gua de XO 1.0, dado que cada punto (display, audio, etc.) se explica en profundidad y relacionado a la performance. En esta gua solamente se explican las diferencias con la XO 1.0. El funcionamiento del display se puede profundizar en [5]. Como se explicaba en la gua de XO 1.0, la computadora XO 1.5 no cuenta con placa aceleradora de video y la nica resolucin que puede setearse por programacin es 1200x900 y funciona a 51 Mhz. Sigue funcionando el sistema de overlays al igual que lo haca en XO 1.0. Las especificaciones de hardware [5] mencionan un GPU 3D integrado, pero las pruebas realizadas no revelan cambios significativos de performance con respecto a la XO 1.0. Se pueden ver ms detalles sobre las caractersticas y profundizar en el funcionamiento del display en [5]. En esta referencia se brinda una detallada explicacin del _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 7 de 23 Centro Ceibal Uruguay

funcionamiento del display en lo que se refiere a la luz de backlight y a la luz reflejada y cmo funcionan en conjunto de acuerdo a las condiciones de luminosidad del ambiente.

2.2.3 Audio La computadora XO cuenta con audio estreo, con dos parlantes y micrfono interno y entrada para auriculares o parlantes externos y para micrfono. La frecuencia de los parlantes internos va aproximadamente desde 480 Hz. a 40 kHz. Las caractersticas de audio de las computadoras XO 1.0 y XO 1.5 desde el punto de vista de desarrollo son iguales. Incluso los documentos de especificaciones de hardware, [4] y [5], dicen lo mismo. La nica diferencia es que el sistema de audio est basado en el estndar HD Audio [24], mientras que la XO 1.0 est basado en AC'97 [14]. Hay que tener en cuenta en el desarrollo, que los sonidos y msica con graves producen vibraciones en el parlante externo de la computadora que los hacen molestos. Hay que probar en la computadora el audio a utilizar.

2.2.4 Cmara La computadora tiene una cmara integrada (Omnivision OV7670) con una resolucin de 640x480 pixels y puede funcionar hasta 30 FPS (frames por segundo). En [6] se pueden ver las especificaciones de la cmara. La Cmara es la misma que la computadora XO 1.0.

2.2.5 Red El chip controlador de red inalmbrica es un Marvell Libertas 88W8686 [25]. La interfaz de red inalmbrica utilizada por la XO es una WiFi convencional 802.11 b/g (2.4 Ghz.). La computadora posee antenas dobles coaxiales ajustables y giratorias. La nica diferencia con la computadora XO 1.0 es el modelo del chip, pero las funcionalidades son las mismas. La nueva imagen (F11) incorpora la funcionalidad de redes ad hoc, que permite conectarse con otros usuarios sin depender de una infraestructura de red inalmbrica. Los nios pueden trabajar, jugar y aprender en colaboracin, sin requerir de un punto de acceso inalmbrico. En la gua de produccin de XO 1.0 se explica el funcionamiento de la red ad-hoc y la red malla. Esta ltima ya no se utiliza ms.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 8 de 23 Centro Ceibal Uruguay

2.2.6 Dispositivos de Entrada Los dispositivos de entrada de la computadora XO 1.5 son el teclado, el touchpad y los cuatro botones de direccin a la derecha de la pantalla (gamepad) junto con los cuatro botones de accin (game keys) a la izquierda de la pantalla, un botn para rotar el display y el botn de apagado y encendido. Los teclados de las computadoras XO 1.0 y XO 1.5 son diferentes y esto constituye una de las principales diferencias a tener en cuenta a la hora de desarrollar contenido para ambas mquinas. 2.2.6.1 Teclado El teclado de la computadora XO 1.5 es de plstico y consta de 77 teclas. El mismo ha cambiado porque es ms apto para estudiantes de educacin media, para dedos ms grandes y ahora es ms fcil la escritura.

Fig. 1: Imagen del Teclado de XO 1.5. A diferencia de la XO 1.0, el teclado de la computadora XO 1.5 parece ms resistente, por lo cual ya no habran restricciones en cuanto al uso de las mismas (por ejemplo para usar una tecla de disparar en videojuegos). Si se va a desarrollar contenido para ambas mquinas a la vez, hay que tener en cuenta las diferencias en la posicin de determinadas teclas. La siguiente figura muestra el teclado de la computadora XO 1.0

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 9 de 23 Centro Ceibal Uruguay

Fig. 2: Imagen del Teclado de XO 1.0. Las diferencia principal es que las flechas de direccin en la XO 1.5 estn en lnea (esto es un factor de suma relevancia para los videojuegos o para mover algo utilizando las flechas). Se recomienda utilizar adems de las flechas, para mover objetos, las teclas: [I] = Arriba, [J] = Izquierda, [K] = Abajo y [L] = Derecha.

Fig. 3: Teclas de Direccin de XO 1.5 en lnea. Otras teclas importantes como [Enter] o [Espacio] son ms pequeas en la XO 1.5. Se deben tener en cuenta estas diferencias a la hora de desarrollar actividades para ambas computadoras en forma simultnea.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 10 de 23 Centro Ceibal Uruguay

2.2.6.2 Gamepad Al igual que la XO 1.0, la computadora XO 1.5 puede girar el display y cerrarse para operarse en el modo denominado eBook. En este modo solamente quedan disponible los botones direccionales y los de acciones de juego que se encuentran a cada lado de la pantalla (de esta forma el teclado y el touchpad no se pueden acceder). De esta manera la computadora puede utilizare ms cmodamente para leer libros o jugar como si se tratara de una consola de videojuegos porttil. En la parte izquierda de la pantalla se encuentran las teclas direccionales y en la parte derecha de la pantalla las teclas de accin, las cuales se identifican con iconos distintivos (cuadrado, crculo, check y equis). El botn de rotacin no est funcionando con la imagen utilizada al realizar esta gua. Es de esperar que contine funcionando como en la XO 1.0. 2.2.6.3 Touchpad La computadora XO 1.5 tiene el mismo touchpad que la XO 1.0, usado para mover el puntero del mouse, junto con dos botones para click derecho e izquierdo. El touchpad tiene una resolucin de 1000 dpi y un rea activa de 6.0 cm. por 4.4 cm.

2.2.6.4 Otras Entradas La computadora tiene tres entradas para dispositivos USB 2.0 un slot SD. El micrfono incluye un modo de sensor de entrada, en el cual los nios pueden enchufar sensores que pueden convertir la mquina, por ejemplo, en termmetros u osciloscopios.

2.3 Software En esta seccin se describe el software instalado en las computadoras XO 1.5 que es relevante para el desarrollo de actividades. Si nunca se ha manejado la computadora XO 1.5, se recomienda leer el manual bsico de uso de la XO 1.5 [26]. A diferencia de la XO 1.0 que solo tiene Sugar como entorno grfico, la computadora XO 1.5 cuenta con dos entornos grficos: Sugar y GNOME [32] y se puede cambiar entre uno y otro cuando se desee.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 11 de 23 Centro Ceibal Uruguay

2.3.1 Sistema Operativo La computadora XO 1.5 que distribuye Ceibal tiene instalado Fedora, una distribucin del sistema operativo Linux (Fedora 11, Kernel 2.6.31). Al igual que las computadoras XO 1.0, las XO 1.5 no tienen los permisos de usuario administrador (root). Hay que tener en cuenta esta limitante si la actividad desarrollada requiere la instalacin de libreras que no estn instaladas la computadora. La imagen de la computadora XO 1.5 es basada en Dextrose [27] con los entornos grficos Sugar y GNOME. La imagen est basada en Fedora 11 y Sugar 0.88, con funcionalidades desarrolladas por Activity Central [28], Paraguay Educa [29], Plan Ceibal [1] y Sugar Labs [30].

2.3.2 Interfaz Grfica La computadora XO 1.5 tiene dos entornos grficos: Sugar y GNOME. El usuario puede cambiar entre uno y otro en cualquier momento que lo desee (se reinicia la computadora). El entorno Sugar es el mismo que tienen las computadoras XO 1.0.

Fig. 4: Imagen del Entorno Sugar. El entorno grfico GNOME es un sistema con ventanas, ms parecido a los entornos de escritorio utilizados en otras plataformas (Windows, Mac, etc.). GNOME es ms adecuado para los estudiantes de la enseanza media.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 12 de 23 Centro Ceibal Uruguay

Fig. 5: Imagen del Entorno GNOME.

Fig. 6: Cambio entre Sugar y GNOME.

2.3.2.1 Interfaz Grfica Sugar La interfaz grfica Sugar es la misma que tienen las computadoras XO 1.0 y adhiere a los lineamientos indicados en el documento Human Interface Guidelines [7] de Sugar Labs. En la gua de produccin para la computadora XO 1.0 se puede leer sobre el desarrollo para el entorno Sugar, en particular se sugiere estar familiarizado con las razones filosficas detrs del diseo de la interfaz grfica Sugar (colaboracin, la metfora de objeto en lugar de archivo, la metfora del diario (journal) en lugar de sistema de archivos, etc.) y con los principios de usabilidad de Sugar [7].

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 13 de 23 Centro Ceibal Uruguay

Los principales componentes de Sugar son las Actividades, el Diario (Journal), la actividad Navegar y la red ad-hoc (que sustituy a la red mesh). En la gua de produccin de XO 1.0 se explican estos componentes principales de Sugar y como la parte de Sugar es la misma que en XO 1.0 se recomienda al lector referirse a dicha gua.

2.3.2.2 Interfaz Grfica GNOME GNOME (GNU Network Object Model Environment) [32] es uno de los entornos grficos utilizados en distribuciones Linux (por ejemplo en Ubuntu). La imagen de XO 1.5 contiene en GNOME varias aplicaciones, entre las cuales se encuentran: Firefox (Navegador Web). Manejador de Archivos. Gedit (Editor de Texto). Open Office. Audacity (Audio). Inkscape (Grficos Vectoriales).

Hay que tener en cuenta que el sistema operativo es el mismo, por lo cual los archivos se pueden ver en cualquiera de los dos entornos. Esto podra ser interesante para desarrollar actividades para Sugar en la misma computadora XO, utilizando el manejador de archivos de GNOME que es ms accesible que el de Sugar.

2.3.3 El Navegador y las Aplicaciones Web El navegador de la computadora XO 1.5 en Sugar es la actividad Navegar (Browse), la cual utiliza el motor Gecko y el lenguaje de programacin Javascript [36], al igual que lo hace el navegador Firefox en el entorno GNOME. La actividad Navegar [22] es bastante ms simple que Firefox [31] y la restriccin ms importante es que no soporta todos los complementos (plugins o add-ons) que soporta Firefox. En particular, el navegador Firefox es ms completo en cuanto a las capacidades que el navegador que hay en Sugar (Actividad Navegar). De todas formas al hacer una aplicacin web hay que probarla en los dos entornos. Al igual que en XO 1.0, se utiliza el navegador para descargar actividades o aplicaciones e instalarlas en la computadora. En Sugar, al acceder a un archivo .xo, ste se descarga instala en el entorno automticamente. En el entorno GNOME, al da de escribir esta gua no haba solucin para un mecanismo de instalacin de aplicaciones mediante paquetes. A diferencia de Sugar, que cuando se _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 14 de 23 Centro Ceibal Uruguay

accede a un archivo .xo, ste se descomprime, se instala y se crea el cono en el escritorio, los programas en GNOME se descargarn y se podrn ejecutar desde la terminal por ejemplo, pero no estarn disponibles desde el escritorio de GNOME. Cuando esto sea solucionado se anexar un apndice a esta gua. El navegador Firefox de la computadora XO 1.5 corre los programas Flash con un rendimiento inaceptable para videojuegos o actividades que usen grficos en forma intensiva. Si bien la performance es levemente mayor que en la XO 1.0, no es tan significativo el aumento, por lo cual se recomienda no desarrollar en Flash, a no ser que se traten de actividades muy simples y con pocas animaciones. De todas formas la regla siempre es probar en la computadora para ver si se logra la performance necesaria segn el caso. La actividad Navegar en Sugar escalaba (en imgenes anteriores) las pginas aproximadamente un 40% para que se vean a un tamao legible (no usaba la resolucin 1200x900). La ltima imagen probada no escala, utilizando la resolucin de 1200x900, razn por la cual los desarrollos Flash y Web pensados para una resolucin de 800x600 o menos, se ven con textos diminutos. Hay que tener en cuenta este aspecto porque esto puede volver a cambiar en el futuro y si bien se recomendaba en la gua anterior desarrollar para el tamao 800x600, hoy hay que desarrollar para el tamao 1200x900 (y tener en cuenta que esto puede volver a cambiar). Cabe notar tambin que Firefox en la computadora XO 1.5 deja muy poco espacio para el rea de contenido (casi la mitad de la pantalla).

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 15 de 23 Centro Ceibal Uruguay

Captulo 3 - Desarrollo de Actividades y Juegos


En este captulo se mencionan los lenguajes que se pueden utilizar para el desarrollo para la computadora XO 1.5. Esto tiene dos partes, el desarrollo para el entorno Sugar y el desarrollo para el entorno GNOME. En la gua de produccin para la computadora XO 1.0 se describan los pros y contras de cada lenguaje y su relacin con la performance y facilidad de uso. Se recomienda leer dicha gua, dado que esos conceptos no se repiten aqu. Los lenguajes recomendados para desarrollar son: Python con Pygame [9] para el entorno Sugar, GTK+ [33] o Python con PyGTK [11] para el entorno GNOME, o C++ con SDL [10] para desarrollar en forma nativa para ambos entornos. Los dos primeros son los lenguajes naturales para el entorno, y se recomienda su uso para que el software desarrollado se integre con el entorno grfico. C++ y SDL son recomendados para videojuegos o actividades que hagan un uso intensivo de grficos, dado que es un lenguaje compilado y esto produce software con mayor rendimiento que los otros lenguajes que son interpretados. En la gua de produccin de XO 1.0 se detallan estas cuestiones. En [13] se encuentra el sitio de desarrollo del Plan Ceibal, en el cual se pueden acceder a diferentes documentos relacionados al desarrollo de actividades, incluyndose esta gua.

3.1 Actividades, Aplicaciones y Aplicaciones Web En la gua de produccin de XO 1.0 se describen los diferentes tipos de aplicaciones, web o locales, las cuales tienen pros y contras. Se recomienda su lectura. En la XO 1.5, al tener dos entornos grficos (Sugar y GNOME), hay que decidir cmo se empaqueta el software para ser instalado en el entorno (archivo .xo o archivo .rpm respectivamente). Si la actividad desarrollada no se integra con el entorno (como en el caso de los videojuegos que corren fullscreen), es preferible utilizar Sugar, dado que lo hace compatible con las XO 1.0. Si la actividad desarrollada utiliza un entorno grfico con varias ventanas y cuadros de dilogo (software como por ejemplo Firefox, Open Office, Inkscape, etc.) se recomienda el uso de GTK+ o Python con PyGTK, dado que facilita la creacin de software con interfaces graficas como las del entorno grfico. En este caso lo mejor es desarrollarlo para el entorno GNOME. Al desarrollar una aplicacin para el entorno GNOME (que se integre al entorno) es necesario consultar la Gua de Estilo de Usabilidad para GNOME [38] _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 16 de 23 Centro Ceibal Uruguay

Al realizar aplicaciones web, las mismas pueden ser accedidas desde ambos entornos por medio de la actividad Navegar (Browse) o del navegador Firefox. De todas formas hay que tener en cuenta lo mencionado antes sobre la pantalla y sobre todo probar en las computadoras y en los diferentes navegadores para que no hayan sorpresas. 3.2 Lenguajes de Programacin Al igual que se sugiere en la gua de produccin para la computadora XO 1.0, los lenguajes recomendados para el desarrollo para XO 1.5 son Python [8] y/o C++ [15]. Cuando se desea realizar un software integrado con el entorno GNOME, es recomendable utilizar GTK+. En [34] se puede ver un tutorial bastante claro sobre cmo es el desarrollo utilizando GTK+. GTK+ tiene soporte para muchos lenguajes, entre los cuales se encuentran, por supuesto, C++ y Python. En [37] se puede ver un tutorial introductorio al desarrollo con GTK+. Para desarrollar para GNOME es recomendable visitar el Centro de Desarrolladores de GNOME [35], el cual contiene detalles de la arquitectura, ejemplos y tutoriales, as como tambin una completa descripcin de las APIs existentes para el desarrollo. Como se explicaba en la gua de produccin de XO 1.0, Sugar se encuentra desarrollado en lenguaje Python as como la mayora de las actividades instaladas en la computadora XO 1.0 y XO 1.5, por lo cual lo hace el lenguaje natural para desarrollar actividades en el entorno Sugar. Para GNOME, como se ha explicado antes, lo natural es el uso de GTK+. Y la tercera opcin es desarrollar en forma nativa utilizando C++. Es posible utilizar otros lenguajes segn el caso para realizar actividades ms sencillas o web (descartando por supuesto a los videojuegos en su concepcin tradicional): Flash, HTML5, Java, etc. pero no es aconsejable su uso debido a que hay que trabajar alrededor de bastantes problemas de performance, instalacin de plugins, etc. Las pruebas realizadas sobre XO 1.5 muestran que la performance es levemente superior a la computadora XO 1.0, pero no lo suficiente como para recomendar el uso de estos lenguajes para desarrollar actividades con animaciones o uso intensivo de grficos o videojuegos. 3.3 Desarrollo en Python La versin de Python instalada en XO 1.5 en la versin F11 disponible desde 2011 es la 2.6. Es la misma versin que la que hay en la computadora XO 1.0 y es de esperarse que ambas computadoras tengan instalada la misma versin, para hacer compatibles los desarrollos en Python/Pygame. La versin de Pygame instalada en ambas computadoras es 1.8.1.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 17 de 23 Centro Ceibal Uruguay

La versin de Python se puede obtener abriendo la terminal y ejecutando el siguiente comando: Python V. La versin de Pygame puede obtenerse luego de importar el mdulo pygame utilizando print pygame.version.ver. Python tambin puede utilizarse con PyGTK [11], que es una biblioteca para implementar la interfaz de usuario (por ejemplo para el entorno GNOME). A la hora de desarrollar con Python se sugiere utilizar el estilo de cdigo de estilo definido en la gua PEP8 de Python [12]. Para desarrollar videojuegos en Python se utiliza Pygame, que es una biblioteca diseada para dicha actividad. Pygame permite a un programa Python utilizar SDL (por lo cual se dice que Pygame es un wrapper de SDL para Python). 3.4 Desarrollo en C++ Para desarrollar videojuegos en C++ para la computadora XO, se utiliza la biblioteca SDL (Simple Directmedia Library), la cual es una biblioteca que brinda acceso a las interfaces de bajo nivel para realizar tareas de forma eficiente en juegos 2D. SDL nos da acceso al display, al sistema de audio, a los dispositivos de entrada, etc. Al igual que Pygame, SDL viene instalado en la computadora XO 1.5 y funciona perfectamente. Con C++ tambin puede desarrollarse utilizando GTK+ para el entorno grfico GNOME [37] al igual que con Python. Se recomienda la lectura de la gua de produccin de XO 1.0, dado que en ellas se describe en mayor detalle los lenguajes Python/Pygame y C++/SDL. En dicha gua tambin se mencionan los entornos de emulacin (que tambin sirven para XO 1.5) y se habla sobre las caractersticas del desarrollo de videojuegos y los factores a tener en cuenta de performance y optimizaciones que tambin son necesarias al desarrollar actividades para la computadora XO 1.5. Tambin se mencionan otras bibliotecas y engines (motores) de videojuegos, tanto Python como C++.

3.5 Entornos de Desarrollos Existen varios entornos de desarrollo (IDE) para los diferentes lenguajes y cada uno presenta diferentes funcionalidades. Hay que elegir cual usar de acuerdo a la plataforma en la cual se va a desarrollar y a lo que se necesite. Para desarrollar en Python o C++, algunos de los entornos de desarrollo ms usados en la industria son: Python: Eclipse + PyDev [16] y [17]. Python: IDLE (es ms simple) [18]. C++: Microsoft Visual C++ para Windows [19]. _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 18 de 23 Centro Ceibal Uruguay

Eclipse CPP para Windows/Linux [20]. Xcode para Macintosh [21]. 3.6 Usabilidad y Testing En esta seccin se describen algunas cosas que hay que tener en cuenta especficamente para la para la computadora XO 1.5. Los conceptos del captulo 6 Normas de Usabilidad y Testing de la gua de produccin para XO 1.0 son vigentes para la computadora XO 1.5 y es imprescindible su lectura. En esta seccin se agregan unos pocos conceptos que son especficos para XO 1.5. Resumiendo, en la gua de produccin de XO 1.0, se mencionaba el hecho de que las actividades hay que probarlas en la misma computadora, no asumiendo que algo funciona sin probarlo, y realizar frecuentemente focus groups con la audiencia para probar la usabilidad del software desarrollado.

3.6.1 Audiencia Una de las diferencias de la XO 1.5 con la XO 1.0 es que la XO 1.5 se distribuye entre los alumnos de educacin media, por lo cual la edad est entre 12 y 17 aos. Se puede asumir ya cierta costumbre en el uso de computadoras, la lectura de texto ya no es un impedimento como era antes y ya se puede coordinar dos manos con varios botones simultneamente para videojuegos. 3.6.2 Fundamentos de Diseo Para el desarrollo para el entorno Sugar, es muy recomendable leer la gua de la interfaz grfica de Sugar (Human Interface Guidelines de Sugar Labs) [7], ya que la misma explica la razn de porqu algunas cosas funcionan de determinada manera en Sugar y podran ser aplicadas a nuestro proyecto para mejorar la usabilidad. Para el desarrollo de una aplicacin para el entorno GNOME, es necesario consultar la Gua de Estilo de Usabilidad para GNOME [38] 3.6.3 Testing Las normas de testing de la gua de produccin para XO 1.0 son vigentes para la computadora XO 1.5. A esto se agrega si se trata de una aplicacin para GNOME, es esperable que la actividad se comporte correctamente y en forma esperada por el usuario, dentro del entorno (por ejemplo que se pueda cambiar de aplicaciones entre ventanas, _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 19 de 23 Centro Ceibal Uruguay

que se ponga en pausa la aplicacin cuando la ventana no est activa, si tiene varias ventanas que se puedan ordenar, etc.).

3.6.4 Instalacin de Actividades y Aplicaciones El Apndice A Cmo se Construye una Actividad de la gua de produccin de XO 1.0 es vigente para la computadora XO 1.5 para el entorno Sugar. De la misma manera, se crea un archivo .xo el cual es accedido desde el navegador y la actividad se descarga, descomprime y se instala en forma automtica, creando el icono en el escritorio. En el entorno GNOME, al da de escribir esta gua no haba solucin para un mecanismo de instalacin de aplicaciones mediante paquetes. Cuando est resuelto ser agregado a la presente gua.

3.6.5 Desbloqueo y Flasheo de XO 1.5 En el portal Ceibal, en [36] se puede descargar la imagen de la computadora XO 1.5. En dicha pgina hay instrucciones para el procedimiento de flasheo. En el apndice B Desbloqueo de las XO y Flasheo de la gua de produccin de la XO 1.0 se describe el proceso de desbloqueo y flasheo, que es igual para las computadoras XO 1.5.

3.6.6 Distribucin de Actividades El apndice C de la gua de produccin de XO 1.0 sigue vigente para las actividades desarrolladas para XO 1.5. Se recomienda su lectura.

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 20 de 23 Centro Ceibal Uruguay

Referencias
[1] Portal del Plan Ceibal en Uruguay. http://www.ceibal.edu.uy/ [2] Sitio Web de OLPC. http://www.laptop.org [3] Caractersticas del Display. http://wiki.laptop.org/go/Display [4] Especificaciones de Hardware de la computadora XO-1. http://wiki.laptop.org/images/7/71/CL1A_Hdwe_Design_Spec.pdf [5] Especificaciones de Hardware de la computadora XO-1.5. http://wiki.laptop.org/images/f/f0/CL1B_Hdwe_Design_Spec.pdf [6] Caractersticas de la Cmara. http://www.ovt.com/products/sensor.php?id=74 [7] Human Interface Guidelines Sugar Labs. http://wiki.sugarlabs.org/go/Human_Interface_Guidelines [8] Lenguaje de Programacin Python. http://www.python.org/ [9] Biblioteca Pygame. http://pygame.org/ [10] Biblioteca Simple DirectMedia Library (SDL). http://www.libsdl.org/ [11] Biblioteca PyGTK. http://www.pygtk.org/ [12] Gua de Estilo para el Cdigo Python. http://www.python.org/dev/peps/pep-0008/ [13] Sitio de desarrollo de Ceibal. https://desarrollo.ceibal.edu.uy/ [14] Sistema de Audio AC'97 de Intel. http://en.wikipedia.org/wiki/AC'97 [15] Lenguaje C++. http://es.wikipedia.org/wiki/C%2B%2B _____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 21 de 23 Centro Ceibal Uruguay

[16] Eclipse IDE. http://www.eclipse.org/ [17] Pydev. http://pydev.org/ [18] IDLE. http://docs.python.org/library/idle.html [19] Microsoft Visual C++. http://msdn.microsoft.com/en-us/visualc/default.aspx [20] Eclipse CPP. http://www.eclipse.org/downloads/ [21] Xcode. http://developer.apple.com/technologies/tools/xcode.html [22] Especificacin del Navegador Web de Sugar. http://wiki.laptop.org/go/Browse [23] Hardware de las computadoras XO. http://wiki.laptop.org/go/Hardware [24] Intel HD Audio Standard. http://www.intel.com/design/chipsets/hdaudio.htm [25] Chip controlador de red inalmbrica. http://www.marvell.com/products/wireless/8686.pdf [26] Manual Bsco de XO 1.5. http://200.40.200.99/images/stories/contenidos/espacio_tecnico/Formacion/MANUALxo15. pdf [27] Dextrose Sugar Labs. http://wiki.sugarlabs.org/go/Dextrose [28] Activity Central. http://activitycentral.com/ [29] Paraguay Educa. http://www.paraguayeduca.org/ [30] Sugar Labs. http://sugarlabs.org/

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 22 de 23 Centro Ceibal Uruguay

[31] Navegador Firefox. http://www.mozilla.org/ [32] GNOME. http://www.gnome.org/ [33] GTK+. http://www.gtk.org/ [34] Programacin en Linux usando GTK+. http://www.juntadeandalucia.es/averroes/iesbajoguadalquivir/inf/dfsi/Programacion%20Gn ome%20En%20Linux%20Usando%20Gtk%20.pdf [35] Centro del Desarrollador de GNOME. http://developer.gnome.org/ [36] Instrucciones para flashear la computadora XO 1.5. http://www.ceibal.edu.uy/Portal.Base/Web/VerContenido.aspx?GUID=b053193a-7ae5427b-8168-7c10099f3943&ID=204659 [37] Introduccin a la Programacin en el Entorno GNOME. http://people.gnome.org/~csaavedra/documents/guadec-es-2007/intro-gnome.pdf [38] Gua de Estilo para Usabilidad para el Entorno GNOME. http://developer.gnome.org/hig-book/

_____________________________________________________________________ Anexo Prctico para la Gua de Produccin XO 1.5 v1.0 Pg. 23 de 23 Centro Ceibal Uruguay

Вам также может понравиться