Blog

¿SVG para hacer presentaciones?

Siempre me ha interesado el micro mundo este de las presentaciones y las formas de hacerlas. He probado casi de todo: Beamer con LaTeX, Slidy, S5, Impressive,... cada sistema nuevo que he probado me ha aportado alguna novedad, pero siguen sin darme todo lo que espero.

Tampoco me lo da (aún) el que voy a contar hoy, pero ofrece una nueva forma de enfocar las presentaciones que sólo he encontrado en prezi, un servicio más o menos reciente que a todo el mundo gusta.. hasta que lo pruebas. Con Prezi ya no hay diapositivas o transparencias, digamos que abandonamos el clásico retroproyector y el acetato para por fin aprovechar las posibilidades de un entorno multimedia más rico. Ahora en lugar de las susodichas diapositivas tenemos un canvas en dos dimensiones infinito, donde jugamos con los tamaños y la orientación para crear un «viaje» en el que desarrollamos nuestro discurso. Hay que verlo para entenderlo. Aquí tienes un vídeo demostración de 3 minutos.

¿Por qué no me gusta prezi.com? Veamos:

  • lo más importante: no es interoperable, no hay forma de meter ni sacar nada de ahí, lo que hagas en ese sistema ahí se queda, y nadie sabe qué será de prezi dentro de, digamos 5 años.
  • usa flash es decir: para empezar con el editor en Linux no deja meter acentos... y cualquier otra cosa que te pueda pasar con este sistema que parece que además cada vez tiene menos adeptos.
  • es caro: el editor de escritorio que tienen sólo puede usarse durante 30 días y luego tienes que pasarte al plan de pago más caro que hay, así que la única opción es usar el editor on-line con los problemas comentados antes.
  • finalmente, tiene sus limitaciones como fuentes, diseños, hiperenlaces, etc.

Ojo, una presentación bien hecha con Prezi dejará a tu audiencia loca, en serio. He visto a gente levantar la mano para preguntar delante de todo el mundo qué leches ha usado el conferenciante.

¿Alternativas? Pues alguna hay pero dado que la forma novedosa de hacer presentaciones ha gustado mucho, era cuestión de tiempo que saliera algo en software libre. Pero en realidad es mucho mejor, en lugar de quedarnos con un formato propietario, la alternativa usa un estándar ampliamente usado y soportado actualmente: SVG. Este estándar de dibujo vectorial permite incrustar en el dibujo código JavaScript por lo que tener funcionalidades de «navegación» no era tan difícil.

Jessyink, el proyecto que aporta esta funcionalidad viene de la mejor forma posible, como un plugin para el estupendo editor Inkscape. Llevo usando Inkscape para hacer mis diagramas y dibujos desde hace un tiempo y su potencial para la edición está más que comprobado.

Con Jessyink uno puede seguir el viejo patrón de diapositivas, de hecho diría que es más sencillo y potente que cualquier otro editor de diapositivas como OpenOffice Impress. Puedes definir una capa como fondo y luego cada capa se irá mostrando de forma sucesiva. El siguiente ejemplo muestra una diapositiva, digamos, tradicional pero usando este nuevo mecanismo. Es un archivo SVG de menos de 100KB sin comprimir, que puede incrustarse en cualquier web y visualizar sobre la marcha en cualquier navegador que soporte decentemente este estándar, es decir: Mozilla Firefox, Google Chrome/Chromium u Opera. Olvídate de usar Internet Explorer 6 o 7 de momento para esto.

En una carpeta del svn público de Prodevelop he dejado un par más de ejemplos, no sé si seguiré escribiendo algún post más en el blog sobre este asunto, ya he hecho una presentación interna en el trabajo con este sistema y a la gente le gustó mucho. Si tengo alguna nueva experiencia interesante al respecto sin duda por aquí la dejaré caer, pero me interesa saber vuestra impresión sobre este tema!!

Programar sin Google

Recuerdo una conversación no muy lejana, entre un compañero, Jefe de Proyecto con cicatrices ganadas en muchos años de pelea informática, y un desarrollador que ya no está en la empresa.

A mi compañero le cambiaba la cara del verde al morado, así que agucé el oido.

- "Es que he buscado en google y no encuentro cómo hacerlo".
- "Pues invéntatelo, eres Ingeniero Informático, ¿no?".
- "Bueno seguiré buscando".

- "¿Cual es el problema?". Le pregunté a mi compañero cuando se marchó el desarrollador.

