News aggregator

Fernando Quadro: O Futuro no Passado

OSGeo Planet - 6 hours 6 min ago

Na última semana tivemos o 1º gvSIG Festival que contou com diversas palestras online sobre geotecnologias com ênfase no uso do gvSIG.

Eu gostaria de ressaltar a palestra da Maíra Rosin do grupo HIMACO, que traz um tema muito interessando intitulado “O Futuro no Passado: o uso das geotecnologias aplicadas às pesquisas históricas”, onde ela fala como historiadores tem utilizado o gvSIG para facilitar o seu trabalho.

A palestra é curta (20 min) mas vale muito a pena ver:

As demais palestras do evento podem ser assistidas acessando o Canal EdugvSIG no YouTube.

Fonte: Blog do gvSIG

Posts RelacionadosZemanta
Categories: OSGeo Planet

gvSIG Team: Software libre o la Modernidad frente a la Edad Media

OSGeo Planet - 7 hours 6 min ago

001

Hagamos el ejercicio de viajar al pasado e intentar, por otro lado, sustituir el concepto de conocimiento medieval por el conocimiento aplicado a la informática o, si quieren, al de la geomática que es la ciencia de la que se ocupa este blog.

Durante la Edad Media, el conocimiento estuvo restringido a muy pocas personas, entre otras razones, porque los monjes copistas eran los únicos que tenían el saber y la posibilidad material para transcribir a mano, uno por uno, los textos antiguos.

Algunos monasterios cristianos se dedicaron a atesorar el conocimiento, siendo además las autoridades eclesiásticas las que decidían qué textos y qué ideas podían circular y difundirse y cuáles, no. Algo que de forma magistral se cuenta en El nombre de la rosa, como bien se muestra en este fragmento de su adaptación cinematográfica:

En la Edad Media de la informática, el acceso al conocimiento está restringido a muy pocas personas, entre otras razones, porque unas pocas empresas de software privativo son las únicas que tienen el saber y la posibilidad material de acceder y modificar el código fuente de las aplicaciones.

Algunas empresas transnacionales se dedican a atesorar el conocimiento, siendo además y en función de sus intereses mercantiles las que deciden la evolución de dichas tecnologías y que avances pueden circular y cuáles no.

La Modernidad surge en el siglo XV después que se provocaran cambios emblemáticos a nivel mundial como el desarrollo de la imprenta, el Renacimiento y la Revolución Científica. Cambios relacionados directamente con en manos de quién estaba el conocimiento.

Gracias a la imprenta los intelectuales europeos contaron con un instrumento más eficaz para reproducir y difundir a los escritores y pensadores de la Antigüedad clásica (Homero, Platón, Aristóteles, Virgilio, Cicerón,…) y, también, sus propias obras. De este modo, la imprenta inventada por Johannes Gutenberg permitió la circulación de las nuevas ideas

S.XXI. El inicio de la Modernidad de la informática, por tanto, debe ser provocado por la irrupción de corrientes que permitan romper con un modelo basado en la especulación con el conocimiento. La imprenta de la tecnología se denomina software libre. Sólo mediante el software libre podremos reproducir y difundir aplicaciones informáticas sin ninguna restricción. Sólo el software libre permite la libre circulación del software…

La argumentación es difícilmente rebatible, pero igual que la consolidación de la Modernidad no fue de un día para otro, la Edad Media de la informática sigue predominando en la actualidad.

Esto es debido, en gran parte, porque la Política sigue despreciando la importancia del acceso al conocimiento en el mundo de las tecnologías y gastando el dinero público en adquisición de licencias que impiden dar los pasos definitivos para alcanzar la Modernidad.

Y así seguimos anclados en los viejos modelos, en las viejas ideas, frenando el avance científico, cuando como dijo Galileo, Eppur Si Muove.


Filed under: opinion Tagged: software libre, software privativo
Categories: OSGeo Planet

QGIS Blog: Licensing requirements for QGIS plugins

OSGeo Planet - Sun, 2016-05-29 08:09

One thing we have been encountering lately in the QGIS project is plugin authors not understanding the licensing requirements for publishing their QGIS plugins. In this article I will try to clarify this a little:

QGIS is Open Source Software and provides a great platform for third parties to distribute additional functionality to users through our plugin system. QGIS is licensed under the GPL version 2 or greater. This license is provided with every copy of the QGIS and in the source code and is available on our web site here:

http://docs.qgis.org/2.0/en/docs/user_manual/appendices/appendices.html

Under the terms of this license, it is a requirement that all plugins distributed via http://plugins.qgis.org (or through other repositories that may be self-hosted) should comply with the GPL version 2 or greater license. In particular all code included in any plugin should be made clearly and easily available in source form. It has come to our attention that some plugin authors are distributing plugins that do not comply with this condition.

We ask you to consider the fact that many thousands of hours of work and large amounts of financial outlay from individuals and companies has gone into the creation of QGIS. This work is done under the basis that in-kind contributions raise the quality and capabilities of the platform for everyone. When you create a plugin, you only need to spend a minimal amount of effort to solve your specific requirements because we have done the rest of the work needed to provide an entire platform for you and our community of users.

By publishing the source code for your plugin, others may inspect the underlying code of your plugin and learn from it and use that knowledge to further improve the platform. Not releasing your source code breaks this model. Besides being a contravention of the licensing conditions under which you received the QGIS software, withholding your source code does not advance the body shared knowledge, and does not embrace the spirit of sharing that has made the QGIS project such a success to date.

