gvSIG Code Sprint at Valencia

As last year, the day before the International gvSIG Conference we are planning a Code Sprint. This year our focus will be on gvSIG Desktop 2.0, but of course as always, it’s up to the participants to decide the topics they want to deal with.

There is an open wiki where you can add pages for your ideas, but is encouraged to use the development mailing lists (in English or Spanish) to discuss the bug fixes or features that will be treated at the Code Sprint.

ai2It will be held as the last year at the Innova Room of the Polytechnic University of Valencia, again kindly sponsored by the ai2 Institute (thanks!!).

If you want to participate, please add yourself on the attendants list and send me an email (jsanz [at] gvsig [dot] com) with a valid ID number, the university ask us for a list of participants to prepare the Internet connection. You will also have to come with an ethernet wire as no wi-fi is available for visitors on that room.

That’s all, see you soon!!

20101201_0508_.JPG

gvSIG Code Sprint 2010 at Innova Room

Posted in community, development, english, events | Tagged , | 2 Comments

Actualizar Sextante en gvSIG 1.11

Hola.

Dado que la versión 0.6 de Sextante que viene embebida en gvSIG 1.11 da problemas con algunos algoritmos, hemos empaquetado el último nightly build de Sextante (con fecha 19-10-2011) y lo hemos agregado al repositorio de paquetes de gvSIG 1.11 para que los usuarios puedan actualizarlo de manera relativamente sencilla desde el administrador de complementos de gvSIG.

Pese a que, según hemos podido comprobar, muchos de los errores de Sextante reportados por usuarios de gvSIG 1.11 ya no suceden con esta actualización, no debemos olvidar que se trata de una versión en desarrollo por lo que, tal y como se recomienda en la propia web de Sextante, es preferible no utilizarla en entornos de producción.

Debido a algunos problemas del propio administrador de complementos de gvSIG el proceso todavía no es completamente automático. A continuación se describen los pasos a realizar para actualizar Sextante en gvSIG 1.11.

1. Descargar el fichero de paquetes de gvSIG 1.11 desde la siguiente URL:

http://downloads.gvsig.org/download/gvsig-desktop/pool/es.unex.sextante/gvSIG-desktop-1.11.0-es.unex.sextante-0.6.0-20140410-testing-all-all-j1_5.gvspkg

Nota: en función del navegador utilizado es posible que en el proceso de descarga la extensión del fichero cambie a .zip. En tal caso será necesario renombrar el fichero para que vuelva a tener su extensión original (.gvspkg).

2. Borrar la carpeta “es.unex.sextante” ubicada dentro del directorio de instalación de gvSIG. Habitualmente:

  • En Linux: /home/[usuario]/gvSIG_1.11.0_final/bin/gvSIG/extensiones/es.unex.sextante/
  • En Windows: C:\Archivos de programa\gvSIG_1.11.0_final\bin\gvSIG\extensiones\es.unex.sextante
  • En MacOS: /Applications/gvSIG-1.11.0.app/Contents/Resources/Java/gvSIG/extensiones/es.unex.sextante

Nota: es conveniente hacer una copia previamente por si acaso algo va mal.

3. Arrancar gvSIG (en Windows arrancar en modo administrador).

4. Ir al administrador de complementos (menú Herramientas -> Administrador de complementos).

5. Seleccionar “Instalación desde fichero” e indicar la ruta hasta el fichero gvSIG-desktop-1.11.0-es.unex.sextante-0.6.0-20140410-testing-all-all-j1_5.gvspkg previamente descargado (punto 1). -> Siguiente.

6. En la pestaña “No oficial” seleccionar la última versión del paquete -> Siguiente (el proceso puede tardar algunos minutos).

7. Cerrar gvSIG.

8. SOLO PARA WINDOWS: Ir a la carpeta “extensiones\com.iver.cit.gvsig\lib” y borrar los ficheros:

  • jts-1.9_gvSIG.jar
  • jtsio-1.8.jar

9. Arrancar gvSIG.

Espero que os sea útil.

Saludos,

Manuel.

Posted in community, gvSIG Desktop, spanish, testing | 32 Comments

gvSIG 1.12: new call for contributors

Hi I reproduce here this important mail from the gvSIG Team on mailing lists, as it’s important for the release of next gvSIG Desktop 1.12 version. Best, Jorge.

Dear gvSIG users and developers,

As most of you know we made a call for contributions for gvSIG 1.12 last June. September 21st was the deadline to send bugfixes and fortunately we got lots of them. Now it’s time to review and integrate them but the problem is that all the team is now focused on the development of gvSIG 2.0 since it is our most priority task at the moment.

