KML 2.2 for gvSIG

Project Introduction

Nowadays, KML it’s an OGC standard vectorial format hardly used because it has the very known Google support. As far as now, gvSIG is using GPE “Geographic Markup Language Persistent Engine ” library. This library is based on the GML “Geographic Markup Language” Schema from OGC, the advantage is that GML structure contains KML, then GPE can also wrap the KML parsing process, thus the KML 2.1 OGC standard was implemented for GPE.

Now, the KML standard launched its 2.2 version, adding new feature support, and gvSIG-GPE haven’t have it implemented yet, overall when the most of the gvSIG users uses it with other GIS applications.

The Google Summer of Code was a good chance to propose the contribution to the community. Finally coming from China, by the recently graduate student Bin Ju, the contribution offering was taken, He found the idea in gsoc 2010 page of gvSIG website. He will develop advanced KML editor in GeoServer, which is also based on GeoTools, in his master degree thesis.

Developer Presentation

He has get a degree from the Institute of Geographic Sciences and Natural Resources Research, CAS.(Beijing , China) Master degree.

Project plan

Finish the project in 15 weeks.

Community bounding period(4 weeks):

In depth study of gvSIG, especially the plugin for KML 2.1 formats. The primary goal is to learn how to develop plugin for gvSIG and learn in details of KML2.2 specification.

  1. Study gvSIG-GPE API, Maven, and SubVersion. Prepare workspace
  2. KML 2.2 new Features Analysis and Design new features to add.

Period(8 weeks): Develop a prototype and make it works.

  1. Develop Source Code.
  2. gvSIG-GPE new KML 2.2 module integration.

Pencils down(3 weeks): write tests code, documentation and other things.

  1. gvSIG Tests
  2. Documents

Previous Programming Experience

GIS Experience

  • A homework project about travel palnning written in VB&MapObject in 2007.
  • An website based on MapGuide OS using php, javascript, css, html, kml and MySql in 2008
  • An website with the function produced by ArcIMS using Java, MySql, Tomcat, FileUpLoader, Log4j, JFreeChartin 2009.
  • An web mapping page with Google API(Maps, Search and Chart).
  • Design a touring website based on ArcGIS Server using M.S. visio and netbeans in 2009

Other Computer Experience

  • Simple programs written in C during a class in Yunnan University
  • A mine game which exactly the same as the one in windows, written in C and Windows API  in 2009
  • A stock market which can produce the curves dynamically, written in C++ and MFC in 2009.
  • A shotting game written in Java based on Java3D in 2009
  • Finish all the homework and two projects in MIT OCW 6.001 written in Python in 2009
  • Study Algorithms and Data Structure in college and restudy them through MIT and Berkeley OCW. Finish all the homework and most projects.

Bin Ju it’s  familiar in Java programming language and uDig is easily extended since it based on eclipse so can afford this develop without problems.

That develop pretends that KML will have full support in gvSIG.

All the contributions are welcome.

Cheers!

Posted in english, technical collaborations | Tagged | Leave a comment

CodeSprint en las Jornadas de gvSIG

Después del éxito del CodeSprint de gvSIG que se celebró hace algo más de un mes en el FOSS4G de Barcelona, la organización de las 6as Jornadas de gvSIG ha decidido organizar un CodeSprint en el que nos vamos a poder reunir algunos desarrolladores de gvSIG para poder discutir y solucionar algunos problemas de código.

La fecha propuesta para tal evento es el Martes 30 de Noviembre, un día antes de que empiecen las jornadas oficialmente. El Lugar será la sala Innova de la Ciudad Politécnica de la Innovación, situada en la Universidad Politécnica de Valencia. Cuando tengamos más detalles lo comunicaremos por este post o mediante las listas de correo.

La idea es que nos reunamos allí unos cuantos desarrolladores de gvSIG (cuanto más frikis mejor), cada uno con su portátil y con su latiguillo de red. Si no se es desarrollador pero se tiene alguna idea o simplemente se quiere aprender, también se puede asistir. Los propios asistentes decidiremos allí qué es lo que nos interesa, y en función de ello nos pondremos a trabajar todos juntos hasta que nos cansemos o hasta que nos echen :-).

Hemos creado una página donde poder ir añadiendo los bugs o las funcionalidades que la gente esté interesada en abordar. La página es de edición libre (haciendo un doble click), así que ya podéis ir añadiendo vuestras ideas.