Thus if you are a plugin author who is distributing your plugin without the accompanying source code, you need to be aware that the source code needs to be made available to each person who receives the binary sources for your plugin.

One query that plugin authors have raised is whether the requirement to publish the sources of their plugin precludes their ability to sell or otherwise commercially benefit from their plugin work. This is not the case – you can sell you plugin as long as you make  the sources of your plugin available to each purchaser.

Should you have any queries about how to better collaborate within the QGIS community we are available to you – please direct your queries to info@qgis.org


Categories: OSGeo Planet

gvSIG Team: De Aaron Swartz al acceso al libre conocimiento científico

OSGeo Planet - Sat, 2016-05-28 15:09

001

En Europa estamos de enhorabuena.Los ministros de Competitividad de la Unión Europea (UE) dieron hoy su apoyo a que todos los artículos europeos financiados con fondos públicos o público-privados sean accesibles de forma gratuita para 2020. De este modo, los estados miembros de la Unión Europea quieren asegurarse que el conocimiento generado por nuestros científicos pueda ser reaprovechado. Se propone que los científicos europeos no deberían ser juzgados por el número de publicaciones que producen sino por el impacto social de su trabajo.

Lo primero que me ha venido a la cabeza al leer la noticia es el enorme beneficio económico que ligado al avance científico esta medida puede suponer.

Si los ciudadanos invertimos una parte de nuestros impuestos en formar a técnicos y científicos, a intelectuales, sería estúpido que el fruto de su trabajo no estuviera disponible para sus financiadores, para la sociedad. En ninguna cabeza cabría ocultar el conocimiento generado por nuestros científicos al resto de nuestros científicos y, de este modo, frenar el propio avance natural de la ciencia, basada en la suma de esfuerzos. Algo que resume perfectamente la famosa cita de Isaac Newton “Si he logrado ver más lejos, ha sido porque he subido a hombros de gigantes”.

Nos felicitamos y, por otro lado, debemos pensar en el largo camino que aún queda por recorrer. Pensemos en la cantidad de dinero (millones y millones de euros) que gastan nuestras administraciones públicas en software privativo. Conocimiento tecnológico al que no tenemos acceso. Imaginad el crecimiento tecnológico que provocaría una medida como la anunciada aplicada al mundo del software. Esperemos que llegue el momento en que podamos anunciar que definitivamente la Unión Europea apuesta por el software libre, por dejar de gastar en licencias para invertir en conocimiento. Que el conocimiento científico, también a nivel de software, pueda ser reaprovechado.

Es un buen momento para recordar al tristemente fallecido Aaron Swartz. Si hoy podemos felicitarnos por la noticia anunciada es gracias a personas como Aaron, que decidieron enfrentarse a la lógica perversa de que el conocimiento no debe ser de libre acceso.

Fuente: http://english.eu2016.nl/latest/news/2016/05/27/all-european-scientific-articles-to-be-freely-accessible-by-2020


Filed under: opinion, spanish
Categories: OSGeo Planet

gvSIG Team: gvSIG Festival: Fifth Day [Videos]

OSGeo Planet - Fri, 2016-05-27 19:50

Monitoring Global Urban Expansion: Assessing the quality of urban layouts (English) [Manuel Madrid. gvSIG Association]

ONG2.0 formación en gvSig e ICT4D para proyectos de cooperación internacional (Spanish) [Valeria Sanguineti, Giuliano Ramat. ONG2.0]

See you next gvSIG Festival!!


Filed under: english, events, gvSIG Desktop, spanish Tagged: webinars
Categories: OSGeo Planet

Jackie Ng: Announcing: MapGuide Open Source 3.1 Beta 1

OSGeo Planet - Fri, 2016-05-27 13:49
After several months of messing with vagrant for a more streamlined build pipeline and clearing some last-minute roadblocks, I am happy to finally announce the availability of the 1st beta release of MapGuide Open Source 3.1.

In terms of new features, well ... 3.1 can mostly be considered a "bugfix" release. The major features I had hoped to get implemented before this release cycle did not materialize in time, so I'll spare you the usual showcase series of blog posts every time we do a new major release, because you can fit it all in this one post.

New Layer Definition Cache

When MapGuide renders maps, we have to fetch Layer Definition documents from the repository to know how to render and style feature data. Until now, those documents aren't being cached, so we have to fetch the same Layer Definition documents over and over every time MapGuide renders a map image.

3.1 introduces a new server-side Layer Definition cache so we can avoid repeated fetching of Layer Definitions from the repository (and converting the XML to its object-oriented form) every time we render maps. For maps with a very large layer count, some noticeable gains in rendering performance should be noticeable.

Updated Web Tier Components

MapGuide Open Source 3.1 Beta 1 includes the following updated Web Tier components.

  • Apache HTTPD 2.4.18
  • PHP 5.5.33
  • Tomcat 7.0.68

Linux support

The Ubuntu build of MapGuide Open Source 3.1 Beta 1 now supports Ubuntu 14.04 LTS.

The Linux builds in general have a new and improved service control script for:

  • Restarting the mgserver daemon
  • Checking the running status of the mgserver daemon
  • Extra warnings when attempting to start an already started mgserver daemon or stopping an already stopped mgserver daemon
Many thanks to Gabriele Monfardini for providing this new service control script.
Like 3.0, the 64-bit Linux builds should still be considered experimental/preview for 3.1 and should still only be used for testing and feedback. Use in production at your own risk.