Although we think that gvSIG 1.12 is very interesting for our users and developers since it will come with quite a few bugfixes and improvements, we really think that we can’t afford to delay the release of gvSIG 2.0 anymore.

That’s why we make a new call for contributors today. These are the main tasks we would need you to do:

  • Review the received patches
  • Build the binaries
  • Test the binaries

Please read these documents to find more info about the tasks:

In case you are willing to help us to release gvSIG 1.12 just reply this email and tell us what tasks are you interested in and a coordinator will contact you.

Thanks in advance
The gvSIG team.

Posted in community, english, gvSIG Desktop | 2 Comments

3as Jornadas LAC de gvSIG. Compartiendo un proyecto común.

Durante los días 12 a 14 de octubre tuvieron lugar en Foz do Iguaçu las 3as Jornadas de Latinoamérica y Caribe de gvSIG que, como años anteriores, supusieron el punto de encuentro de toda la comunidad de América Latina; jornadas con más de 40 ponencias, 2 seminarios y una amplia área de pósters, en las que estuvieron representadas más de 150 organizaciones de Argentina, Brasil, Chile, Cuba, España, Paraguay, Uruguay y Venezuela.
Los cuatro compañeros que estuvimos de la Asociación gvSIG pasamos unos días fantásticos, en los que como suele ser habitual aprendimos más que enseñamos, en los que pudimos conversar en persona con muchos amigos con los que durante el año sólo podemos comunicarnos en la distancia y en los que se sentaron las bases de acuerdos que nos permitirán seguir avanzando.
Valga este post como una breve pincelada de lo que han supuesto estas 3as Jornadas LAC.
Comenzamos nuestra actividad con un día pre-jornadas dedicado a talleres técnicos, en los que durante mañana y tarde y en el marco excepcional de la UNILA (Universidad Federal de Integración Latino-Americana) se repitieron tres talleres: gvSIG para usuarios; gvSIG avanzado / extensiones; i3GEO y gvSIG. Durante un intenso día de trabajo tuvimos la satisfacción de formar a más de 100 alumnos.


Al día siguiente, bajo el lema “Compartimos Proyecto. Compartilhando um projeto comun.” dieron comienzo las jornadas, con una apertura que animaba a la reflexión sobre el momento actual que vivimos y que, especialmente, vive América Latina. Reflexión sobre la importancia de utilización de tecnologías libres como condición necesaria para la independencia tecnológica, donde con seguridad si no somos independientes tecnológicamente, será imposible hablar de independencia en este mundo multipolar. Reflexión sobre como al software libre no debemos verlo solo como tecnología; el software libre va ligado a los valores, va ligado a una nueva ética. Reflexión sobre como realmente el software no es, o al menos nunca debería ser un fin en sí mismo; el software es un medio para conseguir unos objetivos. Reflexión sobre el momento de cambio en el que nos encontramos y como son los momentos de cambio aquellos en los que se hace posible avanzar, construir, progresar. Reflexión sobre los espacios que queremos construir, donde la gente, las personas sean tenidas en cuenta como lo que son, seres completos con inquietudes técnicas y sociales, con anhelos y con deseo de formar parte de un colectivo solidario, un colectivo que es donde debe residir la soberanía. Reflexión sobre como debemos tener como proyecto una visión estratégica.

Y es que si algo caracteriza al proyecto gvSIG, y eso se transmite también en sus jornadas, es la puesta en marcha de un modelo de desarrollo de software libre teniendo en cuenta no sólo aspectos técnicos. En las jornadas se habló mucho de tecnología, pero sin duda la economía y la política del proyecto estuvieron muy presentes.
Durante tres días pudimos ver una gran variedad de ponencias mostrando las más diversas aplicaciones que con gvSIG están realizando entidades de todo Latinoamérica (¡incluso una de Mozambique!), tomando especial relevancia las orientadas a la gestión de recursos forestales y recursos hídricos.

Estas jornadas han cumplido siempre con nota su denominación “Latinoamérica y Caribe”. Si en las 1as jornadas celebradas en Buenos Aires se dieron los pasos para formar la Comunidad Brasileira, en estas 3as jornadas se llevó a cabo la reunión de inicio de la Comunidad Paraguaya.