Para apuntarse me tenéis que enviar un correo a jpiera [arroba] gvsig [punto] com con el asunto CodeSprint gvSIG (para facilitarme el trabajo). En el correo tenéis que añadir el nombre de los asistentes y el DNI (me lo han pedido para facilitar el tema de la red).

¡Nos vemos en Valencia!

Actualización: Nos ha faltado decir, porque es de bien nacidos el ser agradecidos, que el Code Sprint de las jornadas está patrocinado por el Instituto ai2 de la Universidad Politécnica de Valencia, ¡muchas gracias por apoyar esta actividad!

Posted in community, events, technical collaborations | Tagged , | 1 Comment

Curso SEXTANTE en las Jornadas gvSIG

Parece ser que  las Jornadas de este año van a tener un enfoque muy didáctico y se va a dedicar bastante tiempo a hacer talleres y actividades de formación. La organización me ha pedido que me encargue de un taller sobre SEXTANTE, y yo por supuesto he aceptado su propuesta y estaré allí intentando que los asistentes a mi taller salgan sabiendo utilizar SEXTANTE algo mejor y siendo capaces hacer análisis espaciales avanzados con el binomio gvSIG-SEXTANTE.

La idea del taller no es presentar SEXTANTE o sus capacidades, sino realmente formar en el uso del programa, así como en los conceptos de análisis espacial sobre los que se asienta SEXTANTE, sin los cuales es difícil hacer análisis rigurosos y sacar toda la potencia de los algoritmos que contiene.

El taller tendrá una duración de aproximadamente 3 horas, y no será necesario haber usado SEXTANTE previamente. Tampoco es necesario ser un usuario experto de gvSIG, ya que el uso que haremos de las funcionalidad de gvSIG es muy reducido y trivial en su mayoría.

Todo aquel interesado en asistir  deberá traer su propio ordenador portátil con una versión reciente de gvSIG que incorpore SEXTANTE.  Será necesario asimismo disponer de datos para trabajar. Usaremos un juego de datos libre disponible en la siguiente dirección Web (ir a la sección “Common GIS Formats” y descargar los distintos archivos):

http://www.grassbook.org/data_menu3rd.php

Veremos algunos ejemplos de análisis sobre esos datos, y a lo largo del taller emplearemos las distintas herramientas de SEXTANTE (caja de herramientas, proceso por lotes, modelizador, etc.) para facilitar todo el proceso. Como ya he comentado, no solo trataremos los algoritmos y elementos de SEXTANTE en sí, sino también algunas técnicas e ideas de análisis espacial que nos ayudarán a sacar un mayor partido de las capacidades de la librería.

Espero que el taller sea de interés para todos y podamos disfrutar de una sesión de trabajo productiva. ¡Nos vemos en diciembre!

Posted in events, spanish, training | Tagged , | 12 Comments

Onde há uma vontade …

Há exatamente um ano atrás eram realizadas, em Buenos Aires, Argentina, as Primeiras Jornadas Latinoamericanas e do Caribe (LAC) do gvSIG. Nós, da Embrapa Florestas e da Universidade Federal do Paraná, havíamos conhecido o software alguns meses antes, quando estávamos procurando alternativas aos programas proprietários que usávamos para nossas atividades em geoprocessamento. Ao ver o anúncio das Jornadas (e logo ali, relativamente perto para nós que vivemos no sul do Brasil!) já nos animamos a apresentar e relatar um pouco da nossa experiência como neófitos no tema. Nesse mesmo evento tivemos a oportunidade de conhecer o pessoal da Associação gvSIG e foi numa conversa informal, durante o café, que surgiu a ideia de fazer as LAC do ano seguinte, 2010, no Brasil, inclusive para conhecermos as dimensões de uma potencial comunidade de usuários e sabermos como estava distribuída no país.

Da ideia à vontade não foi mais que um passo e logo se uniram a nós outros colegas, também brasileiros, representando o Centro Internacional de Hidroinformática (CHI) e o Comitê da Bacia Hidrográfica do Ribeira de Iguape e Litoral Sul. Porém como as LAC de 2010 já estavam previstas para acontecer na Venezuela e como não queríamos deixar passar mais um ano até poder sediar as 3as. LAC (somente em 2011), nos foi sugerido que organizássemos as Jornadas Brasileiras, até como forma de preparação para um evento maior.