El problema en cuestión era "tan complejo" como un simple cast de hexadecimal a binario, con la pequeña complicación de que se trataba de cadenas muy largas y las conversiones automáticas de tipo habituales fallaban por overflow. En resumen, que había que hacer el cast a mano.

- "¡Lleva dos días con esto!"

Al día siguiente, volvió a aparecer por el despacho el susodicho Ingeniero, que contaba en su CV con varios certificados oficiales de Ingeniero Desarrollador de esos de a 1.000 € el certificado.

- "¡No hay manera! Da overflow. He buscado en codeplanet, etc, etc. y no encuentro nada igual".
- "Mira, mañana esto tiene que estar solucionado", le dijo el Jefe de Proyecto.

Al día siguiente la escena se repitió, con la diferencia de que mi compañero le enseñó un sencillo algoritmo hecho a mano en un rato para hacer manualmente la conversión.

El Ingeniero abría los ojos como platos. "¿Has hecho el cast a mano?"

Esta escena es una buena prueba del nivel al que podemos llegar si todo lo confiamos a San Google. Ha quedado muy atrás la época en la que programábamos sin más ayuda que un libro de referencia (bendito Kernighan & Ritchie), y el prueba y error, porque Internet aún no existía. Sin embargo, esa etapa nos obligó a buscarnos la vida, a encontrar soluciones desesperadas, y a no olvidar nada, una vez vista la luz.

Propongo que todo programador pase por una etapa (corta, eso sí) de programación sin Google, para cultivar la extinta ciencia de pensar un problema en profundidad, y encontrar un camino propio de salida. No hace falta meditar tres años, tres meses y tres días como los lamas, pero esta experiencia debería ser obligatoria.

Quizás sea una buena idea para formar becarios, y la ponga en práctica ...

Android 2.2 Froyo anunciado oficialmente

Durante la Google I/O de este año se ha anunciado la nueva actualización Froyo para Android, esta viene cargada de novedades entre las que cabe destacar las siguientes:

  • Nuevo Dalvik Just in Time (JIT) que mejora el rendimiento de los dispositivos 2x-5x. 
  • Nuevas APIs para la instalación de aplicaciones directamente en la SD o para realizar backups de las mismas.
  • Nuevos Modos UI automáticos con modo noche/coche, perfecto para un GPS.
  • Voz/Llamadas a través de BT.
  • Wifi Portable Hotspot, convierte tu Android en un punto de acceso WIFI con el que compartir tu conexión a internet móvil.
  • Navegador 2x-3x más rápido a la hora de ejecutar Javascript.
  • Flash 10.1 Integrado de serie
  • Mayor integración con Exchange
  • Software fotográfico mejorado

Se dice que la actualización llegará para todos los dispositivos del mercado pero como suele ser habitual es posible que tarden meses en distribuir las respectivas actualizaciones de Firmware en al menos un 70% de los terminales.

 

Las primera release para un dispositivo se publicará para Google Nexus durante el próximo mes.

 Urls de Interés:

http://developer.android.com/sdk/android-2.2-highlights.html

http://android-developers.blogspot.com/2010/05/android-22-and-developers-goodies.html

Seminario gratuito de "Introducción a gvSIG 1.9" en la ETSINF

Prodevelop y la Escuela Técnica Superior de Informática de la Universidad Politécnica de Valencia (ETSINF) han organizado e impartido un seminario gratuito de introducción de gvSIG  1.9 durante los días 26, 27 y 28 de abril.

Más información sobre el seminario

Testeando drupal gardens

Drupal Gardens es un servicio de alojamiento para sitios basado en el popular gestor de contenidos Drupal. Dado que llevo ya bastante tiempo usando este CMS (esta misma web lo utiliza), quería probarlo y ver las posibilidades que ofrecía.

Tras recibir mi clave de activación (están todavía en beta) pensé que como primer experimento podría aprovechar para crear un micro-site que agregara los contenidos que public

o en la web en diferente sitios, especialmente en twitter en los diferentes blogs que mantengo, este incluido. Así que configuré el sitio http://jsanzplanet.drupalgardens.com

Bien, lo que Drupal Gardens ofrece en definitiva es la posibilidad de generar instancias de Drupal 7, con un reducido pero selecto conjunto de módulos que permiten generar con un esfuerzo moderado una buena variedad de tipos de sitios: desde páginas estáticas, a blogs para uno o varios usuarios, o incluso pequeñas comunidades digitales con foros, lista de correo básica, encuestas, contenidos personalizables (Drupal 7 lleva CCK de serie), etc.

Supongo que el número de módulos irá creciendo. Es significativo que no se incluya de serie Views, aunque sí hay un módulo para hacer vistas más sencillas.