Hablando de la Comunidad Paraguaya…hay una de esas historias que de vez en cuando nos encontramos en gvSIG y que demuestran que este es un proyecto diferente. Sandra y  Sergio dos estudiantes de la Universidad de Asunción, donde se imparte docencia sólo con software SIG privativo, pensaban que era importante que a los futuros técnicos e ingenieros del país les capacitaran en tecnologías libres; ante la negativa de sus profesores de enseñar gvSIG en sus clases, decidieron pedir dinero a familiares y amigos para poder asistir a las jornadas y aprender gvSIG…con el objetivo de enseñar a todos sus compañeros de universidad y convertirse a su vez en motores de difusión del proyecto y su valores. 800 kms de compromiso e ilusión por transformar. Me apropio de una de las frases que dijo Sergio en la mesa redonda que cerró las jornadas “gvSIG es un proyecto donde viven las ideas”.
Como siempre, las ponencias, talleres y seminarios son tan interesantes como cualquier rincón donde pequeños o grandes grupos de miembros de la comunidad gvSIG intercambian continuamente información, conocimiento y se establecen y refuerzan los lazos de unión de toda la comunidad latinoamericana. No hay mejor señal que ver las continuas reuniones, demostraciones improvisadas e iniciativas nuevas que surgen de este tipo de eventos.

No quiero acabar este post sin volver a agradecer una vez más a la comunidad brasileira todo el esfuerzo y trabajo llevado a cabo para conseguir que estas jornadas hayan sido un éxito, un punto de inflexión que nos muestra que el camino que entre todos estamos construyendo es el correcto.
¡Os esperamos a todos en las 4as Jornadas de Latinoamérica y Caribe! (yo no pienso perdérmelo)

Posted in community, events, spanish | 1 Comment

Business and Solidarity

Hi!

Here you are an English translation of what Gabi posted two days ago. He told us about Business and Solidarity, two words that are not commonly matched together. I hope you enjoy the translation, I’ve done my best to keep the meaning of his post and I apologize for any misunderstanding.

Regards,

Viqui-.

A business model where solidarity and collaboration constitute fundamental values. This is one of the ideas that repeats the gvSIG team. Surely, people will think this is just a statement for social marketing. Others may just think that we are authentic naives, because as everyone knows, it is only needed to watch TV or going outside in order to know that it is imposible to match together Business and Solidarity. Business is rivalry and being better than others, while Solidarity is something left for oneself’s consciousness.

We want to talk about business, not just about “making money” as a result of a contract. The business concept is associated to the existence of trade agreements, of course, but involves more things.

Talking about business is talking about continuity. The business takes place in a scenario where trade agreements are projected on a greater time horizon than a simple buy and sale agreement.

Talking about business means to talk about a relationship that extends over time, and for this, there must be trust. Trust between the parties in the sense of respecting the agreements and that this occurs on a konwn and familiar environment for all stakeholders.

In the proprietary software model, the scenario is simple. The asymmetry between the holders of knowledge and the ones that can only be users of the technology allows a well known scenario where the shots can only be called by the former.

Probably the user company will not have a lot of confidence and security on the company that is the knowledge’s owner, but at least they can not say that the scenario is not known. One sets the rules, such as prices, terms of use, etc., and the other is ‘free’ to sign the agreement of usage. One commands and the other obeys.

If we speak of free software, which is in what we are involved, the scenario is totally different. There is no potential nor legal limitation to the access of knowledge by any of the possible stakeholders in the formalization of economic or commercial agreements. All of them are free to set their business model.

We must be aware that in the free software model we face totally different business conditions. We should not therefore being surprised about the idea that the same values ​​of the classical model, such as rivalry and speculation with the acquired knowledge, are not valid in this new model.

Nor should it surprise us that the same values ​​that act as a driver in the development of free software in the technical-scientific collaboration field between different groups thanks to the open access to existing information, were also valid when it comes to economy.

Take the case otherwise. Imagine several companies, SMEs ICT around a model based on free software but where one or more of them want to act or place conditions that stay away from the values ​​of free software. Does anyone see it possible to build a framework of trust in these conditions? “I do not go out from proprietary software model in order to fall back into the same trap” will think more than one of the companies that really want to bet for a model of free and open source software.

That is why we say that a business model based on free and open source software will be possible only from the values ​​of cooperation and solidarity, otherwise we will fail to implement new ideas through the classical schemes. One thing is to work with free software and other thing really different is to adopt its philosophy.

I do not think it’s something easy to do, surely it’s much easier to write it than to get it, but not because of that we must stop on analyzing and reflecting on these issues.
The dominant discourse will remain, at least for long, which proclaims that business and solidarity is just a story for children, and that usually comes from people that do not know what life is.