E a proposta começou a tomar corpo, primeiramente com a criação de um grupo coordenador para aglutinar ideias, aproximar pessoas e instituições e constituir um ponto de ligação entre a Associação gvSIG, na Espanha, e os usuários do programa no Brasil. Alguns meses e muitos emails depois, em abril de 2010, surgia oficialmente a Comunidade Brasileira de Usuários gvSIG. Ao mesmo tempo, usando a lista de discussão do projeto gvSIG e também a lista da Comunidade OSGeo-BR, fomos descobrindo quem já trabalhava com o software por aqui.

O passo seguinte foi começar a preparar as Jornadas Brasileiras, divulgando o evento e a recém-criada Comunidade através de uma lista de discussão em português bem como por um link na página oficial do gvSIG, estabelecidos especialmente para nós pelos profissionais da Associação gvSIG.

Enviar convites, elaborar fôlder e cartazes para divulgação, criar um lema e um logotipo para as Jornadas, pensar e estruturar um programa para o evento, encontrar um auditório apropriado, fazer a chamada para trabalhos voluntários, receber formulários de inscrição, convidar palestrantes, montar “pasta, etiqueta, bloco e crachá”, gravar e imprimir capas de DVDs e embalá-los, preparar e assinar certificados, analisar resumos e artigos, organizar reuniões técnicas e minicurso pré-jornadas, selecionar alguns hotéis BBB (bom, bonito e barato) em Curitiba, checar laptop, datashow, microfone e pilhas e (ufa!!) decidir o menu do coffee-break e escolher as flores para ornamentação da mesa de abertura, tudo isso fez parte de uma longa “jornada” que se acelerou nos meses de agosto e setembro desse ano.

Na semana que antecedeu o evento, a expectativa era grande e a primeira (de muitas) gratas surpresas foi o número de inscritos: 226 pessoas! Depois, pelas conversas ao longo dos três dias de evento, pudemos constatar que uma expressiva proporção dos assistentes não somente já conhecia o software como também o utilizava rotineiramente como ferramenta de trabalho em suas respectivas áreas de interesse.

Asistentes en coffee break - 1º Jornadas gvSIG Brasil

Dizer apenas que as 19 palestras, 8 seminários e 1 mesa-redonda – elementos da programação oficial das Jornadas – foram bastante interessantes, seria minimizar o esforço, a disposição e o empenho de todos aqueles que prepararam apresentações, nos transmitiram pensamentos e reflexões e, principalmente, compartilharam seus conhecimentos com tanta boa vontade e entusiasmo.

Minicurso sobre gvSIG Desktop - 1º Jornadas gvSIG Brasil

A plateia, então, não poderia ser mais eclética, quer seja pela multiplicidade do público envolvido (quase 100 instituições representadas, além dos profissionais autônomos), quer seja pelas nacionalidades presentes (gente do Brasil, da Espanha, da Venezuela, do Uruguai, da Argentina, de Moçambique e do Peru). Em função disso, no encerramento até comentei que saíamos dessas Jornadas com duas grandes certezas: a primeira era a de que nós, brasileiros, estávamos entendendo e “hablando” o espanhol muito melhor do que antes; e a segunda, era que a recíproca também era verdadeira, ou seja, nossos “hermanos” de língua castelhana também agora compreendiam o português com muito mais facilidade … rs … rs … rs …

Participación en ronda de preguntas - 1º Jornadas gvSIG Brasil

Brincadeiras à parte, sentimo-nos honrados por poder contar com a participação de tantas pessoas, que dispuseram do seu tempo de trabalho e de lazer para articular passagens, transporte, estadia; para deslocar-se cruzando um ou vários estados desse nosso Brasil e até mesmo oceanos (!), além dos trechos percorridos em suas regiões ou países de origem.

