Sabado15_Instalaciones_Cayaperos.jpg“Conjugar el verbo hacer, en primera persona del plural, en los tres tiempos”: haremos, hacemos, hicimos …

Exactamente eso fué la 1ra Cayapa Oficial de PingüinoVE, una experiencia de aprendizaje y construcción colectiva, donde abrimos un espacio para continuar dando forma a la comunidad, y mejorar el proyecto a partir de las inquietudes e iniciativas de todos los involucrados.

¿Cómo crear una comunidad SL? ¿Cómo gestionar el trabajo colaborativo? ¿Cómo planificar, y aprovechar una plataforma web para un proyecto SL? ¿Cuándo publicar? ¿Cómo documentar? ¿Cómo garantizar la sustentabilidad del proyecto? ¿Cómo contribuir al cambio del paradigma consumista de tecnologías? ¿Cómo solucionar problemas y atender necesidades nacionales con Software y Hardware Libre? ¿Cómo hacer posible la producción masiva de dispositivos HL? ¿Cómo hacer posible la apropiación del conocimiento y replicación de capacidades? ¿Cómo disminuir importaciones y fortalecer la productividad nacional?.

La comunidad Pingüinove intenta mediante iniciativas como ésta: la “cayapa“, dar respuesta a éstas y muchas otras preguntas, que son parte del hacer que ocupa, a quienes abordamos cotidianamente el compromiso y el ejercicio de aprendizaje permanente que representa el hecho de generar tecnologías libres, bajo modelos colaborativos de trabajo.

Sabado15_Tutoriales_y_Lluvias_Ideas.jpgSiendo la 1ª actividad oficial de este tipo que genera la comunidad desde su nacimiento hace cuatro meses (4), sirvió en efecto principalmente, como un “primer contacto presencial”, entre los compañeros (tanto “electrónicos” como “informáticos”) que hasta ahora, habíamos estado interactuando vía web, y “manifestando intereses comunes sobre el Hardware Libre” en las presentaciones de PingüinoVE del FLISOL 2010 y CNSLv6 celebradas en Ciudad Bolívar y Puerto Ordaz.

Las principales metas planteadas para esta 1ª Cayapa Oficial de PingüinoVE fueron:

  • Instalaciones del Software Pingüino en las laptops de los “cayaperos”, e inducciones sobre su uso y funcionamiento del código.

  • Identificación de áreas de interés particular, para investigación y desarrollo, por parte de los compañeros asistentes.
  • Identificación de nuevas áreas de aplicación práctica (casos de uso real) del dispositivo PingüinoVE.
  • Identificación de nuevos espacios y eventos SL para divulgación del Hardware Libre, y de PingüinoVE.
  • Planteamientos de mejora a la Infraestructura Web del Proyecto.

En este sentido, mediante las actividades y discusiones realizadas, los aportes y resultados mas relevantes fueron:

  • Ampliación de la lista de “Proyectos Factibles” en el Wiki, en las áreas: Seguridad (doméstica, comercial y vehicular), Herramientas de Programación, Accesibilidad, Control Energético y Urbanismo.
  • Formalización de acuerdos para la promoción de PingüinoVE en universidades y tecnológicos locales, y para la planificación y promoción de un evento de Robótica Aficionada, Escolar y Universitaria, mediante en el uso de Robots Educativos (PingüiBOT, UniBOT, TortuBOT) basados en PingüinoVE.
  • Planteamiento de adquisición de un dominio “org” o “ve”  o similar, y de un Wiki basado en Plone (como éste en CoActivate) o en Mediawiki (como Wikipedia).
  • Planteamiento de abordar la investigación y el desarrollo de dispositivos “periféricos” para interconectividad (FireWire, Ethernet, otros).
  • Planteamiento para abordar el estudio del Bootloader, para hacer factible el desarrollo de dispositivos similares con otros modelos y marcas de microcontroladores (además los PIC18F2550 y 4550 usados en Pingüino).

La próxima Cayapa (2ª edición), aspiramos poderla realizar aproximadamente en 15 días, y pretendemos que sea una actividad mas difundida que la primera, a través de Twitter y las listas de correos de GuayanaLUG y BolívarLUG, y en la cual dispondremos de varios dispositivos PingüinoVE para pruebas y demostraciones.