Fusion

Fusion has some important and long overdue fixes for Google Maps support and various widgets


For more information, consult the release notes in the link below.

Download
Categories: OSGeo Planet

Jackie Ng: 400 posts!

OSGeo Planet - Fri, 2016-05-27 13:24
... about the release of MapGuide Open Source 3.1 Beta 1?

Nah, we'll save that one for the post after this one.

For this is the 400th published post on this blog!




This year has slowed down a bit in blog-age, but as I've mentioned previously, it's not due to lack of content. Like a CPU at 100% usage, I've been busy with stuff. But that should be hopefully fleeting and I'll be resuming normal blogging operations soon.

Thank you all for your continued eyeball patronage.
Categories: OSGeo Planet

Le blog de Geomatys: Geomatys fait évoluer son image et vous propose des nouveautés.

OSGeo Planet - Fri, 2016-05-27 07:25
Après plusieurs mois de travail, la nouvelle identité visuelle de Geomatys est enfin exposée. Un nouveau logo, un hexagone tricolore remplace la fleur géomaticienne. Ce nouveau logo représente la valeur ajoutée que Geomatys insuffle à chaque projet, le “+ “ qui fait la différence, l’expertise de Geomatys dans le domaine du géospatial.     Et […]
Categories: OSGeo Planet

gvSIG Team: gvSIG Festival: Fourth Day [Videos]

OSGeo Planet - Thu, 2016-05-26 18:50

Evaluating temporal changes to water bodies in Medak India (English) [Gowtham Gollapalli.KAIINOS]

New tools for LiDAR, forestry, river management and hydro-geomorphology with jGrassTools in gvSIG (English) [Andrea Antonello and Silvia Franceschi. HydroloGIS. gvSIG Association]

Introduction to gvSIG (Turkish) [Yalçin. Univ.Estambul]

Geoprocesamiento con gvSIG (Spanish) [Gustavo Agüero. Consultores AA]

Novedades gvSIG 2.3: ¿En qué estamos trabajando? (Spanish) [Alvaro Anguix. Asociación gvSIG]

Programa de Caminería Rural en Uruguay con gvSIG (Spanish) [Sergio Acosta.MTOP]

And tomorrow we will finish with…

12:00-13:00

Monitoring Global Urban Expansion: Assessing the quality of urban layouts (English) [Manuel Madrid. gvSIG Association]

13:00-14:00

ONG2.0 formación en gvSig e ICT4D para proyectos de cooperación internacional (Spanish) [Valeria Sanguineti, Giuliano Ramat. ONG2.0]

* Madrid Time. Click on the time of every webinar to check it in your city.

** Registration is available clicking on the title of every webinar.


Filed under: english, events, gvSIG Desktop, spanish, Turkish Tagged: webinars
Categories: OSGeo Planet

Nathan Woodrow: Speeding up QGIS build times with Ninja

OSGeo Planet - Thu, 2016-05-26 11:25

As a developer, feedback is important when you are working.  The quicker you have the feedback the quicker you can fix the issues.  This doesn’t just apply to feedback from users/clients but also from your tooling.

Finding a new tool that increases my productivity is one of the best feelings, and this is one of those cases.   I was told about using Ninja for building instead Make, Visual Studio, Jom (Qt Build Tool).

If you are not a developer and don’t know what those tools are, they are what we use to build and compile all the code in QGIS.  If this step is slow the feedback loop is slow and it becomes annoying.  Improving this feedback loop greatly increases your workflow and happiness, and by happiness I really do mean that.

Ninja is one of these tools that did this. It’s optimized to be fast.  It does very little work in order to be faster any time it can.  Ninja was built by a developer on the Google Chrome team in order to improve their build times (read the history here)

Building QGIS with Ninja is super easy:

Install Ninja from package manager or using the ninja.exe (the whole tool is a single exe) if you are on windows

cd qgis-src mkdir ninja-build cd ninja-build ccmake -GNinja .. ninja

Done

You can build just the targets you need using

ninja qgis ninja pycore

etc

The ccmake setup generates the ninja.build file that ninja uses. Myself and Matthias Kuhn have already patched our QGIS cmake files to handle any odd things that got generated – only a handful of things which was nice

The best thing I find about Ninja is how smart it is on knowing if it needs to build something or not, and this is the point that I find other tools fail on. They spend ages wasting time looking for what to do. Ninja knows it in a instant.

When running Ninja with no code changes I get this (on Windows):

21:18:54: Running steps for project qgis2.15.0... 21:18:54: Starting: "C:\QtCreator\bin\ninja.exe" qgis ninja: no work to do. 21:18:54: The process "C:\QtCreator\bin\ninja.exe" exited normally. 21:18:54: Elapsed time: 00:00.

Not even a second. If I did the same with VS or JOM I could have written this post before it finished working out what to do.

Here is what happens changing a single file:

21:19:48: Running steps for project qgis2.15.0... 21:19:48: Starting: "C:\QtCreator\bin\ninja.exe" qgis [1/6] Building CXX object src\core\CMakeFiles\qgis_core.dir\raster\qgshillshaderenderer.cpp.obj [2/6] Linking CXX shared library output\bin\qgis_core.dll 21:19:51: The process "C:\QtCreator\bin\ninja.exe" exited normally. 21:19:51: Elapsed time: 00:03.