Dentre tantas discussões técnicas profícuas, tantos contatos profissionais, pessoais e institucionais estabelecidos e tantas informações e experiências trocadas, acredito que, nesse evento, nos marcaram de forma mais profunda:

  • a percepção – adquirida ao longo desses três dias – de que o software, em si, é uma parte importante, sim, do projeto gvSIG, mas o projeto vai muito além. Prova disso é que nas Jornadas não se discutiram apenas aplicações e casos de sucesso, mas nos foi mostrado o que está por trás do gvSIG e o que o sustenta: o fato de existir uma comunidade de usuários que quer interagir, melhorar o software, compartilhar conhecimentos e buscar soluções;
  • a constatação de que “onde há uma vontade, há um caminho”, mesmo que não se saiba muito bem por onde ele vai passar. Ainda acho surpreendente e muito gratificante que o simples fato de querer realizar as Jornadas tenha possibilitado que outras pessoas e instituições se sentissem igualmente motivadas, de forma a nos apoiar de inúmeras maneiras e meios, viabilizando um evento de qualidade técnica, pensado, construído e organizado a muitas mãos, de forma totalmente colaborativa, sem qualquer aporte financeiro direto relativo a taxas de inscrição, vendas de stands ou espaços publicitários.
  • a sempre renovada (embora tão antiga) descoberta de que aproveitamos toda e qualquer oportunidade que nos permita fazer aquilo que mais gostamos e que parece ser o destino imutável da nossa privilegiada condição enquanto seres humanos: ter ideias, pois são elas, as ideias, distribuídas por todos os campos do conhecimento, que nos movem, nos animam, nos mantem vivos e nos fazem querer melhorar o mundo, tanto para nós, que estamos aqui hoje, como para aqueles que continuarão a jornada depois de nós ….
Posted in community, events, portuguese | 2 Comments

Social media on gvSIG

I’ve used twitter and facebook for a while more or less mixing personal and professional stuff because, well, I don’t want to deal with «where to write things», I have enough with all blogs I write for. Some time ago I created a gvSIG account for twitter and identi.ca and later a facebook fan page. The most succesful one by far is twitter with almost 200 followers.

I tried to reproduce the way I work with my own accounts (also with Prodevelop stuff) obviously with the reasonable differences that «official» media requires. Propagating the information gvSIG produces over those services is a challenge, you have to try to not annoy people with not interesting posts but also showing as much as you can the amazing work all the gvSIG team does everyday.

Next image shows the several information sources. We’re using now dlvr.it as a central way to spread the data in two configurations: one for the main sources  (black arrows) and another one to post the microblogging posts that me and others write on gvSIG twitter account (blue arrows).

There are several sources: we mainly use http://www.gvsig.org (Plone powered) as our central repository of documentation, translation and collaboration.  We are using also Plone for the gvSIG Association portal. Nabble is one of the archiving services, probably the most popular one. Lastly the newcomers are this blog, hosted on wordpress.com and the new kid on the block is the recently announced gvSIG Case Studies website, at Drupal Gardens hosting service. Those last two sources are deployed at external services but as they are built on open source software (WordPress and Drupal) so we have the possibility of moving them to a hosted version if we have any problem. This approach relaxes our IT team efforts (as they have a lot of work with our main Plone instance).

A lot of people say that this is Community Management stuff, so am I the gvSIG community manager? No. This is NOT community management, this is just information piping and some (micro)bloggae. Victoria Agazzi is our Community Manager and her work is by far more difficult than that. She is responsible of engage and help to build real new communities for the gvSIG project as she explained some time ago

So well, in my opinion, this (a little bit egocentric) work helps to spread the word about what all the gvSIG team is trying to do: create a solid community of users and developers around the world.

Posted in community, english, opinion, press office | Tagged , , , , , , , | 1 Comment

gvSIG-CodeSprint en el FOSS4G2010

El pasado viernes 10 de Septiembre, tras la celebración del FOSS4G2010 en Barcelona,  tuvo lugar una jornada de CodeSprint en el Citilab de Cornellá. Las instalaciones eran confortables, había conexión a Internet, comida, refrescos, tomas de electricidad, pizarras e incluso la organización proporcionó buses hasta el recinto. Un post-congreso fantántico; felicitar a Lorenzo Becchi y al resto de responsables por todo.

El proyecto gvSIG contó con un pequeño grupo de trabajo allí. El encuentro tuvo origen a través de la lista de correo internacional de gvSIG y el pequeño grupo de asistentes estuvo formado por Jorge Piera, Andrés Maneiro y por mí. El ambiente de trabajo fue muy agradable, dinámico y productivo. Se empezó charlando sobre cómo organizaríamos la sesión de trabajo y Andrés presentó una serie de cuestiones, sugerencias, etc. realizadas por integrantes de CartoLab. Éstas se centraron en hacer mejoras en el ToC (Table of Contents) y  tras analizar las propuestas Jorge Piera asignó tareas y nos pusimos a trabajar.