Filed May 15th, 2010 under Divulgación

CPinguinoVE_CNSL6_CiudadBolivar.JPGon gran satisfacción expresamos, que “ha sido realizada la presentación del proyecto PingüinoVE en el CNSLv6 sede Ciudad Bolívar”.

El Congreso Nacional de Software Libre es, indiscutiblemente, el mayor evento de difusión y promoción en el uso de Software Libre que se realiza en Venezuela cada año, entre los meses de abril a julio, en distintos estados del territorio nacional, sucesivamente. Puedes obtener más información sobre el evento en su sitio oficial en http://www.cnsl.org.ve/.

El CNSL, que arriba actualmente a su sexta (6ª) edición, se está efectuando en once (11) ciudades distintas desde el occidente hasta el oriente de Venezuela, incluyendo Caracas, que sirvió de sede inaugural el viernes 16 de abril, Ciudad Bolivar, Valencia, San Juan de Los Morros, Maracay, Punto Fijo, Barquisimeto, Maracaibo, Mérida, Guasdualito y finalmente San Felipe, donde se tiene planificada su clausura el día sábado 17 de Julio.

Este año, una vez más, esta hermosa actividad, de incuantificable valor para el colectivo tecnológico nacional, está siendo posible gracias al loable esfuerzo del grupo organizador encabezado por Octavio Rossel, Natalie Colina, Maria Elena Echenagucia y Oscar Zambrano, junto al esfuerzo coordinado y planificado con las distintas comunidades de Software Libre regionales y locales, así como por el interés activo y la participación de estudiantes, profesionales, e instituciones académicas, privadas y públicas que se suman a esta fiesta nacional de promoción y difusión de tecnologías libres.

En este marco, altamente motivados y alineados a los fines de promoción y difusión del CNSL, abordamos la presentación de PingüinoVE en el auditorio de la UBV en Ciudad Bolívar, haciendo extensiva a la audiencia, una invitación a reflexionar contínuamente ante el impacto de las Tecnologías en la sociedad, y en específico, a reflexionar sobre las bondades y potencialidades a las que tenemos derecho y acceso legítimo al hacer uso de Software y Hardware Libre.

Pinguinove_CNSLv6_CiudadBolivar_Auditorio.JPGAsí, mediante la presentación de una secuencia de láminas explicativas, fueron descritas “gráficamente” las principales características de Pingüino como dispositivo de Hardware Libre, seguidas de una serie de demostraciones “en vivo” del software libre empleado para su diseño (KiCAD) y para su Programación (Python) sobre GNU/Linux, especialmente en este último caso, indicando cómo en uso “completo” de las 4 libertades, fué posible (1ª) acceder al código fuente del proyecto, (2ª) estudiarlo, (3ª) modificarlo para crear un paquete de internacionalización (i18n) con el Lenguaje Python para la versión Beta8 del IDE de Pingüino en 8 idiomas, y crear una nueva versión del PCB (Circuito Impreso) desarrollada con KiCAD (CAD Libre para Electrónica), para finalmente (4ª) distribuir ambos desarrollos en los repositorios públicos nacionales de CENDITEL (al cual puedes, y te invitamos, a acceder aquí) y CNTI (aquí).

Puedes ver una pequeña selección de fotografías de la presentación en la galería oficial de PingüinoVE en Picassa.

También puedes ver la presentación completa, en 8 segmentos de Video en el canal oficial de PingüinoVE en YouTube

Estamos muy contentos, tanto con los comentarios generales de nuestra participación, como con los resultados generales de las actividades logísticas y técnicas del CNSLv6 sede Ciudad Bolívar, y agradecemos al comité organizador, a los amigos Juan Vargas, Daniel Monagas y sus homólogos colaboradores de BolívarLUG, felicitándoles por la abnegada labor que año tras año realizan en la promoción del Software Libre (y Hardware Libre =) en todo el Estado Bolívar.

A continuación dejamos una recopilación de direcciones, de algunas de las galerías de imágenes de todo el evento, capturadas por distintos miembros de la comunidad, a quienes agradecemos la amabilidad de haber tomado y cedido las fotos que empleamos para esta reseña, tanto en la galería de PingüinoVE en Picassa, como en el Canal de Videos de PingüinoVE en YouTube:

­­Ligmar Paravicini
http://www.flickr.com/photos/ligmar/sets/72157624037631512/
Andrea Rodríguez
http://picasaweb.google.com/andrearrs/
Daniel Monagas (y Karla)
http://picasaweb.google.com/karla.cocho/6toCongresoNacionalDeSoftwareLibreCiudadBolivar
Bakhos Mousa (Fotos)
http://www.facebook.com/album.php?aid=221266&id=361645581130&ref=mf
Bakhos Mousa (Videos)
­http://www.youtube.com/watch?v=GSxxpb_9BQs&feature=youtu.be&a

 

Enviamos nuestro agradecimiento y reconocimiento muy especial, al amigo Bakhos, por haber realizado la grabación de la presentación completa, con su cámara personal “a mano alzada” por más de 1 hora, y “desde 1ª fila” para garantizarnos a todos una excelente calidad de audio e imágen, dándonos así el invaluable regalo de poder ofrecer el video de la presentación libremente, a toda la comunidad.

Te invitamos a conocer y construir juntos PingüinoVE … te invitamos a usar y hacer Hardware Libre por nuestro país =)

Filed May 10th, 2010 under Divulgación
LocalePack.pngFué una agradable noticia para nosotros (la que a su vez hoy compartimos aquí), cuando observamos que el pasado sábado 1º de Mayo, el creador de Pingüino, Jean Pierre Mandon, publicó la versión Beta8 del IDE de Pingüino en la sección downloads del sitio oficial de HackingLabs Francia.

Decimos “agradable” por tres (3) grandes razones: la primera por disponer de una nueva versión del IDE con múltiples mejoras y nuevas funcionalidades que nos acercan a la versión 1.0, la segunda por llevar integrado el aporte de la comunidad PingüinoVE, para el soporte multi-idioma, y la tercera precísamente por esto último, por ser un trabajo hecho desde Venezuela que resultó en una grata razón para festejar el día del trabajador =).

El trabajo de traducción fue una iniciativa de la comunidad PingüinoVE (previamente reseñanda en este Blog), que se inició con la finalidad de incrementar la factibilidad de uso y apropiación de este dispositivo y toda la tecnología que le sustenta, por parte de comunidades de habla hispana.

Así la primera implementación (cual prueba de “caja blanca”) consistió en tomar el código (Python) de la versión Beta7 del IDE (previa) y reemplazar el texto en inglés, por su correspondiente en español, de todas las etiquetas, mensajes y menúes. En el mejor esmero de cumplir con la dinámica “hazlo y publícalo, pronto”, este primer trabajo fué (y está) publicado en las forjas CNTI y CENDITEL. El reemplazo fue “manual”, el esfuerzo muy poco, las pruebas satisfactorias, pero por esta vía no es eficaz o “sostenible” en el tiempo la distribución de un paquete o aplicación de software libre para una comunidad internacional. Pues cada equipo de desarrollo tendría que realizar “desde cero” un nuevo esfuerzo de modificación y/o programación completamente aisaldo e independiente, justo inmediatamente después de la salida de cada versión.

Por ello, en el afán de realizar un aporte significativo y útil para otros, decidimos implementar la traducción, en base un mecanismo más eficaz y versátil de soporte mult-idioma, heredando las mejores prácticas que históricamente la comunidad ha empleado para soluciones de este tipo bajo GNU/Linux, apelando a la recomendación de Carlos Guerrero del CNTI/MPPCTII, dando lugar así a la creación de paquete de internacionalización (i18n), basado en GNU gettext, que incluyera, además de nuestro idioma oficial/”materno”, otros 7 idiomas: Francés, Inglés, Danés, Alemán, Italiano, Portugués y Croata.

El paquete está disponible para su uso, estudio, modificación y distribución libre, en las forjas nacionales de CENDITEL y CNTI. Tanto para la versión 7 del IDE de Pingüino, como para la versión 8 (actual al momento de escribir esta reseña).

Para aquellos mas interesados en los aspectos técnicos de este aporte, hemos descrito brevemente el procedimiento de creación del paquete de traducción, que se fundamentó en el aprovechamiento de las funcionalidades gettext de GNU, a través del uso de las librerías pygettext del lenguaje Python:

Gettext se puede describir como un conjunto de herramientas (GNU) que permiten realizar la traducción “dinámica” (es decir, en tiempo de ejecución) de una aplicación, reemplazando el texto en el idioma original del programa, por el texto de idioma configurado o activo del sistema operativo. Para tal fin, se llevan a cabo un conjunto de pasos:

Codigo_pinguino_po_i18nPack_gedit_500px.png1.- Al código original (cada archivo script de python “.py” no traducido) se le realizan una serie de modificaciones, que consisten en “encerrar” cada literal, palabra, etiqueta o texto a traducir, entre un guión bajo y paréntesis, por ejemplo “File” por: _(”File”).

2.- Luego en un archivo de texto, mediante el uso de la utilidad/comando de consola “pygettext“, se “lee o escanea” el archivo de código (.py) para identificar todas las palabras y/o textos a ser traducidos, marcados con _(), y generando con todas éstas palabras una lista en un archivo en formato de texto llamado “.pot” (Objeto Personal de Plantilla de traducción).

3.- A partir de esta “plantilla” se crea, mediante la utilidad/comando “msginit” por cada idioma a traducir, un archivo en formato de texto con extensión “.po” (Personal Object), donde se editan los pares de valores de traducción. Por ejemplo en el archivo “.po” del idioma español, para la palabra “File” previamente identificada, se edita la alternativa “Archivo”. Por tratarse de un archivo de texto, la edición puede hacerce con vi, gedit, kwrite, nano, emacs o cualquier otro editor según las preferencias del programador.  Ver muestra del .po en la imagen de la izquierda.

4.- Luego este archivo “.po” con los pares de traducción debidamente editados, es “compilado”, mediante la utilidad/comando “msgfmt” en un nuevo archivo, ahora en formato binario, con la extensión “.mo” (Machine Object), que es el archivo utilizado por las funciones gettext “_()” para recuperar la traducción correspondiente al idioma establecido en el sistema, cuando se ejecuta el programa o aplicación.

Como alternativa al proceso de edición manual por cónsola, con las utilidades o comandos Gettext de GNU y/o pygettext de Python, encontramos súmamente útil el uso de una aplicación gráfica llamada PoEdit (instalable vía apt-get, aptitude o synaptic en GNU/Linux Debian, Canaima y Ubuntu), con la cual es posible abrir un archivo “.po”, y editar o actualizar los pares de traducción contenidos en él con muchísima sencillez, e inclusive compilarlo automáticamente a “.mo” con solo guardar los cambios efectuados al “.po”.

Además de publicar el paquete de traducción para la versión Beta8 del IDE tanto en las forjas de CENDITEL y CNTI, también creamos una lista de correos en CoActivate: pinguino-internationalization@lists.coactivate.org, a los efectos de poder brindar soporte a desarrolladores de otras naciones.

Dentro del paquete de traducción de Pingüino Beta8, fué incluido un archivo de Texto “HOW TO” en inglés, con las instrucciones detalladas de instalación, para hacer posible su lectura por parte de la comunidad internacional de usuarios de Pingüino.

Para mas información, y como ayuda referencial a otros compañeros con necesidades de traducción de otros programas libres, les dejamos enlaces a las páginas y/o sitios web de consulta que nos resultaron de mayor utilidad en nuestro propósito:

Fuentes Referenciales y Documentales consultadas:

[1] GNU gettext en Wikipedia (Español)                          

[2] GNU gettext en Wikipedia (Inglés)

[3] Página oficial de GNU gettext (Inglés)

[4] Manual de GNU gettext (Inglés)

[5] Preguntas y Respuestas Frecuentes GNU gettext

[6] Manual de Referencia Python 2.6 – Módulo gettext

[7] Sección de Internacionalización en Wiki de wxPython

[8] Sitio Oficial de poEdit, GUI para Editar Archivos *.PO


Tutoriales en Blogs de Programadores en Español

[9] http://pyrubik.wordpress.com/2009/03/30/como-usar-gettext-multilenguaje-en-python-pygettext/

[10] http://www.miguev.net/misc/PyGettextMicroComo.html

[11] http://ukablog.codigoabierto.info/articulos/Internacionalizaci%F3n%20en%20Python%20con%20GetText.html

Filed May 2nd, 2010 under Software, IDE y Bootloader