Mi sitio sólo tiene una página estática con un "Acerca de.." y dos categorías de agregación. He configurado como portada la categoría de micro-blogging para que salgan directamente estos recursos. El resto de blogs, que son más estáticos aparecen como bloques. De esta forma mi contenido dinámico queda a la izquierda (limitado sólo a los últimos envíos) y a la derecha el contenido que varía menos. Finalmente el sitio tiene el típico formulario de contacto por si alguien quiere decirme algo.

teaser de mi primer test

Esto es sólo un ejemplo de sitio, Drupal Gardens, a diferencia de otros servicios como Wordpress.com es MUY versátil. No lo veo como un servicio de uso personal, ni para todo el mundo, ya que requiere un buen conocimiento de Drupal para sacarle partido. En cambio, sí que lo veo bastante interesante para aquellas empresas u organizaciones que no tengan unos requisitos de personalización muy fuertes en cuanto a funcionalidad. Por 20 dólares al mes se tiene un servicio escalable y mantenido, y una vez configurado ya sólo resta meter contenidos y actualizar el diseño cuando sea necesario. Cabe decir que mantener sitios con Drupal requiere su dedicación, ya que los módulos y el core se actualizan con bastante asiduidad.

Respecto al diseño, se ofrecen unos temas por defecto pero dispone de un muy bien resuelto gestor que permite a golpe de ratón establecer fuentes, colores y espacios para los elementos de la web. Es algo así como una interfaz de usuario para la hoja de estilo CSS. Finalmente se tiene un espacio para colocar el CSS que uno quiera. Esta interfaz se puede ver en el vídeo de la portada de su web, no sé si se incluirá en Drupal 7 o es sólo para este servicio web.

La única pega que le veo ahora mismo, salvo los pequeños fallos de interfaz que supongo se irán solucionando es que el precio es algo elevado para uso personal. No es posible asignarle un dominio o subdominio a tu sitio en drupal gardens sin pasar por el primer plan de precios (el de 20 dólares al mes) y por tanto, si sólo quieres tener un sitio sencillo pero con tu propio dominio, es demasiado caro. Pero como he comentado, para webs sencillas o en las que no quieres complicarte la vida con su mantenimiento es una solución muy interesante.

Actualización: no sé si han hecho el cambio en estos últimos días o bien estaba y no me di cuenta, pero parece que se podrá tener una cuenta gratuita de drupalgardens y asignarle un dominio o subdominio por unos 12 dólares al año, por lo que mi mayor pega al servicio se acaba de esfumar...

No hay proyecto open-source serio sin su fork

Recientemente estaba en las IV Jornadas de SIG Libre de Girona hablando con la gente de Sextante, cuando un conocido se dirigió a ellos. La conversación fue más o menos en estos términos:

- "¡Os he hecho un fork!"

- "¡Por fin! ¡No hay proyecto open-source serio sin su fork!"

- "¡Ahora ya somos un proyecto de verdad!"

- "Ahora cuéntanos, ¿qué ha pasado?"

- "Vereis es que necesitaba ..."

 

Bromas aparte, la proliferación de forks y similares parece que estos días está de moda. En el caso de Sextante, el tema se debía, según creo recordar, a versiones de bibliotecas; nada que no resuelva una siguiente release de Sextante.

Ha coincidido que esta semana ha habido bastante revuelo en las listas de correo internacionales de gvSIG, tras el anuncio de una distribución paralela no oficial de gvSIG, que soluciona varios problemas existentes en la versión oficial 1.9.

El asunto no habría pasado de ahí si no fuera porque ha habido intentos de comunicación con la organización responsable de la nueva distribución ("quasi-fork"), sin respuesta. Confío en que, dejando a un lado intereses de vender una imagen a través de una nueva distribución, se trabaje en común, con repositorio de código fuente común, aplicaciones y cadenas de L10N comunes, bugtracking común, etc. Parece que va a ser así.

 

Pensando en las razones que motivan a alguien aventurarse a hacer un fork, se me ocurren varias:

  • Motivos técnicos. El proyecto original presenta limitaciones técnicas que para alguien son tan insalvables que fuerzan a hacer un fork. Un ejemplo de este caso podría ser GeoToolkit, fork de GeoTools (con aditivos de motivos estratégicos).
  • Motivos personales. Problemas de comunicación, inter-personales o ansias de portagonismo personal motivan que alguien decida no seguir colaborando en un proyecto y lance un fork.
  • Motivos estratégicos. La dirección del proyecto diverge de los intereses estretégicos de un desarrollador o grupo, forzando a realizar una rama del proyecto, creando uno nuevo.