Although the years keep passing, some people keep telling us that we say this things because we are Young? Beside that, let’s continue reflecting about the conservative speech that those people spread. What model they want sell to us? A model of precarious and full of difficulties SMEs? Who make this speech to us? Are they the ideologues of the current state of insecurity in which we find? Those who are silent when the large consultants make predatory Dumping [1], [2] in order to keep out of the market the small ones?

They will also tell us that the problem has to do with size. That a concentration of capital is needed in order to ensure a certain minimum size. That the proliferation of micro enterprises is not a good model, and that is better that many of these micro enterprises join together to increase the size mentioned.

And I agree, but reaching such agreements or formalize such partnerships should not go coupled to the resignation of that values. If you want to work around free and open source software, it will be better to do it in tune to this new model of trust, cooperation and solidarity.

A new business ethics is not only possible, but necessary for the development of this new model.

And above all, try to work on what you believe and on that you want. No one has the moral nor scientific authority to tell you that your dreams are chimeras.

[1] http://en.wikipedia.org/wiki/Predatory_pricing
[2] http://www.investopedia.com/terms/p/predatorydumping.asp#axzz1YgbJlwbh


Posted in Business, community, english, gvSIG Association, opinion | 2 Comments

Negocio y Solidaridad

Un modelo de negocio donde la solidaridad y la colaboración se constituyan en valores fundamentales. Ésta es una de las ideas que más repetimos desde gvSIG. A buen seguro, habrá gente que pensará que esto no es más que una afirmación para hacer marketing social. Otros que simplemente somos unos auténticos ilusos, porque claro, como todo el mundo sabe, no hay más que ver la televisión o salir a la calle para saber que Negocio y Solidaridad juntos es imposible, que el negocio es rivalidad y estar por encima del otro, mientras que la solidaridad es algo que se deja para la conciencia que cada uno pueda tener.

Queremos hablar de negocio, no de un simple “ganar dinero” como resultado de un contrato. El concepto de negocio lleva asociado la existencia de acuerdos comerciales, por supuesto, pero también más cosas.

Hablar de negocio es hablar de continuidad. El negocio se desarrolla en un escenario donde los acuerdos comerciales se proyectan en un horizonte temporal mayor al de un simple contrato de compra – venta.

Hablar de negocio es hablar de una relación que se prolonga en el tiempo, y para ello, es necesario que exista confianza. Confianza entre las partes en el sentido de que se van a respetar los acuerdos y de que se mueven en un entorno conocido por todos los actores.

En el modelo del Software privativo es sencillo. La asimetría existente entre los poseedores del conocimiento y los que solo pueden optar a ser utilizadores permite que el escenario sea muy conocido: la sartén solo tiene un mango y ya sabemos quien lo tiene cogido.

Probablemente no sea mucha la confianza y seguridad que la empresa utilizadora tenga en la empresa propietaria del conocimiento, pero al menos no podrá decir que el escenario no es conocido. Uno fija las reglas, -precios, condiciones de uso, etc- y el otro es ‘libre’ de firmar o no el acuerdo de utilización. Uno manda y otro obedece.

Pero si hablamos de software libre, que es en lo que estamos, el escenario es totalmente diferente. No existe potencial ni legalmente limitación alguna para el acceso al conocimiento por parte de ninguno de los posibles actores interesados en la formalización de acuerdos económico – comerciales. Todos tienen libertad para fijar su modelo de negocio.

Hemos de ser conscientes de que en el modelo del software libre nos encontramos ante unas condiciones de negocio totalmente diferentes, y no debería por tanto extrañarnos, que los mismos valores del modelo clásico, tales como la rivalidad y la especulación con el conocimiento adquirido, no resulten válidos en este nuevo modelo.

Tampoco debería extrañarnos que los mismos valores que actúan como motor en el desarrollo del software libre en el campo técnico-científico, colaboración entre diferentes grupos gracias al libre acceso a la información existente, fueran también válidos cuando hablamos de economía.

Veamos el caso contrario. Imaginemos a varias empresas, pymes TIC, en torno a un modelo basado en software libre pero donde alguna o algunas de ellas quieran actuar o poner condiciones que se alejen de los valores del software libre. ¿Alguien ve posible la construcción de una marco de confianza en estas condiciones? “No me salgo yo del modelo privativo para volver a caer en la misma trampa” pensará mas de una de las empresas que realmente quieran apostar por un modelo de software libre

