
Si eres especialista en SIG es probable que te hayas dicho a ti mism@ en algún momento “debería aprender algo de programación SIG”. Seguramente lo primero que has pensado a continuación es algo así como “¡nah, eso no es para mi, demasiado esfuerzo!” o “¡qué pereza!”. Lo cierto es que en ambos casos tendrías algo de razón. Está claro que los perfiles profesionales que se demandan hoy en día incluyen en mayor o menor medida conocimientos de programación GIS. También es cierto que internarse en el oscuro y abstracto mundo de los lenguajes de programación no es moco de pavo, entraña su dificultad e implica realzar un esfuerzo en ocasiones importante. Pero a larga merece la pena y eso es en definitiva lo que cuenta.
Más allá de que este tipo de conocimiento os abra más puertas profesionales, os aseguro que incluso si ese no fuera el caso, la mejora y el beneficio personal es algo a tener muy en cuenta. Hace ya unos años que empecé a trabajar en estas cuestiones y, en mi opinión y experiencia, os aseguro que el mayor beneficio que he sacado de todo esto no es que me dedique a ello profesionalmente (que también) sino que mi manera de trabajar con SIG ha cambiado, siendo ahora mucho más eficiente que antes y en definitiva invirtiendo mucho menos tiempo en procesos que antes podían ser largos y tediosos.

¿Cómo empezar a formarse en programación con los SIG?
Ahora bien, ¿por donde empezamos? Bueno, hace unos años esta pregunta era mucho más difícil de responder. Ahora en cambio la cosa está clara. Si lo que quieres es programar en entorno SIG tu mejor alternativa de inicio es sin duda Python. Python es un lenguaje de programación interpretado orientado a objetos específicamente pensado y desarrollado para que su aprendizaje e implementación sea lo más sencillo posible. Precisamente por ese motivo la mayoría de aplicaciones SIG disponibles utilizan Python como lenguaje para scripting. GVSIG, QGIS o ArcGIS son los ejemplos más destacados. Entre estas tres alternativas la que puede resultar más apropiada para empezar en estas cuestiones es ArcGIS. ESRI ha desarrollado su propio módulo de programación, el famoso ArcPy. Esta es una muy buena alternativa fundamentalmente por dos motivos: ArcGIS es un software de uso muy extendido y un referente en el ámbito de los SIG, y ArcPy es probablemente la librería de funciones de geoproceso más sencilla de aprender. ArcPy incorpora muchas funciones y métodos que simplifican enormemente el acceso a la información en comparación a otras alternativas. Además se complementa muy bien con la aplicación Model Builder, que nos permite generar código Python/ArcPy a un clic de distancia. Podremos automatizar geoprocesos para datos masivos con bastante facilidad e incluso crear nuestras propias herramientas.
En resumen, si te has decidido a aprender programación para entorno SIG y no sabes por donde empezar o no eres muy ducho en estas lides, ArcPy puede ser tu mejor opción dentro de los muchos lenguajes de programación SIG. Y para muestra un botón de nuestro curso de ArcPython:
Descubre más en nuestro blog sobre Programación GIS o sobre nuestro curso de «Python para ArcGIS: Geoprocesos con ArcPy»
Pero para aprender programacion, no seria primero aprender a manejar bien una base de datos?
De acuerdo con lo que dices, es lo más lógico dado que empiezas a trabajar con código (SQL, etc) y gestionar las BBDDEE son un primer paso básico al respecto en la formación del especialista SIG. Ahora bien, el artículo está enfocado sobre los lenguajes de programación que te permiten crear plugins, rutinas, etc. Un buen técnico SIG debe trabajar diferentes lenguajes ya que existen entornos diferentes de programación, así tenemos los más corrientes como: Python, Javascript, PHP, CSS3, HTML5… Y entre ellos, el más «asequible» y con el cual podemos enfrentarnos a nuestros primeros pinitos, entendemos que Python se lleva el gato al agua.