gvSIG codesprint attendants at #foss4g

Fruto de esas horas juntos, además de aprender más sobre los entresijos de gvSIG y aprender trucos sobre el manejo de eclipse directamente de un core developer del proyecto, se podrían destacar varios objetivos alcanzados:

  1. Trasladar algunos aspectos sobre gvSIG relacionados con un uso avanzado de los SIG. A veces notificar ese tipo de cosas en el BugTracker o en las listas de correo es muy difícil
  2. Mejorar el comportamiento del ToC en cuando a despliegue y colapso de agrupaciones (enlace al bug en la forja OSOR aquí)
  3. Insertar una guía visual cuando se altera el orden de las capas con el ratón
  4. Se ha avanzado en una funcionalidad para la copia de “estilos” entre capas vectoriales.
  5. Reflexionar sobre la simbología vectorial y raster en gvSIG

Algunos de estos trabajos se verán reflejados en la siguiente release de gvSIG, otros quizás se materialicen en una extensión no oficial o en gvSIG 2.0.

La experiencia creo que ha sido muy positiva y muy estimulante. Este tipo de eventos creo que dan vitalidad al proyecto, fortalece la relación entre el núcleo de gvSIG, otros desarrolladores y usuarios y la fomenta la colaboración ordenada. Personalmente estoy deseando poder asistir a otro gvSIG-CodeSprint… ¿quizá en las VI Jornadas Internacionales de gvSIG?

Posted in community, development, GUI, gvSIG Desktop, spanish, technical collaborations | Tagged , | 5 Comments

Ya tenemos el Titular: ‘ArcGIS is Open’

En el pasado FOSS4G celebrado en Barcelona, evento gestionado por OSGeo, nos encontramos entre las ponencias estrellas celebradas en plenario a una presentación realizada por ESRI.

Sí, la ‘F’ de FOSS4G es de Free y la ponencia estrella la dictaba ESRI, no en vano llevaba como título ‘ArcGIS is Open’. No voy a entrar en el contenido de lo que expusieron ni en el debate de redefinir el concepto ‘Open’. Además mucha gente ya lanzó sus críticas por el canal twitter del evento.

Lo que sí que voy a decir es que ESRI ya tiene un nuevo titular donde aparece como actor relevante en el mundo de la Geomática Libre bajo el eslogan de que “ArcGIS is Open”, y esto es algo que no nos ayuda para nada a los que intentamos promover la masificación de las tecnologías libres en los ámbitos profesionales.

Tanto ESRI como Autodesk son de las compañías que de manera sistemática se han dedicado a realizar técnicas FUD contra el Software Libre. Son compañías que han estado poniendo de manera permanente en duda el valor del Software Libre en los ambientes profesionales, y es ahora cuando llega el momento donde en el campo Geo conseguimos que empiecen a verse las soluciones libres como una solución real les regalamos ese titular. Debemos tener claro que los que toman las decisiones no están conectados al canal del twitter. Lo que van a recibir los que toman decisiones es que ESRI también está en campo de la Geomática Libre, cómo sino iba a ser el invitado estrella en el evento de Geomática Libre por excelencia, el FOSS4G, y por supuesto, para esto cuentan con un poderoso aparato de marketing y opinión.

Me preocupa que la evolución del mercado del Software libre en nuestro campo vaya asociada a la toma de posiciones de ESRI, Autodesk y Google. En mi opinión, ESRI es el monopolio por referencia del mundo Geo, Autodesk son los del DWG o lo que es lo mismo, los que someten a parte del mercado a través de unas especificaciones de formato cerradas y Google con proyectos como el Mapmaker son los que quieren monopolizar la cartografía existente en el planeta.

Y lo que más me preocupa es que se den por sentadas varias decisiones y afirmaciones en el seno de OSGeo o al menos de su dirección en asuntos que considero tan trascendentes como éste.

Hecho en falta un debate al respecto de las Comunidades OSGeo antes de decidir si a partir de ahora vamos a invitar a que el liderazgo de la Geomática Libre lo lleven las grandes corporaciones del Software Privativo.