Es por ello que afirmamos que un modelo de negocio basado en software libre sólo será posible desde los valores de la colaboración y la solidaridad, de lo contrario estaremos fracasando al querer poner en marcha nuevas ideas a través de los esquemas clásicos, y es que una cosa es trabajar con software libre y otra adaptar su filosofía.

No creo que sea fácil hacerlo, seguro que es mucho más fácil escribirlo que conseguirlo, pero no por ello debemos de dejar de analizar y reflexionar sobre estas cuestiones.

El discurso dominante seguirá siendo -al menos durante bastante tiempo- el que proclama que esto del negocio y la solidaridad no es más que un cuento de niños, de gente ‘que no sabe lo que es la vida’.

Además de la satisfacción de que aunque sigan pasando los años nos digan que esto lo decimos porque somos ¿jóvenes? continuemos reflexionando sobre el discurso inmovilista que muchos propagan. ¿Qué modelo nos quieren vender? ¿Un modelo de empleo precario y de pymes llenas de dificultades? ¿Quienes nos dan el discurso? ¿Los ideólogos del actual estado de precariedad en el que nos encontramos? ¿Los que callan cuando las grandes consultoras hacen Dumping predatorio [1] para dejar fuera del mercado a las pequeñas?

También nos dirán que el problema es de tamaño. Que hay que realizar una concentración de capital que sea capaz de asegurar cierto tamaño crítico. Que la proliferación de micro empresas no es un modelo a seguir, que es mejor que muchas de esas micro empresas se junten entre ellas para aumentar el mencionado tamaño.

Y sí, estoy de acuerdo, pero llegar a esos acuerdos o formalizar esas asociaciones no debe ir parejo a renunciar a los valores. Si se quiere trabajar en torno al software libre, es mejor que lo hagáis atendiendo a este nuevo modelo de confianza, colaboración y solidaridad.

Una nueva ética de los negocios no sólo es posible, sino que es necesaria para el desarrollo de este nuevo modelo.

Y sobre todo, intentar hacer aquello en lo que creáis y que os apetezca. Nadie tiene autoridad moral ni científica para deciros que vuestras ilusiones son quimeras.

[1] http://www.e-conomic.es/programa/glosario/definicion-dumping

http://es.wikipedia.org/wiki/Dumping

Posted in opinion, spanish | 8 Comments

gvSIG en master de software libre

El próximo viernes 16 de septiembre de 2011, Martín García Hernández y yo participaremos en las jornadas abiertas del máster de software libre que se celebrarán en la ciudad de Vigo – España, estando organizadas por la Universidad Rey Juan Carlos y la empresa Igalia.

Por supuesto, agradecer a los organizadores por la invitación que nos han realizado.

En esta charla Martín hablará del proceso de migración a software libre que se realizó en la Conselleria de Infraestructuras y Transporte (equivalente a Ministerio regional) y dónde  nos contará la experiencia vivida en el proceso de migración de todos los sistemas informáticos de la Conselleria.

Por otra parte yo hablaré de gvSIG, teniendo mi presentación cuatro bloques diferenciados.

En los dos primeros se hablará del proyecto y de la Asociación gvSIG donde se contará la evolución que ha tenido gvSIG desde sus primeros días a la actualidad.

A continuación, se hablará de lo que consideramos algunas claves de gvSIG que nos sirven para explicar su evolución y terminaremos hablando de como desde gvSIG se interpreta el software libre en aquellas cuestiones que van más allá de las meramente técnicas.

En este último punto esperamos que se genere un debate que pueda resultar interesante y que anime a la participación del público.

A los que puedan acercarse, os esperamos

Posted in opinion | Leave a comment

Comparing the time with the spatial dimension in gvSIG

When we started with the gvSIG sensors projects, we started to be aware of the importance of the time dimension that we had never been considered to date. Before to study in depth the sensors problem, we started to analyze the time dimension and its impact in gvSIG, and the final conclusion that we got was that the time dimension can be compared with the spatial dimension.

When a user changes the envelope in a view (doing a panning, zoom…), the application is really retrieving a subset of the information for the layers loaded in the view. If the layer is a vector layer, only the subset of features contained in this view are displayed. If the layer is a raster layer, only a part of the coverage is displayed.

gvSIG zoom

If the layer is a vector layer, the application creates and uses an spatial filter to decide which features are inside the envelope of the view and which features are outside of this envelope.

gvSIG spatial filter - vector

If the layer is a raster layer, the application uses other filter to decide which part of the coverage is inside the envelope of the view and which part of the coverage is outside of this envelope.

gvSIG spatial filter - raster