Habitualmente, suele darse una mezcla de motivos. Mi opinión personal, es que muchas veces las divergencias surgen de problemas de comunicación que derivan en posiciones forzadamente inamovibles. En ocasiones es beneficioso, ya que la "forkabilidad" implica un consenso tácito en la dirección del proyecto; consenso que se hace explícito cuando aparece un fork y la comunidad debe decidir el camino a seguir. La posibilidad de que se pueda hacer un fork es intrínsecamente buena y sana, característica única de los proyectos open source.

Sin embargo, lanzar forks alegremente es en general una manera horrible e ineficiente de solucionar los problemas que puede tener un proyecto. ¡Comunicación, por favor! Una mejor comunicación solucionaría muchos de los problemas que motivan un fork.

Así, que a fin de cuentas, la aparición de forks es, en cierta manera, una consecuencia del éxito de un proyecto. No se producen forks de proyectos en vía muerta, simplemente se extinguen (como sucedió con el proyecto Community MapBuilder).

 

Así, que puede afirmarse que gvSIG ya es un proyecto maduro, con su propio fork. Seguiremos la vida de este "pseudo-fork" nacido para morir con la publicación de la versión 2.0 de gvSIG. ¿Extraño? No, además de los motivos técnicos concretos que puedan existir, la publicidad que está recibiendo la organización que lo ha lanzado, probablemente le valga la pena.

La aventura oceánica llega a Puerto Rico

El Bahari está en pleno Caribe ya, navegando en estos momentos la costa sur de Puerto Rico. Es un momento como otro cualquiera para tomar una pequeña instantánea del trayecto recorrido por el velero desde que sus tripulantes salieran de Valencia a medidados de noviembre. Puedes pulsar en la imagen para verla un poco más grande.

Trayecto del Bahari hasta el 30 de diciembre

Esta imagen está hecha con gvSIG, conectado directamente a la base de datos de posiciones (PostgreSQL/PostGIS) que vamos rellenando conforme el velero nos envía su posición.

Para el año que viene tenemos pensados algunos pequeños cambios en el visor del trayecto, especialmente en la forma en que se filtran las posiciones (llega una cada dos horas más o menos) de forma que aprovechemos un poco mejor los limitados recursos para presentar posiciones, especialmente en Internet Explorer.

Y llegó MOSKitt 1.0.0

Para todo aquel que no se haya enterado, este pasado verano se publicó sin mucho ruido la versión 1.0.0 de MOSKitt. Y se hizo sin mucho ruido porque así es cómo hemos llegado a este primer gran hito del proyecto: poco a poco, dando pequeños pasos firmes y sin grandes sobresaltos. De manera que cuando mira atrás no puede sino confirmar que esta versión no podía haber sido de otra manera.

Cuando empezó el proyecto en 2007, el objetivo de MOSKitt (entonces gvCASE) era proporcionar las herramientas necesarias para que los analistas de sistemas informáticos de la MOSKitt DB EditorConselleria de Infraestructras y Transportes (CIT) de la Generalitat Valenciana pudieran realizar su trabajo aplicando el método gvMétrica. Pero no sólo eso, sino que las distintas piezas de esta gran herramienta debían ser suficientemente genéricas para poder ser utilizadas en organizaciones con métodos de producción de software distintos. Llegados a la versión 1.0.0, MOSKitt cuenta con un amplio abanico de herramientas para el modelado de sistemas software, transformaciones entre modelos para agilizar la ejecución de los proyectos de desarrollo y diferentes mecanismos de extensión y configuración que facilitan su adaptación a cualquier organización.

FOSS4G 2009

Last saturday I arrived from FOSS4G 2009, this year despite less assistants came, it has been as interesting as every year.

Prodevelop did 2 presentations. At the first "gvSIG Mini. OSM for almost every phone" gvSIG mini was presented, the new map client for mobile phones with routing support and address and points of interest search. It was a complete success with several hundreds of downloads the first day. 

 

 

FOSS4G 2009

El sábado volví del FOSS4G 2009, este año aunque han habido menos asistentes ha sido tan interesante como siempre.

Prodevelop realizó dos presentaciones. En la primera "gvSIG Mini. OSM for almost every phone" se anunció gvSIG mini, el nuevo cliente de mapas para teléfonos móviles con soporte de cálculo de rutas y búsqueda de direcciones y puntos de interés. Que fue todo un éxito y tuvo varios cientos de descargas el primer día. 

gvSIG Mini at FOSS4G2009

 

Distribuir contenido