Posted in opinion, spanish | Tagged , , | 46 Comments

Some new gvSIG mobile and mini videos

My colleagues at Prodevelop have published at our YouTube channel some interesting videos I want to share. The first one is a «code swarm» showing the gvSIG Mobile SVN repository activity on a very cool way. The other two are short videos about gvSIG mini new features like multi-touch support and automatic map download.

Someday I’ll try to produce the code swarm of gvSIG Desktop SVN but it will be a very different beast to deal with…

Posted in gvSIG Mobile | Tagged , | 4 Comments

Back from Latin American and Caribbean gvSIG conference

Last week part of the gvSIG Team attended the Second Latin American and Caribbean gvSIG Conference. It has held in Caracas, Venezuela at Alba Caracas Hotel, organized by the National Information and Technology Centre (CNTI) and the Geographical Institute of Venezuela Simón Bolívar (IGVSB).

First two days there were a pre-conference workshops about gvSIG and SDIs, Vector  features, 3D and Raster features and finally about gvSIG 2.0 development. I’m happy to say that the conference was a complete success, mainly because the organization was amazing. If you’ve managed a +700 people conference along 3 days you can imagine the huge effort is needed to assure that everything works smooth and they did it.

Registration desk

There were some demos and presentations from the gvSIG Team but the conference was mainly run by use cases, some projects developed with gvSIG and so on. I presented the OSGeo Spanish Language Local Chapter with Francisco Palm (Venezuela) and also I had the chance to present OpenStreetMap Project with César Medina (Chile). This presentation was not prepared but as one of the planned presentations failed, well, I was invited to present OSM and the opportunities this project has in South America.

Presenting OSM project

Presenting OSM project

Besides the conference we were able also to do some kind of tourism visiting CatiaTve, a complete community-driven television channel and the 23 de enero community, it’s a suburb of Caracas were they are organizing themselves to try to be as much independent as they can, they have for example their own fish farm and a quite successful radio channel (Radio Arsenal).

At CatiaTve transmission facilities

At CatiaTve transmission facilities

Free Software has so many opportunities to be applied in geomatic arena that it represents a real alternative to privative solutions. This maybe sounds obvious on this blog or this context but trying to convince of that topic public administrations and private companies is a huge effort. In my opinion we (not just the gvSIG Team but all the Conference presenters) did a good job showcasing the gvSIG and FOSS4G software to the Venezuelan and other Latin American people, let’s see if we have more and more use cases of succesful projects there.

Some gvSIG people with organization team and friends

Posted in community, english, events, opinion | Tagged , | Leave a comment

Círculos viciosos

Recuerdo que fue en las 3as Jornadas de gvSIG cuando finalizando una mesa redonda titulada “Software Libre y Universidad”, uno de los participantes del público que se presentó como profesor universitario lanzó una pregunta del tipo: ¿Por qué tengo que usar yo software libre si a mi me dan el software gratis?

Unos meses después en las II Jornadas SIG Libre de Girona hubo otra mesa redonda “Software libre y Proyectos de Cooperación”. Lorenzo Becchi, en papel de consultor de FAO comentó la importancia de usar software libre en este tipo de proyectos y como, en muchos casos, se utilizaba software privativo pirateado con lo que una de las enseñanzas inherentes al proyecto era la de robar. Una chica (disculparme pero no recuerdo el nombre) que participaba como representante de Ingeniera Sin Fronteras apuntó que gran parte del problema es que los ingenieros no conocían más que las herramientas privativas, que en la universidad nunca les habían formado en software libre. Y como es totalmente lógico, en proyectos de cooperación con tiempos limitados para aportar soluciones, no había tiempo para adquirir esa formación.

La Universidad forma a los trabajadores del futuro, en muchos casos en niveles de decisión relevantes en los más diversos sectores. Los universitarios de hoy serán, sin duda, decisivos en el rumbo del mañana. La Universidad, pues, tiene una gran responsabilidad en las herramientas de software que utiliza. La decisión de propagar dependencia tecnológica entre sus alumnos no es un asunto baladí, sino que tiene consecuencias de todo tipo en la sociedad que estamos construyendo.

Dos mesas redondas, dos jornadas, con una pregunta y respuesta enlazadas. O como cantaba Sabina en los años de La Mandrágora…círculos viciosos.

Posted in opinion, spanish | 7 Comments