It’s super impressive. Even a cold build on Windows is shorter now. On Linux it’s even faster due to faster disk access in Linux vs Windows

If you build QGIS form source I would highly recommend giving it a crack because I know you will love it.


Filed under: Open Source, qgis
Categories: OSGeo Planet

gvSIG Team: gvSIG Festival: Third Day [Videos]

OSGeo Planet - Wed, 2016-05-25 16:52

Scripting in gvSIG (English) [Óscar Martínez. gvSIG Association]

gvSIG Roads: gestión de la conservación e inventario de carreteras con software libre (Spanish) [Ricardo Rueda.DiSiD. gvSIG Association]

GIS tools for water supply systems: an implementation using Epanet and gvSIG (English) [Silvia Franceschi. HydroloGIS. gvSIG Association]

gvSIG Online: IDE para la Secretaría de Turismo de México (Spanish) [Juan José del Toro. GeoAlternativa]

Delimitación de Microcuencas hidrográficas con gvSIG (Spanish) [Roxana Sánchez. (Parque Tecnológico Itaipú-Paraguay)]

Sistema de Información Geografico Para Catrastro Municipal con Software Libre (Spanish) [Marino Carhuapoma. IdeasG]

And tomorrow…

11:00-12:00

Evaluating temporal changes to water bodies in Medak India (English) [Gowtham Gollapalli.KAIINOS]

12:00-13:00

New tools for LiDAR, forestry, river management and hydro-geomorphology with jGrassTools in gvSIG (English) [Andrea Antonello and Silvia Franceschi. HydroloGIS. gvSIG Association]

13:00-14:00

Introduction to gvSIG (Turkish) [Yalçin. Univ.Estambul]

16:00-17:00

Geoprocesamiento con gvSIG (Spanish) [Gustavo Agüero. Consultores AA]

17:00-18:00

Novedades gvSIG 2.3: ¿En qué estamos trabajando? (Spanish) [Alvaro Anguix. Asociación gvSIG]

18:00-19:00

Programa de Caminería Rural en Uruguay con gvSIG (Spanish) [Sergio Acosta.MTOP]


Filed under: english, events, gvSIG Desktop, spanish, Turkish Tagged: webinars
Categories: OSGeo Planet

Jackie Ng: MapGuide Open Source 3.1 pre-flight check part 3 (a wild roadblock appeared!)

OSGeo Planet - Wed, 2016-05-25 15:16
Stop the presses. We ran into a blocker!

A particular nasty one, that affects not just MapGuide on CentOS, but on Ubuntu as well.

Something slipped into MapGuide or the WMS FDO provider that causes mgserver to segfault when one does a GETFEATUREPROVIDERS request and a WFS/WMS FDO connection is created when inspecting its capabilities. Previously, I thought it was a quirk with the internal FDO source copy of OpenSSL and so FDO was built using the system-installed copy of OpenSSL (like we did for Ubuntu), but this problem still persisted on CentOS, and it turned out it was also segfaulting on Ubuntu as well!

Running this under gdb didn't help us at all. It only shows that the SIGSEGV happens at a function named ?? in libWMSProvider.so on CentOS, and at a function named _init in libWMSProvider.so on Ubuntu. Not very helpful.

Even the venerable valgrind couldn't help me here. Putting mgserver under valgrind and triggering the segfault gives me this incomprehensible gibberish

