¿Usuarios habituales de gvSIG? No os perdáis esta extensión que añade nuevas funcionalidades al TOC estándar que acaba de liberar Cartolab.
Etiquetado: gvSIG RSS Mostrar/ocultar comentarios | Atajos de teclado
-
Andrés
-
Andrés
gvSIG codesprint in A Coruña: a personal summary
As you may know, iCarto and Cartolab have hosted a gvSIG codesprint at the nice city of A Coruña. iCarto was kind enough to support my attendance to the event to work on gvsig, navtable & navtableforms. Find below some comments on my personal experience.
Some general impressions on the event
- It’s great to see codesprints are becoming usual in gvsig project. It’s still a new practice to be fully embraced for most members of the community but taking into account that the the first codesprint I proposed was almost 1 year ago, we have good rithm (this was the 4th codesprint!). It feels good to see such an amount of people and energy during the codesprint. It is encouraging and talks about their commitment to the project.
- This codesprint was the 2nd in number of participants after the one in Valencia! That confirms that Galicia matters
That was the good news. The bad ones: I’ve missed developers from England (do you know London is directly connected to A Coruña by flight?), Portugal (don’t you know that we speak the same language?!) and more people, shops and gvSIG members & collaborators from Spain, though. We should try harder to bring people to codesprints. - That kind of events are great to grow relationships and trust. Also they are great to communicate diffuse information and transfer knowledge: we had some good conversations with Joaquín del Cierro (gvSIG development manager) about the technological background of the project, how some decissions are made and the direction of the development theses days.
NavTable and NavTableForms: what we have done
In the hacking side, I’m pretty happy with the results. Most of the time, Jorge López and me paired together to resolve the priority things on NavTable and NavTableForms. Here the results:
NavTable
- Flavio Pompermaier had talked us about the differences between layer.getSource().getRecordset() and layer.getRecordset() methods. Roughly: the second returns the features directly from the source, which seems to reflect changes (schema modifications, add new registers, etc) in real time. I spent a time to reproduce the bugs he showed us but I couldn’t. The last work on listeners done by Javier Estévez and to be integrated in gvSIG 1.12 had solved it.
- Having some good conversations with Nacho regarding past conversations and improvements on NavTable UI. Some of the proposals will appear soon on your favorite mailinglist!
- Having some good conversations with Joaquín on metadata and filtering in gvSIG, which resulted on:
- metadata: the better way to integrate metadata into gvSIG sources is by doing your own custom mechanism, as we already have (for example: to associate to the data domain-values or validation). There is no such a thing of a broad standard on the matter (although there are some attempts).
- pre-filtering from datasource (definitionExpression in other GIS applications): I had asked that in the mailinglist (and even got a only-read solution). Lately, it appeared again in gvsig-international a thread talking about that. The short answer: it’s not possible to do it now.
- Refactoring to actions. I work on this during Friday morning. It was more difficult that I thought as our codebase is very coupled at some key part, which required an aditional work to do this. What I got is an initial prototype working (uploaded to a temporal branch on our repo) only with the moving actions (go-next, go-last, go-previous, go-first). Although still a prototype I think is very promising as a base to work on.
NavTableForms
- Landing into trunk, the big rewriting done in NavTableForms. Jorge and I spent thursday morning reading code, updating the example for it to work with the new code and with integrating issues. It was easier that I thought, and we had the example working in less than 3 hours. I even write down our mini-guide to migrate the example, as it could be interesting for other people.
- Add support for reading domain values from a text file. One of the news on NavTableForms is that it’s able to read domain values from a database (say postgress). Jorge worked to add support for textfiles in a similar way than we do for alias.
- Adding support for multiple validation rules. Jorge worked and integrated this very nice feature.
- A new validation rule: mandatory field. I commited this to repo. By the way, It’s nice to see how easy is to add a new rule.
Summing up: as you may see, they were two intense days! A lot of work done and the hacktivation energy at full again. Looking forward to next one!
-
Andrés
Análisis de comunidades de Software Libre (I): resultados de un estudio sobre GRASS, gvSIG y QGIS
A la hora de seleccionar una aplicación se valoran habitualmente factores tecnológicos -qué nos permite hacer la aplicación- y económicos -cuánto nos cuesta lo que necesitamos. Y se nos olvida un tercer factor muy a tener en cuenta: los aspectos sociales del proyecto, la comunidad de usuarios y desarrolladores que lo mantienen vivo.
A lo largo de una serie de post que inicio hoy voy a presentar un análisis de las comunidades de 3 proyectos de referencia en el mundo SIG: GRASS, gvSIG y QGIS. Durante el proceso de selección nos hemos quedado con estos 3 porque consideramos que son los más importantes y maduros SIG de escritorio, están además bajo el paraguas de la Fundación OSGEO y presentan diferencias en los actores que los gestionan.
¿Qué hemos hecho?
En los más de 25 años que tiene el movimiento del software libre, se ha demostrado la gran capacidad de creación que tiene un modelo centrado en la comunidad. Un modelo que, además, ha mostrado su viabilidad expandiéndose a otras áreas: creación de contenidos (wikipedia), creación de datos cartográficos (openstreetmaps), traducción de libros, etc. Pero si bien conocemos su potencia, poco sabemos sobre “cómo crear y gestionar una comunidad“. Lo único que podemos hacer es observar qué han hecho los demás y cómo les ha ido. Probar. Tratar de extrapolar heurísticos de la experiencia de otros.
Para contribruir al entendimiento de cómo funcionan las comunidades de software libre -Francisco Puga, otra gente del Cartolab y yo- hemos realizado un análisis de las comunidades en base a la información pública que generan. Los actores de una comunidad interactúan entre sí, y, cuando eso ocurre a través de internet, las interacciones dejan rastro:
- Listas de correo: los mensajes contienen la fecha, el autor, etc.
- Wiki: es posible obtener información sobre el autor, la fecha de creación, el número de ediciones de una página, etc.
- Sistemas de control de errores: información sobre quién y cuándo se reportó, si está resuelto o no, etc.
- Sistemas de control del código: podemos obtener la actividad sobre la aplicación basándonos en el número de cambios (commits), conocer quién los hizo, la fecha, etc.
Con la base de esta información pública disponible, lo que hemos hecho ha sido un estudio cuantitativo sobre las comunidades que rodean y sostienen a estos proyectos.
¿Cómo lo hemos hecho?
Gracias a la disponibilidad de ciertas herramientas que nos facilitaron el proceso de obtención de información, además de tener en cuenta la calidad de los datos para poder hacer comparativas entre los proyectos, lo que finalmente logramos hacer fue lo siguiente:
- Sistemas de control de código: hemos volcado toda la información disponible al sistema de control de versiones git para luego parsear su histórico. Esto nos ha permitido estudiar toda la historia de desarrollo de los proyectos hasta diciembre del 2010. Datos para grass – gvsig – qgis
- Listas de correo: hemos usado para ellos la herramienta mailingliststats -que construyó principalmente Israel Herráiz, thanks bro!- con datos desde marzo de 2008 hasta diciembre de 2010, en base a:
Algunas aclaraciones sobre el estudio de las listas de correo:
- Los 3 proyectos tienen muchas más listas para diversos aspectos (traducciones, dirección del proyecto, listas locales, etc). Nos hemos centrado en éstas porque creemos que son suficientes para marcar la tendencia, que realmente es lo que nos interesa; no los números gordos que serían engañosos.
- En el caso de las listas de usuarios, para gvsig hemos estudiado además de la lista internacional, también la española. Ésta última es donde nació el proyecto y muestra todavía la actividad principal. No hacerlo introduciría sesgos.
- Por desgracia, la calidad de los datos nos ha limitado el período de estudio: hemos conseguido analizar desde Marzo de 2008 hasta diciembre del 2010.
¿Para qué nos vale?
El estudio de una comunidad tiene diferentes enfoques. El nuestro se basa en el modelo que divide a la comunidad en 3 niveles de participación e implicación:
- Leaders: aquellos que construyen el producto.
- Power users: aquellos que lo adaptan a sus necesidades y lo usan intensivamente.
- Casual users: aquellos que lo usan para una tarea concreta.
Esta aproximación facilita la comprensión de cómo funciona realmente la comunidad, ya que no es lo mismo la aportación de una persona a través de un único mensaje en una lista de correo a la de alguien que se ha pasado 6 meses creando la aplicación. Nos aporta además, información sobre la adopción de las herramientas así como patrones de participación y actividad entre los distintos actores.
Con este enfoque y metodología hemos conseguido realizar los siguientes indicadores:
- Tendencias de adopción entre usuarios: basado en las listas de correo.
- Tendencias de adopción entre desarrolladores: basado en las listas de correo.
- Actividad y fuerza de trabajo: basado en contribuciones de código (commits).
- Análisis de composición de la comunidad: basado en contribuciones de código.
- Análisis generacional: basado en contribuciones de código.
En las siguiente semanas iremos publicando los resultados del estudio, de cara a comprender mejor cómo funciona una comunidad de software libre. Stay tunned!
-
Andrés
Arqueología y SIG desde Galicia: el proyecto arqueoponte
La arqueología ha sido hasta hace bien poco una ciencia olvidada y cuasi-desconocida para mí, más allá de algunos estudios antropológicos que he leído (soy fan declarado de Marvin Harris) y que creo que son útiles para explicar ciertos patrones de comportamiento en la era internet. A partir de mi aproximación al mundo de los Sistemas de Información Geográfica de los últimos años, la he ido redescubriendo. Porque el mundo SIG y la arqueología caminan de la mano, al fin y al cabo…
la arqueología consiste en la determinación del comportamiento humano, a partir de la localización de objetos materiales
Recuerdo aún el día que llegamos de una reunión con el equipo arqueólogo que había tenido lugar en campo, en la excavación misma. Posteriormente a la reunión, participamos en una gira donde un miembro del equipo explicaba las teorías que barajaban para el enclave y la importancia que tuvo en su tiempo. Así descubrí cómo A Lanzada, durante 15 siglos, fue uno de los puertos francos de Galicia con el mundo. Y así también, consolidé la idea de que el soporte SIG, para cualquier excavación arqueológica, es imprescindible.
Una de las cosas buenas de ganarte la vida como programador, es que ganas conocimiento del dominio en que estás trabajando. Y el proyecto ArqueoPonte me permitió reconciliarme con la arqueología. Bueno, pues me entero hoy mismo de que han salido publicados los videos de unas jornadas donde he ido a hablar sobre el proyecto y las tareas que hemos desarrollado a nivel SIG. Aunque debido a mis nuevas ocupaciones ya no estoy participando en los últimos flecos del proyecto (que llevan otros compañeros desde Cartolab) creo que merece la pena publicar el video aquí:
Nota de contexto: el proyecto arqueoponte consiste en el desarrollo de una aplicación a medida sobre gvSIG, que permita gestionar el inventariado de excavaciones arqueológicas -como las llevadas a cabo en A Lanzada y Besomaño- para su posterior explotación.


Jesus Sayar 9:43 el 19 abril, 2011 Enlace permanente |
Interesante!! A la espera de los resultados
amaneiro 15:33 el 11 junio, 2011 Enlace permanente |
Bueno, ahora que he terminado la mudanza, empezaré a publicarlo todo poquito a poco.