This approach to manage spatial filters is too similar to the management of time filters. It is possible to create temporal filters (by instant or by interval) that can be used by a layer to retrieve a sub-set of its information. If the layer is a vector layer, the result of the temporal filter is a sub set of features that are contained in the temporal filter. This filter only can de applied if the layer has information about the time of their features (e.g: in an attribute):

gvSIG time filter - vector

If the layer is a raster layer the result of the temporal filter is just one image that is contained in the temporal filter. In this case, the store has to have several images and the information about the time of each of them:

gvSIG time filter - raster

This approach is really simple and makes easier the support of the time dimension in gvSIG.

More information in the gvSIG Sensors project

Posted in english, gvSIG Desktop | 2 Comments

Pour expliquer l’Association

Ceci est un essai de traduction vers le français du post de Gabi « Explicando la Asociacion ». En espérant ne pas avoir fait trop de contresens !

Bonne lecture,

Christine

L’information publique disponible à propos de l’association gvSIG ne manque pas pour qui veut la consulter et l’étudier.

Bien sûr, il restera toujours beaucoup à expliquer et interpréter. Nous pensons que pour mieux comprendre l’association gvSIG, il est intéressant d’exposer de façon très claire comment l’association interprète la notion de logiciel libre.

Comment nous interprétons la notion de logiciel libre

A gvSIG, nous soutenons un modèle professionnel de développement du logiciel libre dans le secteur de la géomatique. La mission de l’Association est de réussir l’évolution de gvSIG, de garantir la qualité de ce logiciel, l’existence de services professionnels (support, adaptation, etc) et la durabilité du projet. Pour cela, l’Association est chargée de coordonner les efforts et de veiller à la cohérence du développement de gvSIG et de sa diffusion.

Il peut y avoir des personnes qui consacrent une partie de leur temps libre à collaborer à des projets de logiciel libre et c’est très bien. Mais ce qui se passe, c’est que la plupart de ces personnes doivent utiliser des logiciels propriétaires au travail et que c’est pendant leur temps libre qu’ils se consacrent aux logiciels libres.

Nous, nous préférons que les personnes puissent travailler sur des logiciels libres dans le cadre de leur activité professionnelle, et si elles veulent en plus continuer à s’occuper des logiciels libres pendant leur temps libre, c’est parfait. Mais nous insistons : l’Association veut que les gens puissent se consacrer professionnellement aux logiciels libres, et que ceci se fasse à partir de la construction d’un nouveau modèle de production/développement/activité dans lequel les valeurs comme la collaboration, la solidarité et le savoir partagé sont fondamentales. Parce qu’au fond, le logiciel est un moyen et non une fin en soi.

Un autre objectif de l’Association est de veiller à ce que le travail de tous les bénévoles et collaborateurs du projet soit réellement possible, utile, et qu’il se fasse de façon coordonnée. Nous ferions une grande erreur si depuis l’Association, nous ne travaillions pas à convertir en réalité l’apport de ceux qui veulent intervenir de façon bénévole. Nous pensons que toutes ces contributions doivent se faire de façon coordonnée pour les convertir en apports profitables pour tous, avec la garantie que gvSIG soit un produit chaque fois meilleur et avec de hauts paramètres de qualité.

Garantir la durabilité

Pour mener à bien ces objectifs, il est nécessaire de garantir la durabilité de gvSIG et c’est un des principaux objectifs de l’Association. Comment garantir la durabilité ? Si nous parlons de développer un nouveau modèle d’activité, c’est que nous voulons qu’une part de ses bénéfices revienne à la durabilité. A la durabilité d’un produit à partir duquel on peut développer des services professionnels.

Ceci peut être facile à dire, mais moins facile à faire. Tout le monde sait que le « FUD » est une pratique habituelle encore utilisée par les entreprises –généralement assez grandes- du logiciel privateur contre le logiciel libre. Et c’est dans ce contexte que les petites entreprises doivent collaborer, se regrouper et sortir leurs muscles pour mener à bien des objectifs et des projets qui jusqu’à présent étaient hors de portée des solutions libres.  Ceci est un des bénéfices qu’apporte l’Association : construire un cadre où se créent des opportunités pour les entreprises intéressées par gvSIG et la géomatique libre, et atteindre de nouvelles opportunités.

C’est sur ce point que le modèle économique de l’association gvSIG diffère d’autres projets de logiciel libre (qui peuvent bien sûr être plus ou moins adaptés suivant le type de projet).

Certains projets sont patronnés par une seule entreprise, qui porte la majeure partie du développement, et génère des bénéfices autour de ce produit.