==11521== Thread 13:
==11521== Jump to the invalid address stated on the next line
==11521==    at 0x6E8A6: ???
==11521==    by 0x4275D9F: FdoConnectionManager::CreateConnection(wchar_t const*) (ConnectionManager.cpp:334)
==11521==    by 0x4BBB543: MgServerGetFeatureProviders::AddConnectionProperties(xercesc_3_1::DOMElement*, wchar_t const*) (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4BBADD3: MgServerGetFeatureProviders::CreateFeatureProvidersDocument() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4BB9E23: MgServerGetFeatureProviders::GetFeatureProviders() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B67285: MgServerFeatureService::GetFeatureProviders() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B303A4: MgOpGetFeatureProviders::Execute() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B19AE6: MgFeatureServiceHandler::ProcessOperation() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x809768A: MgOperationThread::ProcessOperation(MgServerStreamData*) (OperationThread.cpp:397)
==11521==    by 0x8095C1B: MgOperationThread::ProcessMessage(ACE_Message_Block*) (OperationThread.cpp:226)
==11521==    by 0x8094536: MgOperationThread::svc() (OperationThread.cpp:90)
==11521==    by 0x623521B: ACE_Task_Base::svc_run(void*) (in /usr/local/mapguideopensource-3.1.0/lib/libACE.so)
==11521==  Address 0x6e8a6 is not stack'd, malloc'd or (recently) free'd
==11521== 
==11521== 
==11521== Process terminating with default action of signal 11 (SIGSEGV)
==11521==  Bad permissions for mapped region at address 0x6E8A6
==11521==    at 0x6E8A6: ???
==11521==    by 0x4275D9F: FdoConnectionManager::CreateConnection(wchar_t const*) (ConnectionManager.cpp:334)
==11521==    by 0x4BBB543: MgServerGetFeatureProviders::AddConnectionProperties(xercesc_3_1::DOMElement*, wchar_t const*) (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4BBADD3: MgServerGetFeatureProviders::CreateFeatureProvidersDocument() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4BB9E23: MgServerGetFeatureProviders::GetFeatureProviders() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B67285: MgServerFeatureService::GetFeatureProviders() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B303A4: MgOpGetFeatureProviders::Execute() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x4B19AE6: MgFeatureServiceHandler::ProcessOperation() (in /usr/local/mapguideopensource-3.1.0/server/lib/libMgServerFeatureService-3.1.0.so)
==11521==    by 0x809768A: MgOperationThread::ProcessOperation(MgServerStreamData*) (OperationThread.cpp:397)
==11521==    by 0x8095C1B: MgOperationThread::ProcessMessage(ACE_Message_Block*) (OperationThread.cpp:226)
==11521==    by 0x8094536: MgOperationThread::svc() (OperationThread.cpp:90)

==11521==    by 0x623521B: ACE_Task_Base::svc_run(void*) (in /usr/local/mapguideopensource-3.1.0/lib/libACE.so)

I admit to not being an expert-level C++ developer, so when I can't find the usual cases for a SIGSEGV (eg. A null pointer de-reference) in gdb/valgrind output, I am often left scratching my head. Google searches on these error messages weren't of much help.

The good thing was that this problem only happens on FDO since 4.0 was branched and released (we're targeting FDO 4.1 here) so in the absence of expert-level C++ knowledge it was time to be systematic and track down the offending FDO revision since 4.0 branched that introduced this breakage. Time to apply that binary search again! After several wasted days of trial and error compilation/testing, we found the offending revision.

At face value, this commit looks innocuous enough, a few new files and some modifications. Nothing in the new and modified files that sounds like dangerous C++ code to my padawan-tier knowledge.


But looking at the overall list of files, something caught my eye. In this commit was a project file update, but it was only for windows (the modified WMSProvider.vcxproj file). Normally if new files are to be added, not only should the windows vcxproj file be updated as well (to include the new .h and .cpp files), but the corresponding Makefile.am files for Linux as well, and this was conspicuously absent.

This lit a light-bulb in my head, I had a look at the Makefile.am file for the WMS provider and lo-and-behold, it didn't have the new .cpp and .h files in this commit. Then it all came together.

The WMS provider was segfaulting because it was being compiled with undefined symbols (to the new FdoWmsGetFeatureInfoFormats class). Updating the Makefile.am with the missing files and re-compiling the WMS provider made the segfault go away.

And that was the tale of how I cleared the final roadblock to releasing MapGuide Open Source 3.1 (smoke tests with this change all pass, the beta 1 binaries are being built as this blog post is being published). Now on Windows with the MSVC compiler, such a problem would've manifested at the compiler phase as LNK2001 unresolved external symbol errors, so it surprised me big time that gcc or ld did not error out about undefined symbols and immediately break the build which would've caught this problem much sooner!

It turns out gcc/ld erroring out is a flag you have to opt-in to. The more you know. Thanks to Johan for the heads up.

So you can now expect the next post to be about ...
Categories: OSGeo Planet

Tim Waters: Mapwarper featured in A Digital Humanities Primer for English Students

OSGeo Planet - Wed, 2016-05-25 13:02

Jenna Herdman has written an excellent free e-book about Digital Humanities for English Students which has an entire chapter titled: Digital Mapping Tool Tutorial which features the Mapwarper. It’s been published using gitbook and is available in pdf, html, epub formats.

The tutorial covers adding a map to mapwarper.net to chart the movements of David in Charles Dickens’s David Copperfield.

unspecified-2

The map is then loaded into Palladio which is a new tool for me. it “is a web-based platform for the visualization of complex, multi-dimensional data”.

unspecified-1

Do check out this great resource. The book has seven chapters in total and all of them are interesting and worthwhile to read! https://www.gitbook.com/book/jennaherdman/a-digital-humanities-primer-for-english-students/details


Categories: OSGeo Planet

Paul Ramsey: Drowning in Passwords

OSGeo Planet - Wed, 2016-05-25 11:00

I like the internet, I use a lot of sites, I don’t fear online shopping or discussion or communication or banking. As a result, I have a pretty healthy footprint of accounts, and I have been finding recently that my brain can no longer keep up.

Drowning in Passwords

So I’ve started using a password manager, LastPass, which works just fine.

Once I fully committed to it, the number of passwords managed started a slow and seemingly relentless climb, as over time I returned to all the many sites at which I had been forced to register accounts in the past. As a result, I’ve learned useful things:

  • The number of sites I have accounts on is far larger than I thought. I have 40 entries in LastPass already, and I imagine I’m only about 2/3 of the way through adding all the sites I use more than once a year. Of those, easily a dozen are what you might call “important”: banks, brokerages, email, OAuth sources (Twitter, Facebook, Google), etc. Far more sites than I kept separate passwords for!
  • The centrality and potential vulnerability of the email account is hard to overstate. For 90% of the accounts I have added, the first step was “reset the password”, since I had forgotten it. (In fact, that was my old access mechanism, since I accessed many sites so rarely.) And “reset” uses access to email as a source of proxy authentication. So, 0wn my email address, 0wn me, entirely. If you haven’t enabled two-factor authentication on your email account yet, you need to, because of this.

Usually, improving security involves things getting more inconvenient but in the case of using a password manager, it has actually been a net improvement. No more time spent trying to remember which of the passwords in my limited brain key-chain I had used for a site. No more reset-password-and-wait for the many sites at which I had no idea what the password was.

LastPass has been very good, and I have only one note/caveat. The password manager works by installing a plug-in into your browser, so if you use multiple browsers (I use both Chrome and Safari regularly) you’ll end up with multiple plugins. The preferences on those plugins are managed separately. Same thing if you use multiple computers (I do, desktop and laptop). Each plugin on each computer has separate preferences.

This is important because the LastPass preferences are, in my opinion, a little loose. Once you provide the master password, by default, the password vault remains unlocked and available until you actually shut down your browser. I can go days without shutting down my browser. So, I changed that preference to a time-out of 15 minutes instead. But I had to change it on every browser and on every computer I owned, which was not intuitive, since the plugin is good about sharing other information to other installs transparently (add a password on one browser, it’s available on all).

So far I’ve been using the free version of LastPass, but as I move into the mobile world I will probably have to buck up for the paid version for support on mobile devices. Given how much it has simplified my life, I won’t begrudge them the dollars.

Bonus paragraph: Isn’t saving all my passwords on a cloud service really dumb? Not so much. The passwords are only ever decrypted locally by the password manager plugin. The cloud just stores a big encrypted lump of passwords, and I have a lot of faith in AES256. However, my security now has one big central point of failure: the master password. But since I only have to remember one master password, I have been able to make it nice and long, so any remote technical attack on my security is unlikely. That just leaves all the other kinds of attack (social engineering, keylogging, device theft, human factors, etc, etc).

Categories: OSGeo Planet

Fernando Quadro: Introdução ao OpenLayers 3: Controles

OSGeo Planet - Wed, 2016-05-25 10:08

Uma ferramenta típica para exibir em seu mapa é a barra de escala, e o OpenLayers 3 fornece a classe ol.control.ScaleLine para esta finalidade.

Vamos adicionar a escala no nosso mapa, para isso abra o arquivo map.html em seu editor de texto, e adicione o seguinte código para criar este novo controle em seu mapa:

controls: ol.control.defaults().extend([
  new ol.control.ScaleLine()
]),

Veja como ficou:

scaleline1

Você pode encontrar dificuldades para ler as informações sobre a barra de escala. Existem algumas atitudes que podem ser tomadas a fim de melhorar a visibilidade da escala. Se você quiser manter o controle dentro do mapa de exibição, você pode adicionar algumas declarações de estilo dentro do CSS do seu documento.

Para testar isso, você pode incluir uma cor de fundo e preenchimento para a barra de escala com algo parecido com o seguinte:

.ol-scale-line, .ol-scale-line:not([ie8andbelow]) {
   background: black;
   padding: 5px;
 }

No entanto, digamos que você acha que o mapa está ficando poluído visualmente. Para evitar isso, você pode exibir a escala em um local diferente. Para isso, precisamos primeiro criar um elemento adicional na nossa página e, em seguida, dizer ao controle de escala para criar-se dentro deste novo elemento.

Vamos então criar um novo elemento no <body> da sua página HTML. Para que seja fácil de referenciar este elemento, vamos dar-lhe um ID. Insira o seguinte código em algum lugar do <body> do seu map.html. (Colocar o elemento escala logo após o elemento do mapa <div id = “map”> </ div> faz sentido.):

<div id="scale-line" class="scale-line"></div>

Agora altere o código do controle de escala para fazer referência ao novo elemento:

controls: ol.control.defaults().extend([
  new ol.control.ScaleLine({className: 'ol-scale-line', target: document.getElementById('scale-line')})
]),

Adicione o código abaixo no seu estilo CSS:

.scale-line {
  position: absolute;
  top: 350px;
}
.ol-scale-line {
  position: relative;
  bottom: 0px;
  left: 0px;
}

Salve as alterações e abra o arquivo map.html no seu browser: @servidor@/map.html

scaleline2

Como vimos no post Vetores, podemos utilizá-los sobre um mapa base. Uma das vantagens de utilizarmos vetores é que podemos interagir com os dados. Neste exemplo, criamos uma camada de vetor, onde os usuários podem selecionar e visualizar as informações.

O exemplo anterior demonstrou a utilização de controles no mapa. A classe ol.interaction.Interaction é um controle responsável por manipular a interação do usuário, mas normalmente não tem uma representação visual. O exemplo abaixo demonstra o uso da classe ol.interaction.Select para interagir com uma camada vetorial. Veja:

<!doctype html>
<html lang="en">
  <head>
    <link rel="stylesheet" href="ol3/ol.css" type="text/css">
    <style>
    #map {
      height: 256px;
      width: 512px;
    }
    </style>
    <script src="ol3/ol.js" type="text/javascript"></script>
    <title>OpenLayers 3 example</title>
  </head>
  <body>
    <h1>My Map</h1>
    <div id="map"></div>
    <script type="text/javascript">
      var map = new ol.Map({
        interactions: ol.interaction.defaults().extend([
          new ol.interaction.Select({
            style: new ol.style.Style({
              image: new ol.style.Circle({
                radius: 5,
                fill: new ol.style.Fill({
                  color: '#FF0000'
                }),
                stroke: new ol.style.Stroke({
                  color: '#000000'
                })
              })
            })
          })
        ]),
        target: 'map',
        layers: [
          new ol.layer.Tile({
            title: "Global Imagery",
            source: new ol.source.TileWMS({
              url: 'http://maps.opengeo.org/geowebcache/service/wms',
              params: {LAYERS: 'bluemarble', VERSION: '1.1.1'}
            })
          }),
          new ol.layer.Vector({
            title: 'Earthquakes',
            source: new ol.source.GeoJSON({
              url: 'data/layers/7day-M2.5.json'
            }),
            style: new ol.style.Style({
              image: new ol.style.Circle({
                radius: 5,
                fill: new ol.style.Fill({
                  color: '#0000FF'
                }),
                stroke: new ol.style.Stroke({
                  color: '#000000'
                })
              })
            })
          })
        ],
        view: new ol.View({
          projection: 'EPSG:4326',
          center: [0, 0],
          zoom: 1
        })
      });
    </script>
  </body>
</html>

Salve as alterações, e para ver o recurso de seleção em ação, use o clique do mouse para selecionar um elemento:

select1

Posts RelacionadosZemanta
Categories: OSGeo Planet

gvSIG Team: gvSIG Festival: Second Day [Videos]

OSGeo Planet - Wed, 2016-05-25 07:51

gvSIG Online: the solution for Spatial Data Infrastructures on Open Source software (English) [César Martínez. Scolab. gvSIG Association]


Digital field mapping with Geopaparazzi and gvSIG (English) [Andrea Antonello. HydroloGIS. gvSIG Association]

Utilización del software gvSIG para el análisis acústico urbano: Sistema de Autopistas de La Ciudad Autónoma de Buenos Aires (Spanish) [Mario Fèvre. Trecc]


gvSIG Online: la solución para Infraestructuras de Datos Espaciales con software libre (Spanish) [César Martínez. Scolab. Asociación gvSIG][La parte final no se grabó por problemas técnicos/The end of the webinar wasn’t recorded because of technical problems]


Введение в gvSIG (Russian) [Alexander Karandeev]

And Today…

11:00-12:00

Scripting in gvSIG (English) [Óscar Martínez. gvSIG Association]

12:00-13:00

gvSIG Roads: gestión de la conservación e inventario de carreteras con software libre (Spanish) [Ricardo Rueda.DiSiD. gvSIG Association]

13:00-14:00

GIS tools for water supply systems: an implementation using Epanet and gvSIG (English) [Silvia Franceschi. HydroloGIS. gvSIG Association]

16:00-17:00

gvSIG Online: IDE para la Secretaría de Turismo de México (Spanish) [Juan José del Toro. GeoAlternativa]

17:00-18:00

Delimitación de Microcuencas hidrográficas con gvSIG (Spanish) [Roxana Sánchez. (Parque Tecnológico Itaipú-Paraguay)]

18:00-19:00

Sistema de Información Geografico Para Catrastro Municipal con Software Libre (Spanish) [Marino Carhuapoma. IdeasG]

* Madrid Time. Click on the time of every webinar to check it in your city.

** Registration is available clicking on the title of every webinar.


Filed under: english, gvSIG Desktop, gvSIG Online, gvSIG Roads, Russian, spanish Tagged: webinars
Categories: OSGeo Planet

Paul Ramsey: Intellectual Capital vs Intellectual Property

OSGeo Planet - Tue, 2016-05-24 11:00

Building enterprise IT projects as “capital investments” is something I consider potentially dangerous, because it lumps IT “assets” along with much more durable and valuable physical assets.

A key question to ask of an “IT asset” is just how valuable and permanent the asset is. In the venture capital world, nothing makes investors happier than hearing that a company is spending their investment dollars creating “intellectual property”. This is an intellectual product that is defensible and ownable: it’s not locked up between some employee’s ears, it’s owned by the company.

In contrast, building “intellectual capital” is a much more risky proposition. Intellectual capital is my stock in trade, it’s what distinguishes me from a random C/C++ programmer: I know some very detailed things about some specific open source projects that would take quite a long time to learn from scratch. It’s valuable capital, but it lives between my ears. It’s mine and mine alone.

Intellectual Capital vs Intellectual Property

Why is this important for enterprise IT projects? Because so much of the value created in IT projects is “intellectual capital”. Staff are assembled by a consultancy and take months and years to learn a business domain and the particular tools for the problem, and the particular code base that is the system itself.

And then when the project is done… they are sent off to consultancy’s the next project. Flush…

Treating enterprise IT projects as capital projects encourages miscategorization all over the place:

  • The “system” is perceived as the target of the investment. But the value of the pile of code and hardware rapidly diminishes to zero once the knowledgeable staff are removed. Changes and enhancements that would take the original developers minutes now require days and weeks of staff learning time before they can be attempted.
  • The nature of the funding assumes that at some point the system will be “complete”. It will be in “maintenance” mode. Except the budget assigned to maintainance is too low to make any substantial changes in response to unexpected future needs. So when serious new requirements arise, the response is always to start again from scratch. With a new team.

It’s weird that IT projects get this special treatment, because other areas of government are perfectly aware that when staff leave, they carry out the accumulated intellectual capital of years of learning.

The very nature of the outsourced IT relationship has obscured the fact that government is routinely building up very expensive stores of intellectual capital and then sending them on their way only a handful of months or years after they’ve built them.

Maybe it’s time to get back to building systems in house?

Categories: OSGeo Planet

Fernando Quadro: Introdução ao OpenLayers 3: Vetores

OSGeo Planet - Tue, 2016-05-24 10:45

Camadas vetoriais no OL3 são representadas pela classe ol.layer.Vector que manipula a exibição de dados vetoriais no lado do cliente. Atualmente OpenLayers 3 só suporta renderização vetorial através do renderizador do Canvas.

Vamos voltar ao exemplo WMS para obter um mapa básico do mundo, para isso vamos adicionar alguns recursos em uma camada vetorial.

<!doctype html>
<html lang="en">
  <head>
    <link rel="stylesheet" href="ol3/ol.css" type="text/css">
    <style>
      #map {
        height: 256px;
        width: 512px;
      }
    </style>
    <title>OpenLayers 3 example</title>
    <script src="ol3/ol.js" type="text/javascript"></script>
  </head>
  <body>
    <h1>My Map</h1>
    <div id="map"></div>
    <script type="text/javascript">
      var map = new ol.Map({
        target: 'map',
        layers: [
          new ol.layer.Tile({
            title: "Global Imagery",
            source: new ol.source.TileWMS({
              url: 'http://maps.opengeo.org/geowebcache/service/wms',
              params: {LAYERS: 'bluemarble', VERSION: '1.1.1'}
            })
          })
        ],
        view: new ol.View({
          projection: 'EPSG:4326',
          center: [0, 0],
          zoom: 0,
          maxResolution: 0.703125
        })
      });
    </script>
  </body>
</html>

Agora abra o arquivo map.html em seu editor de texto e copie o conteúdo do exemplo WMS inicial. Salve suas alterações, confirme e veja como ficou no seu navegador: @servidor@/map.html

No seu código de inicialização do mapa adicione outra camada após camada existente (código abaixo). Isso irá adicionar uma nova camada de vetorial para o seu mapa, para este exemplo você precisará de um arquivo GeoJSON que você pode criar no QGIS, por exemplo:

new ol.layer.Vector({
  title: 'Earthquakes',
  source: new ol.source.GeoJSON({
    url: 'data/layers/7day-M2.5.json'
  }),
  style: new ol.style.Style({
    image: new ol.style.Circle({
      radius: 3,
      fill: new ol.style.Fill({color: 'white'})
    })
  })
})

Veja como ficou o nosso mapa:

vector1

Como os dados contidos no arquivo GeoJSON estão em WGS84 (EPSG:4326) e a nossa camada base também, não é necessário uma reprojeção. No caso em que a projeção das camadas for diferente, isso significa que você deve especificar a projeção que deve ser utilizadas no seu mapa.

Posts RelacionadosZemanta
Categories: OSGeo Planet

gvSIG Team: GIS of Thrones: Mapping Game of Thrones with gvSIG

OSGeo Planet - Tue, 2016-05-24 10:39

Sometimes when we are doing training tasks, users ask us about free datasets to practice and learn all the possibilities that gvSIG gives us. Fortunately there are a great quantity of free data today, but it’s true that only a few times we find geographic information that allows us to enjoy while we learn to create legends, labeling, making geoprocesses…

We were thinking in it when we found a dataset, with free license, based on the successful series (in books and on TV) Game of Thrones. After testing it with gvSIG we found several errors at the information layers, but they were able to be solved easily with some geoprocesses. Since we were at that point, why don’t we play with symbology and labeling by scale?

Here you have a short video with the results:

And here you have a zip file with the data and the gvSIG project to be used. We know what project we are going to use to test the next version…

downloads.gvsig.org/download/documents/books/GISofThrones.zip

And another day we will speak about Star Wars…


Filed under: gvSIG Desktop
Categories: OSGeo Planet

gvSIG Team: gvSIG Festival: First Day [Videos]

OSGeo Planet - Mon, 2016-05-23 19:14

 Introduction to gvSIG (English) [Mario Carrera. gvSIG Association]

Utilización de gvSIG en estudios sobre desastres naturales y salud mental (Spanish) [Manuel Esteban Lucas Borja. Universidad de Castilla-La Mancha]

Utilização do gvSIG na Defesa Civil (Portuguese) [Gilberto Cugler. Comunidade gvSIG Brasil]

gvSIG applications in East Africa – Kenya and Somaliland (English) [Giuliano Ramat y Maurizio Fòdera]

O Futuro no Passado: o uso das geotecnologias aplicadas às pesquisas históricas (Portuguese) (Maíra Rosin. HIMACO]

And tomorrow…

11:00-12:00

gvSIG Online: the solution for Spatial Data Infrastructures on Open Source software (English) [César Martínez. Scolab. gvSIG Association]

12:00-13:00

Digital field mapping with Geopaparazzi and gvSIG (English) [Andrea Antonello. HydroloGIS. gvSIG Association]

13:00-14:00

gvSIG, un Système d’Information Géographique libre (French) [Victoria Agazzi. gvSIG Association]

16:00-17:00

Utilización del software gvSIG para el análisis acústico urbano: Sistema de Autopistas de La Ciudad Autónoma de Buenos Aires (Spanish) [Mario Fèvre. Trecc]

17:00-18:00

gvSIG Online: la solución para Infraestructuras de Datos Espaciales con software libre (Spanish) [José Vicente Higón. Scolab. Asociación gvSIG]

18:00-19:00

Delimitación de Microcuencas hidrográficas con gvSIG (Spanish) [Roxana Sánchez. (Parque Tecnológico Itaipú-Paraguay)]

19:00-20:00

Введение в gvSIG (Russian) [Alexander Karandeev]

* Madrid Time. Click on the time of every webinar to check it in your city.

** Registration is available clicking on the title of every webinar.


Filed under: english, events, portuguese, Russian, spanish Tagged: webinars
Categories: OSGeo Planet
Syndicate content