D’autres projets naissent et se développent autour du monde universitaire, et généralement se maintiennent grâce à un groupe réduit de développeurs brillants, beaucoup de collaborations de type projets de fin d’études, ou travaux d’étudiants qui ensuite peuvent ne pas continuer à s’investir dans le projet.

Il existe aussi des associations ou fondations qui tirent leur principale source de financement d’autres activités, comme la tenue de conférences, et du soutien des parrains – parrains parmi lesquels il peut y avoir des entreprises dont le modèle d’activité est ou n’est pas celui du logiciel libre.

La différence principale entre ce type de projets et celui de l’association gvSIG est que les entreprises de l’association gvSIG y contribuent avec un pourcentage des projets réalisés en plus de verser une cotisation annuelle qui dépend de leur chiffre d’affaires.

De cette façon, plus il y a d’affaires générées autour du logiciel libre, plus les entreprises gagnent, et plus l’Association gagne. Elle a alors plus de ressources pour investir dans l’amélioration et la durabilité du projet (rappelons que l’Association est à but non lucratif).

Garantie professionnelle

Imaginons qu’un client potentiel veuille contracter des solutions logicielles libres. Pour cela, il voudra avoir la garantir qu’il existe derrière un soutien professionnel. Les grandes entreprises du monde privé diront que si ce n’est pas un logiciel privateur (commercial, disent-elles), tu n’as pas cette garantie. L’Association aide à casser ce mythe en offrant un soutien professionnel, pour que le client acquière une confiance dans les solutions libres, car il s’agit de l’association pour la promotion de la géomatique libre et le soutien de gvSIG, la géomatique libre et gvSIG étant le champ dans lequel elle offre ses services.

Les apports de la communauté sont analysés et incorporés attentivement dans cette optique de professionnalisme pour obtenir un produit intégré et solide.

gvSIG tire profit de cet environnement de logiciel libre professionnel, mais ouvert et participatif, où les apports des bénévoles et des entreprises contribuent à avoir un produit chaque fois meilleur et répondant aux besoins de tous.

Les grandes entreprises

Comme nous sommes une association d’entreprises, certains disent parfois qu’il existe un danger que le contrôle de l’association et du projet soit pris par les grandes entreprises. Et nous disons les grandes entreprises car nous avons pu le lire ainsi ici et là. Cela nous semble étrange : qu’entend-on par « grandes entreprises » ? Dans l’Association, il n’y a que de petites et moyennes entreprises, et indépendamment de la taille, chaque sociétaire n’a qu’un seul droit de vote.

Il existe plusieurs méthodes pour éviter qu’une de ces grandes entreprises soient membres de l’Association. C’est-à-dire, l’Association se garde d’elles.

A gvSIG, nous avons toujours été très critiques par rapport au fait qu’avec beaucoup de naturel, on laisse les grandes multinationales prendre position et être leader de la géomatique libre, alors que le modèle d’activité de ces multinationales est : cacher l’accès à l’information, avoir la propriété exclusive, et détenir un immense pouvoir économique.

Notre intention n’est pas de convaincre quiconque que tel modèle est meilleur ni que tel modèle est le meilleur, le plus éthique, le plus efficient, etc. Chacun bien sûr est libre de choisir celui qu’il veut. Ce que nous voulons, c’est éclaircir et expliquer le pourquoi du comment de l’Association, avec nos défauts, qui doivent être nombreux et que nous essayons de corriger, et nos qualités, au cas où nous en aurions quelques unes.

[1]

Site internet de l’Association :

http://www.gvsig.com/inicio?set_language=es (espagnol)

http://www.gvsig.com/welcome?set_language=en (anglais)

Statuts de l’Association en anglais, espagnol et français, dans :

http://www.gvsig.com/asociacion

Sociétaires, sociétaires d’honneur et collaborateurs de l’Association :

http://www.gvsig.com/association/collaborators

http://www.gvsig.com/association/honour-members

Et divers articles et présentation comme :

http://gvsig-desktop.forge.osor.eu/downloads/pub/documents/reports/gvSIG_Community_and_how_to_participate_OSGIS_2011_part1.pdf

http://gvsig-desktop.forge.osor.eu/downloads/pub/documents/reports/gvSIG_Community_and_how_to_participate_OSGIS_2011_part2.pdf

[2] FUD : FUD (de l’anglais : Fear, Uncertainty and Doubt, en français Peur, Incertitude et Doute)

http://es.wikipedia.org/wiki/Fear,_uncertainty_and_doubt

http://en.wikipedia.org/wiki/Fear,_uncertainty_and_doubt

http://fr.wikipedia.org/wiki/Fear,_uncertainty_and_doubt

Posted in gvSIG Association | Leave a comment

Hunting API incompatibilities with the animal sniffer project

If you have been developing in the java language since at least some time ago, for sure you had been working with many Java versions: 1.4, 1.5, 1.6, …

Each new version of the java runtime environment and development kit usually provides some improvements in:

  1. The Java language (LANG changes).
  2. The Java API. (API changes).
  3. The Java virtual machine. (JVM changes).

If you use one of those improvements in your application, it will need a JRE of that version or greater to run.

That wouldn’t be a problem if everybody used always the last available java versions. However the change to newer versions is performed slowly on some corporations or offices where a specific java version is certified and supported, the change to a newer version is an IT or costs headache, or just not possible at all.

So the usual current scenario is a developer who wants its Java program to be compatible with Java 1.5 or newer, but its using the Java 1.6 (or the upcoming 1.7) version in its development tools. And that way is very easy to add a Java 1.5 incompatibility accidentally.

That is the usual scenario also for the gvSIG desktop project, so some measures had been taken to try to avoid those problems in the 2.0.0 version:

  • Configure the maven-compiler-plugin for java 1.5 source and binary compatibility. The source compatibility prevents from the usage of newer language features (LANG changes). The binary compatibility prevents to compile to a format supported only by newer JVMs (JVM changes). In gvSIG 2.0 this is achieved by configuring the maven-compiler-plugin like this:
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.0.2</version>
            <configuration>
                <source>1.5</source>
                <target>1.5</target>
                <encoding>ISO-8859-1</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>
  • Configure the eclipse java compiler compliance. This is automatically done while using the maven-eclipse-plugin to generate the eclipse projects configuration from the maven one. This prevents more or less the same incompatibilities as the previous measure.

But there is a change which is not detected by those measures: the usage of new API changes. If you use a method available only since Java 1.6, you won’t be able to detect it unless running or compiling your application with a 1.5 or older version.

That has been happening in the gvSIG project from time to time, as the developers use a Java 1.6 version, and the current gvSIG final builds are distributed with that version also. We find the problems later when someone is trying to develop or use gvSIG with a 1.5 JRE.

So how could we detect the Java API incompatibilites while developing with gvSIG?

The answer is by using the Animal sniffer project. This project provides utilities to validate Java code against an API. You can check against Java standard APIs, or even against your own ones.

It also provides a maven plugin, which we have just configured for the gvSIG 2.0 project like this:

<build>   
    <pluginManagement>
        <plugins>
            ...
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>animal-sniffer-maven-plugin</artifactId>
                <version>1.7</version>
            </plugin>
        </plugins>
     </pluginManagement>
     <plugins>
        ...
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>animal-sniffer-maven-plugin</artifactId>
            <executions>
                <execution>
                    <id>check-java-api</id>
                    <phase>test</phase>
                    <goals>
                        <goal>check</goal>
                    </goals>
                    <configuration>
                        <signature>
                            <groupId>org.codehaus.mojo.signature
                            </groupId>
                            <artifactId>java15</artifactId>
                            <version>1.0</version>
                        </signature>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
 </build>

So from now on, all gvSIG 2.0 official projects will have that configuration by default, and will be checked when performing a mvn test or mvn install operation. If there is an incompatibility in one of the projects, you will find in the maven log something like this:

[INFO] [animal-sniffer:check {execution: check-java-api}]
[INFO] Checking unresolved references to org.codehaus.mojo.
signature:java15:1.0
[ERROR] Undefined reference: java/lang/String.contains(Ljava/lang/
CharSequence;)Z in /home/cordin/projects/gvsig/svn/gvSIG-tools2/org.
gvsig.tools/org.gvsig.tools.lib/target/classes/org/gvsig/tools/
dynobject/impl/DefaultDynClassName.class

If you are developing a gvSIG plugin but want to change the java API version to check against to (1.4, 1.6, etc.), just add the following to your pom.xml build/plugins configuration (replace java14 with your required version):

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>animal-sniffer-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>check-java-api</id>
            <phase>test</phase>
            <goals>
                <goal>check</goal>
            </goals>
            <configuration>
                <signature>
                    <groupId>org.codehaus.mojo.signature</groupId>
                    <artifactId>java14</artifactId>
                    <version>1.0</version>
                </signature>
            </configuration>
        </execution>
    </executions>
</plugin>
Posted in development, english, gvSIG Desktop, gvSIG Mobile | Leave a comment