Welcome to Planet OSGeo

September 02, 2014

Andrea Antonello

STAGE - Desktop Tools (also) for Geopaparazzi

With the new upcoming geopaparazzi 4 release a few issues had to be solved:
  1. What should I do with all my old geopaparazzi 3 surveys? How do I integrate them with new data?
  2. What do I use to export data from a geopaparazzi 4 project to my GIS environment?
Well, we solved both the above problems inside STAGE, a Spatial Toolbox And Geoscripting Ennvironment, which is the tool we develop and use for the JGrasstools library for environmental modelling.

For those asking if it is the same Spatial Toolbox that comes with uDig, the answer is yes and no. Yes, because it is the same source code. And no, because since uDig is in the process of (and a bit stuck in) migrating through the Locationtech incubation, we needed to step forward with the geotools versions. So see STAGE as the temporary solution to work with the Spatial Toolbox, until we can enhance the uDig version again.


So where do I get STAGE and how do I use it for Geopaparazzi? A video tutorial showing it all can be found here:




Enjoy!



ADDENDUM: since it has been asked, this is the link to the current download area of STAGE: http://bit.ly/stage_downloads


by andrea antonello (noreply@blogger.com) at September 02, 2014 07:20 AM

OSGeo News

OSGeo-Live 8.0 Released

by aghisla at September 02, 2014 07:14 AM

Boundless Blog

OpenGeo Suite 4.1.1 Released!

We’ve been hard at work fixing bugs, and polishing OpenGeo Suite, so we’re proud to announce the release of OpenGeo Suite 4.1.1!  This release focuses exclusively on performance and stability updates.

For those who don’t regularly follow our blog, the OpenGeo Suite 4.1 release included many new features and improvements:

Try it!

Download 4.1.1 and try our census map tutorial or heat map tutorial to learn more. Details about this release are included in the release notes and, as always, we strongly advise you to read the upgrade instructions and backup your data before installing.

The post OpenGeo Suite 4.1.1 Released! appeared first on Boundless.

by Rolando Peñate at September 02, 2014 06:00 AM

Jody Garnett

Attend a workshop at FOSS4G

I am having a great time going over workshop material for FOSS4G.  I have two workshops on the go and am totally looking forward to seeing everyone next week in Portland.

GeoServer Cartography and Styling

I have had the privilege of teaching GeoServer previously - and the one consistent request is for more on mapping and styling! One day introduction course - more mapping and styling. Two day intensive course for web developers - more mapping and styling. Five day course with a day devoted to Styling? More mapping and styling please ...
With this workshop I can finally answer this request! The use of the CSS extension (to generate SLD files) finally allows a workshop to cover enough ground!
Dynamic Symbology Example
For everyone attending this workshop you are in for a real treat.  Thanks to David Winslow for the CSS extension, and thanks to Boundless for the time and inspiration to pull this course together.
As indicated in the course description lab machines are provided, show up, have fun and learn a ton.

GeoTools DataStore Workshop

I am thankful for the opportunity to teach a GeoTools workshop (programming workshops are occasionally a hard sell next to running applications like GeoServer). And this is not any GeoTools workshop, it is an intermediate workshop on how to create a DataStore from scratch.
ContentDataStore and Friends
A lot of work has gone into ContentDataStore (shown above). This really is the underpinnings of the "next-generation" database, shapefile and the recently announced wfs-ng client.
This workshop marked as BYOD, meaning you can relax in the comfort of your own development environment.

FOSS4G workshops - sign up now!

Time and time again workshops are listed as the highlight of the foss4g experience. One of the key advantages of open source is a chance to follow up that key hands-on experience with the opportunity  to take the software home to show your friends.
There has been some experimentation with offering lightweight labs (read: no additional cost) in parallel with the main program. While a fun idea, it is kinder to all involved to keep the number of conference tracks to a minimum to avoid that feeling of "missing out" no matter what room you are in.
Those attending GeoServer Cartography and Styling are really going to have a great time. For those lucky enough to be in the GeoTools DataStore Workshop it is going to be a chance to stretch your mind!

Why not make workshops the highlight of your foss4g?
  • If you have not signed up for FOSS4G what are you waiting for! The workshops on offer are incredible and represents some of the best value in open source training available. The registration page appears to still be open :)
  • If you already made your plans and were skipping the workshops to save some money - don't! The workshops are cheap-as-chips. Come a day early as there is no substitute for the hands-on goodness of a workshop.
As a final plea: you are going to come back (bruised and battered) from a week of the most amazing geospatial software, friendly community, and buzz of ideas and enthusiasm. As you crawl into work on Monday and are asked "how was it?" - make sure to attend a workshop so you have something to show.
If you cannot make the trip I would be remiss if I did not mention the online training/certification offered by Boundless. The material is extensive and Mike and Ben have done a great job introducing each section with videos.

by Jody Garnett (noreply@blogger.com) at September 02, 2014 05:49 AM

BostonGIS

PostGIS sessions at Postgres Open 2014 Chicago not too late

If you haven't signed up for our Postgres Open 2014 PostGIS tutorials, there are still a few tickets available, but time and space is running out.

For those of you who've already signed up for our tutorials in September 17th, 2014, keep an eye on this page: http://www.postgis.us/pgopen2014. Not much to see there yet, but we'll be posting content there before the tutorials as well as the examples so you can flaunt your mastery of cutting and pasting.

by Regina Obe (nospam@example.com) at September 02, 2014 03:20 AM

September 01, 2014

SourcePole

Sourcepole at FOSS4G 2014 in Portland

In one week, the 2014 FOSS4G Conference will start in Portland/Oregon. Sourcepole supports this major event as a bronze sponsor.

Our conference contributions:

Workshop presented by Horst Düster (@moazagotl)

  • Tuesday afternoon: QGIS Plugin Development with PyQt4 and PyQGIS

Presentations by Pirmin Kalberer (@PirminKalberer)

  • Thursday, Session 2, Track 7, 13:00 - 13:25: State of QGIS Server
  • Thursday, Session 2, Track 7, 13:30 - 13:55: From Nottingham to PDX: QGIS 2014 roundup
  • Thursday, Session 3, Track 6, 16:25 - 13:25: Easy ETL with OGR

Meet Pirmin and Horst at Sourcepole’s exhibition booth and have a look at our latest products.

We’re looking forward to meet you in Portland next week!

Follow @Sourcepole for selected QGIS news and other Open Source Geospatial related infos.

by hdus at September 01, 2014 02:48 PM

August 29, 2014

FOSS4G 2014

Future winners, meet your targets! [two days until Map Gallery deadline!]

Just two days to make it into the 2014 FOSS4G Map Gallery! Make sure you submit that map by 31 August. Remember that you don’t have to attend the conference to enter (or win!), and that your entries meed to be made with either open software or open data — or both, if you so choose.

As you sit polishing your gem of work, we wanted to give you a sense of the breadth of categories we’ll be recognizing — a nod to open software, one for open data, one for web maps, one for static maps — and on. There’s something for every map here; see categories below.

We are very much looking forward to reviewing your submissions — happy (and brilliant) mapping!

Best open source software integration 

Awarded to the map which displays the most innovative and purposeful use of open source software. The map need not be constructed entirely using open source software or, indeed, using a wide variety. Judges will be looking for sound choice, application and innovation.

Best open source data integration 

Awarded to the map which makes the most innovative use of open source data. The map need not use a wide variety of sources or be entirely composed of open data sources but the open data component must be a well-marshaled, purposeful and core component of the final map.

Best static map (digital display) 

Awarded to the map which, in digital form, presents a well-composed static display of a theme of the author’s choice. The map should be complete and function without additional material. This category might also be used for those who wish to submit a digital version of a printed map.

Best web map application 

Awarded to the map which makes the most innovative use of web map application platforms, including online or mobile. The map should make use of emerging mapping paradigms including interactive and multiscale approaches, and function as a portal to further information where appropriate.

Best overall cartographic display 

Awarded to the map that displays the most impressive cartography. This will be a map that goes well beyond the basics and exhibits excellence in aspects of cartographic design and production.

Best anti-map map 

Awarded to the map that displays the least map-like form and function yet manages to perfectly capture and communicate the intended geospatial message. This category is intended to encourage diversity in style and approach because not every geospatial theme needs a map…

Most unique map 

Awarded to, quite simply, the map that judges find to be the most unique in terms of theme, design or function.

People’s Choice Award

No open source event is complete without a good shot of vox populi. Input will be gathered from your fellow maptastic spatial folk, and may the best map win. We don’t need no stinking judges; we have a community of bright, vibrant people with eyes for design and data — and, just perhaps, some strong opinions.

 

The post Future winners, meet your targets! [two days until Map Gallery deadline!] appeared first on FOSS4G 2014.

by K.Bott at August 29, 2014 11:30 PM

Bjorn Sandvik

Geotagging photos using GPS tracks, ExifTool and Picasa

I take a lot of photos while trekking, and most of the time I'm also carrying a GPS with me. As my camera don't have a built-in GPS, my photos are not geotagged while shooting. Luckily, this is an easy task if you've kept your GPS logs from the trip. 

I'm still very happy with my Garmin GPSmap 60CSx that I bought 7 years ago. By changing the setup, the GPS allows me to automatically save the tracks to the memory card. I get one GPX file for each day trekking named with the date. I can easily transfer these tracks to my computer or smartphone with a cable or a card reader. 

Before I converted to Mac, I used GeoSetter to geotag my photos on Windows. Now, I want to do it on the command line using the great ExifTool by Phil Harvey. I installed it on my MacBook using Homebrew:

brew install exiftool

After copying my GPX file to the image folder, I'm simply running:

exiftool -geotag=my.gpx ./

If you forgot to sync the camera and GPS time before your trip, you can use the geosync-option to fix it: (60:00 = 60 minutes):

exiftool -geotag=20140329.gpx -geosync=-60:00 ./

You have a lot of options, so make sure to read the "Geotagging with ExifTool" documentation. ExifTool is modifying the Exif headers of your image files, storing the location data in the same file. 

To see the result on a map, I'm using Picasa.  


Click the map pin button (bottom right) to see the map. If the positions are not shown on the map, try to right-click the image folder and select "Refresh Thumbnails". 

If you don't have a GPS track you can always use Picasa to manually geotag your photos. 

Be aware! I just learnt that social media sites like Facebook, Twitter and Instagram removes the Exif data from your images. Google+ don't. 

Now, how can you display the photos on your own map? It will be the topic of my next blog post. 

by Bjørn Sandvik (noreply@blogger.com) at August 29, 2014 10:24 PM

Cameron Shorter

OSGeo-Live 8.0 Released

Version 8.0 of the OSGeo-Live GIS software collection has been released, featuring over 50 open source, standards compliant geospatial applications.

Release Highlights

Lubuntu 14.04.1 LTS
We have moved from Xubuntu to the lighter Lubuntu base operating system, which starts up faster, requires less RAM, and uses less disk space, making it a better choice for running in a Virtual Machine or from a LiveDVD.
We have upgraded to the latest 14.04.1 stable Long Term Support (LTS) release. LTS releases are put out every 2 years by Ubuntu.
Debian packaging
We have steadily been moving more of our projects to .deb packaging, which makes it easier to install programs on debian based systems such as OSGeo-Live, and allows application of post-release fixes if required.
Applications
34 geospatial programs have been updated to newer versions.

About OSGeo-Live

OSGeo-Live is a self-contained bootable DVD, USB flash drive and Virtual Machine, pre-installed with robust open source geospatial software, which can be trialled without installing anything. It includes:
  • Over 50 quality geospatial Open Source applications installed and pre-configured
  • Free world maps and sample datasets
  • Project Overview and step-by-step Quickstart for each application
  • Lightning presentation of all applications, along with speaker's script
  • Overviews of key OGC standards
  • Translations to multiple languages
Homepage: http://live.osgeo.org
Download details: http://live.osgeo.org/en/download.html
Post release glitches collected here: http://wiki.osgeo.org/wiki/Live_GIS_Disc/Errata/8.0

Credits

Over 180 people have directly helped with OSGeo-Live packaging, documenting and translating, and thousands have been involved in building the packaged software.
Developers, packagers, documenters and translators include:
Activity Workshop, Agustin Di­ez, Aikaterini Kapsampeli, Alan Beccati, Alan Boudreault, Alessandro Furieri, Alexander Bruy, Alexander Kleshnin, Alexander Muriy, Alexandre Dube, Alexey Ardyakov, Alex Mandel, Amy Gao, Andrea Antonello, Andrea Yanza, Andrey Syrokomskiy, Andry Rustanto, Angelos Tzotsos, Anna Munoz, Antonio Falciano, Anton Novichikhin, Anton Patrushev, Argyros Argyridis, Ariel Nunez, Assumpcio Termens, Astrid Emde, Barry Rowlingson, Benjamin Pross, Brian Hamlin, Bruno Binet, Bu Kun, Cameron Shorter, Christophe Tufféry, Christos Iossifidis, Cristhian Pin, Damian Wojslaw, Dane Springmeyer, Daniel Kastl, Danilo Bretschneider, Daria Svidzinska, David Mateos, Denis Rykov, Diego Gonzalez, Diego Migliavacca, Dimitar Misev, Dmitry Baryshnikov, Dominik Helle, Edgar Soldin, Eike Hinderk Jürrens, Elena Mezzini, Eric Lemoine, Erika Pillu, Estela Llorente, Etienne Delay, Etienne Dube, Evgeny Nikulin, Fran Boon, Francois Prunayre, Frank Gasdorf, Frank Warmerdam, Friedjoff Trautwein, Gavin Treadgold, Giuseppe Calamita, Grald Fenoy, Grigory Rozhentsov, Guy Griffiths, Hamish Bowman, Haruyuki Seki, Henry Addo, Hernan Olivera, Hirofumi Hayashi, Howard Butler, Hyeyeong Choe, Ian Edwards, Ian Turton, Ilya Filippov, Jackie Ng, Jan Drewnak, Jane Lewis, Javier Rodrigo, Javier Sanchez, Jesus Gomez, Jim Klassen, Jing Wang, Jinsongdi Yu, Jody Garnett, Johan Van de Wauw, John Bryant, Jorge Arevalo, Jorge Sanz, Jose Antonio Canalejo, Jose Vicente Higon, Judit Mays, Klokan Petr Pridal, Ko Nagase, Kristof Lange, kuzkok, Lance McKee, Lars Lingner, Luca Delucchi, Lucia Sanjaime, Mage Whopper, Manuel Grizonnet, Marc-Andre Barbeau, Marco Curreli, Marco Puppin, Marc Torres, Margherita Di Leo, Maria Vakalopoulou, Mario Andino, Mark Leslie, Massimo Di Stefano, Matthias Streulens, Mauricio Miranda, Mauricio Pazos, Maxim Dubinin, Michael Michaud, Michael Owonibi, Micha Silver, Mike Adair, Milena Nowotarska, M Iqnaul Haq Siregar, Nacho Varela, Nadiia Gorash, Nathaniel V. Kelso, Ned Horning, Nobusuke Iwasaki, Oliver Tonnhofer, Oscar Fonts, Otto Dassau, Pasquale Di Donato, Patric Hafner, Paul Meems, Pavel, Pedro-Juan Ferrer, Pirmin Kalberer, Raf Roset, Regina Obe, Ricardo Pinho, Roald de Wit, Roberta Fagandini, Roberto Antolin, Roger Veciana, Ruth Schoenbuchner, Samuel Mesa, Scott Penrose, Sergey Grachev, Sergio Banos, Simon Cropper, Simon Pigot, Stefan A. Tzeggai, Stefan Hansen, Stefan Steiniger, Stephan Meissl, Steve Lime, Takayuki Nuimura, Thierry Badard, Thomas Baschetti, Thomas Gratier, Tom Kralidis, Toshikazu Seto, Trevor Wekel, Valenty Gonzalez, Vera, Xianfeng Song, Yoichi Kayama, Zhengfan Lin

Sponsoring organisations

by Cameron Shorter (noreply@blogger.com) at August 29, 2014 09:47 PM

Bjorn Sandvik

Geotagging and Picasa Web Albums API, or was it Google+ Photos?

In my last blog post, I presented a new plugin, Leaflet.Photo, that allows you to display geotagged photos from any source. Among them was Google+ Photos and Picasa Web Albums API. My plan is to use this API for my travel map, and this is why.

Does Picasa Web Albums still exist? 
It's a bit messy these days. Google is trying to transition from Picasa Web Albums to Google+ Photos, as photos are the number one things that people want to share on social networks. When you use Picasa to share your albums (Sync to Web), the album URL is now on your Google+ profile, and not on Picasa Web Albums (which is just redirecting me to Google+). This is the URL to the public album from my trip to the Trollfjord:

https://plus.google.com/photos/+BjørnSandvik/albums/6052628080819524545

It also works with your Google+ user id:

https://plus.google.com/photos/118196887774002693676/albums/6052628080819524545

My public Google+ web album. The album contains both photos and videos. 

The thing is, there is no Google+ API for photos and videos yet (apparently they were working on it back in 2011). But the Google Web Albums API still works on your Google+ albums.

Google Web Albums API is not the easiest API I've worked with, but it's flexible and quite fast. This is an XML feed of my public album from Trollfjord:

https://picasaweb.google.com/data/feed/api/user/118196887774002693676/albumid/6052628080819524545

The user number and album id is the same as above. Or better for your JavaScript apps, a JSON feed:

https://picasaweb.google.com/data/feed/api/user/118196887774002693676/albumid/6052628080819524545?alt=json

And if you're still using JSONP:

https://picasaweb.google.com/data/feed/api/user/118196887774002693676/albumid/6052628080819524545?alt=json-in-script

If you click on any of these links, you'll see that it's not a very compact format. There is a lot of data that you don't need. Although complicated, you can select the fields you want to include in the feed. This is how I selected the following elements:
  • Photo URL: entry/media:group/media:content
  • Photo caption: entry/media:group/media:description
  • Photo thumbnail URL: entry/media:group/media:thumbnail
  • Photo timestamp: entry/gphoto:timestamp
  • Photo location: entry/georss:where

This is the new URL:

https://picasaweb.google.com/data/feed/api/user/118196887774002693676/albumid/6052628080819524545?alt=json&fields=entry/media:group/media:content,entry/media:group/media:description,entry/media:group/media:thumbnail,entry/gphoto:timestamp,entry/georss:where

While researching, I also learnt that I could use the imgmax attribute to specify the size of the photos referenced in the photo URL. Neat!

So why should I use this (relatively) old API?
Compared to other popular social media sites, Google don't strip off the meta information of your photos. Instead it uses the build in support for image metadata extensively. Hopefully Google will continue to do this, although social media sites have reasons not doing so.

This means that Google don't lock you in. I can change the location of my photos using my GPS tracks, and it's reflected where I embed my photos. I can edit the image captions in Picasa and it's stored within the image file, allowing me to write the caption once and use it everywhere.

So what is my album workflow for my travel map. Before starting my journey, I'm creating a new Google+ album. The feed from this album is attached to my map, by simply passing on the album id. While on journey, I use the Google Photos app to add photos to the album, that will automagically show up on the map as well. Back from trip, I can add and edit photos from my digital camera in Picasa and sync them to the web album.

Photos from Google+ shown on my travel map. 

PS! This blog post is not sponsored by Google :-) 

by Bjørn Sandvik (noreply@blogger.com) at August 29, 2014 02:42 PM

Bjorn Sandvik

Showing geotagged photos on a Leaflet map

Using Instagram for my real-time travel map had too many limitations, so I decided to use Google+ photos or Picasa Web Albums instead. I've create a new plugin, Leaflet.Photo, that allows you to add geotagged photos to your map, from any source.

The plugin plays well with the great Leaflet.markercluster plugin, showing your photos in clusters. To make the plugin more versatile, it doesn't deal with AJAX loading or image presentation except the thumbnails on the map. Use your AJAX loader of choice, and simply pass on an array of photo objects to the plugin. 

The photo objects can include the properties you like, but the following are required:
  • lat: latitude of photo
  • lng: longitude og photo
  • thumbnail: url to thumbnail photo
I've kept the squared thumbnails of Instagram, as I think it look nicer than variable size thumbnails. Since the photos can have any dimensions, I'm using a CSS technique to crop and center the thumbnails. 

I've created three examples using Picasa Web Albums Data API, CartoDB (synced with Instagram) and Norvegiana API. With CartoDB you can easily get the required photo properties by manipulating the SQL query. Other APIs will require some data parsing before you pass on the photo objects to the plugin. All examples show the photos in a popup when you click/tap on them, but do whatever you like! On my travel map (click on "Bilder"), I'm using my own lightbox showing all photos in a cluster.

Google+ photos


Photos and videos from Google+. See the small animated GIF video thumbnails. 


Instagram / CartoDB


Instagram photos synced with CartoDB. 


Norvegiana 


Historic photos of Oslo from Norvegiana API. 
Enjoy! :-)

by Bjørn Sandvik (noreply@blogger.com) at August 29, 2014 02:34 PM

Boundless Blog

OpenLayers 3.0 Released!

 
OpenLayers 3 has been a long time in the making but we’re proud to announce that the project is ready for release! This release includes a ton of new features such as an easier to use API as well as improved vector rendering and image manipulation.

While we’ve confidently supported OpenLayers 3 in production since the OpenGeo Suite 4.0 release and have long offered professional services for developers looking to build web applications, we hope this announcement marks a significant step forward in adoption of the library.
Openlayers.org

Check out some of our previous blog posts to learn more about using OpenLayers 3:

And don’t forget to check out the project website for some great documentation and examples.

OL3 vector rendering

The post OpenLayers 3.0 Released! appeared first on Boundless.

by Rolando Peñate at August 29, 2014 02:10 PM

Bjorn Sandvik

Making a real time travel map

I had to quit my trip form Oslo to Bergen already on day three - and I have to wait until August 2015 for a second try. I still got time to gain some experience in real time tracking - and mapping. Based on this experience I've made a new version of my live travel map: turban.no



This is a private project to learn new skills - where I care more about new standards and less about old browsers. I'm using CSS3 and HTML5 extensively, the the map will probably not show in Internet Explorer < 10, but it should work well on your tablet or smartphone.


My previous map was about 1 MB to load on my mobile, as I really took off mixing Leaflet, Highcharts, Ext JS, jQuery and Fancybox. I'm now left with only Leaflet and D3.js and only 72 kB gzipped JavaScript. It was a bit more work to create an elevation chart width D3.js, but it's very flexible when you get the grasp of it. I also used D3.js to create a lightbox gallery to show my Intagram photos, as it can easily replace jQuery for selectors and animations.

This is a single page application running in your browser with a CartoDB-backend. The only thing I've changed on my server is the .htaccess file to point all request to the same index.html file. Then I'm using the HTML5 History API to create nice looking URLs to different trips. I've also extended the application to support different users, but I have no plans to create a public web service.

The full application code is not available, but the different bits and pieces are and will. It's still work in progress. The next steps will be to improve the experience on touch screens, add a 3D display and maybe create a mobile app with PhoneGap.

I want to share some experiences I had when creating this map - and I would very much like your feedback!

When you visit the site, you can select between different trips. I'm creating new trips by simply adding new rows to a CartoDB-table. The track and images for each trip are fetched based on time attributes.


You can also link directly to a trip, like: http://turban.no/bjorn/oslo-gaastjern

You can mouseover or click the track to se place names and altitudes. To improve the performance, I'm only drawing the line and not the individual points. To find the nearest point to a mouse/tap position, I'm doing a nearest neighbour search.


Actually I'm drawing two track lines; the stippled line, and a thicker invisible line to make it easier to catch mouseover and click events, especially on touch devices. This is the line shown with less transparency:


The image above show the popup, with terrain type and a weather forecast for this specific location at the time I was there. The track interactions are also linked to the elevation chart:


If you mouseover the track, the same position will show on the elevation chart, and vice versa. Both the track and the chart show the live position with a pulsing marker. I'm also marking the overnight stays, as my SPOT device allows me to send custom messages. The elevation chart reads right to left, as this was the direction of my trip. The direction can be changed for each trip.

If you navigate around in the map, you'll see that the elevation chart is changing to reflect the view:


This is done using Crossfilter to quickly select the points within the map view, although my iPad gets a bit sluggish with instant updates while dragging.

Instagram photos are displayed on the map using the great Leaflet.markercluster plugin:



The photos are shown in a lightbox where you can click/tap through the photos in a cluster (no swipe support yet):



All elements are responsive and should adapt to different screen sizes. I've also made a build process with Grunt to concatenate and compress all the CSS and JavaScript into single files. LESS are used to get rid of all the browser prefixes in CSS. I also made a custom build of D3.js to only include the bits I used, reducing the size to one third.

Continuing the work when there are new trips coming up!

by Bjørn Sandvik (noreply@blogger.com) at August 29, 2014 12:51 PM

Slashgeo (FOSS Articles)

Batch Geonews: Google Drone Delivery, Galileo Satellites Failures, 100 New 3D Cities for Bing Maps, 1M NYC Buildings in OSM, and much more

Here’s the recent geonews in batch mode.

On the open source / open data front:

On the Google front:

In the everything-else category:

In the maps category:

mainville-2014

The post Batch Geonews: Google Drone Delivery, Galileo Satellites Failures, 100 New 3D Cities for Bing Maps, 1M NYC Buildings in OSM, and much more appeared first on Slashgeo.org.

by Alex at August 29, 2014 12:43 PM

August 28, 2014

Bjorn Sandvik

Live tracking in Lofoten and Vesterålen

Last weekend, I had a great trip to scenic Lofoten and Vesterålen in Northern Norway. I brought my tracking gear to test my new real time travel map. How did it go?

Our first trip was to Trollfjord, a 2 km long fjord with a narrow entrance and steep-sided mountains. It's a famous tourist spot in the Lofoten archipelago, but not many leave the boat at the fjord's end to hike up to the Trollfjord hut.

The small Trollfjord hut.

Trollfjord goes in an east-west direction, and I expected to be in the "satellite shadow" being far north and having steep mountains blocking the sky towards the south. My good old Garmin GPSmap 60CSx did well in the rugged landscape, while my satellite SPOT messenger had some difficulties finding and sending positions. 

Live track from my SPOT messenger (interactive map).

GPS track from my Garmin GPS.

The great thing of using CartoDB to sync my SPOT-data, is that you can edit your positions with ease after the trip. 

Tip! The default basemaps in CartoDB are not very detailed for Norwegian mountains, but you can easily add a basemap (Topo2) from the Norwegian Mapping Authority ("Kartverket") with this URL: 

http://opencache.statkart.no/gatekeeper/gk/gk.open_gmaps?layers=topo2&zoom={z}&x={x}&y={y}

Changing the basemap of CartoDB.  


It's then easy to edit or delete the wrong positions:


Be aware! I was struggling editing my CartoDB-tables from my smartphone, but it was not possible to edit the content of table cells. Hopefully, the CartoDB team will make their editor more mobile friendly in the future. 


Another issue was to get the correct time and position of Instagram photos on the map. Trollfjord is an area with poor mobile coverage. When I took photos with the Instagram app it was struggling placing the photos on the map. It worked better if I took the photos the the built-in camera app of my phone (with geotagging activated) and then posting the photo with the Instagram app. 


If I didn't have mobile coverage, I would just retry posting the photo when back to civilisation. The time associated with the image is when it was sent and not taken. I'm going to check if I can extract the shooting time from the Exif headers of the image.

Our second trip went through Møysalen national park, one of very few national parks in Norway that goes all the way down to sea level. 

Møysalen national park

Here we went in a south-north direction, and my SPOT messenger did better as there was less mountains blocking the satellites. 

Map and elevation profile of a 2-day hike through Møysalen national park (interactive map).  

The web service from the Norwegian Mapping Authority ("Kartverket") seemed to have some technical troubles this weekend, so the altitude values and place names was not updated instantly. When the web service was failing my script stopped and the weather report from yr.no was not fetched either. I'm going to improve the error handling before my next trip. 

I also took a lot of photos with my compact camera while trekking, and I would like to show these on the map as well. My camera don't have a GPS receiver, but I should be able to geotag my photos by using my GPS track. It will be the topic of my next blog post. In the meanwhile, here are some of the photos: 

Hurtigruta in Trollfjord

Trollfjord by night

Cloudberries

Trollfjordtindan.

Seagull

Seagulls

Sea eagle in Raftsundet.

Durmålstindan

Tverrelvtindan

Cold and fresh bath at Snytindhytta.

by Bjørn Sandvik (noreply@blogger.com) at August 28, 2014 11:04 AM

GeoSpatial Camptocamp

Camptocamp à la conférence FOSS4G 2014

Les core développeurs d’OpenLayers, MapFish et GeoNetwork de Camptocamp assisteront à la conférence FOSS4G 2014 ayant lieu à Portland, OR, USA.

Lors des séances générales, du 8 au 10 septembre, Campocamp donnera les présentations suivantes :

  • « OpenLayers 3: a unique mapping library » par Eric Lemoine: cette conférence présentera les dernières avancées de la bibliothèque OpenLayers, tout en mettant l’accent sur ​​les aspects qui distinguent OpenLayers 3. Entre autres, OpenLayers 3 utilise des technologies, des techniques et des algorithmes qui permettent un rendu vectoriel de haute qualité et de haute performance. Cette présentation enseignera les optimisations techniques utilisées par OpenLayers 3 en interne et comment elles peuvent être utilisées dans des applications de cartographie Web.
  • « Next Generation of Printed Maps » par Jesse Eichar : MapFish-print est une bibliothèque et une application Web pour l’impression de cartes et de rapports à l’aide de données provenant de multiples solutions de cartographie Web en ligne comme WMS, WMTS, OSM, WFS, GeoJSON, etc. MapFish-print V3 est le résultat d’un changement majeur dans la mise en œuvre sous-jacente. Grâce à l’intégration avec les rapports Jasper et la nouvelle architecture, la nouvelle version de MapFish-print est plus puissante, plus flexible et plus évolutive qu’auparavant. Cette présentation, destinée principalement aux développeurs et gestionnaires  de sites Web, se penchera sur les nouvelles fonctionnalités, le créateur de rapports, le formatage avancé,  la mise à jour, les décisions de conception, etc.

Eric Lemoine représentera également Camptocamp à deux ateliers intitulés « OpenLayers 3 – First contact » où les participants pourront se familiariser avec les concepts de base d’OL3 et « FOSS4G routing with pgRouting, OpenStreetMap road data and OpenLayers » où les participants pourront apprendre à ajouter des fonctionnalités de routage à PostGIS avec pgRouting. De plus, Jesse Eichar représentera Camptocamp à l’atelier « GeoNetwork for dummies, or how to setup and use an SDI in 3 hours ».

Étant le plus grand rassemblement mondial axée sur les logiciels SIG Open Source et attirant développeurs, utilisateurs, décideurs et observateurs de partout dans le monde, FOSS4G est certainement une excellente occasion de rencontrer nos développeurs expérimentés travaillant sur ​​les paquets de base de nos solutions SIG. N’hésitez pas à leur demander une démonstration des nouvelles fonctionnalités de nos solutions!

Cet article Camptocamp à la conférence FOSS4G 2014 est apparu en premier sur Camptocamp.

by Stéphanie Debayle at August 28, 2014 08:48 AM

August 26, 2014

Jackie Ng

I have a dream

I have a dream

Where MapGuide and FDO source code are hosted and/or mirrored on GitHub.

Where by the virtue of being hosted on GitHub, these repositories are set up to take advantage of every free service available to improve our code quality and developer workflow:
  • TravisCI for Continuous Integration of Linux builds
  • AppVeyor for Continuous Integration of Windows builds
  • CoverityScan for static code analysis
  • Coveralls for code coverage analysis
  • What other awesome services can we hook on here? Please enlighten me. I'd really want to know.
Where a single commit (from svn or git) can start an avalanche of cloud-based services that will immediately tell me in several hours time (because C++ code builds so fast doesn't it?):
  1. If the build is OK (thanks to Travis and AppVeyor)
  2. Where we should look to improve our test coverage (thanks to coveralls)
  3. Areas in our codebase where we should look to change/tweak/refactor (thanks to coverity scan)
  4. Other useful reports and side-effects.
Now the difference between dream and reality is that there are clear obstacles preventing our dream from being realised. Here's some that I've identified.

1. Git presents a radically different workflow than Subversion

Yes, we're still using subversion for MapGuide and FDO (har! har! Welcome to two-thousand-and-late!). Moving to GitHub means not only a change of tools, but a change of developer workflows and mindset.

So in this respect, rather than a full migration, an automated process of mirroring svn trunk/branches (and any commits made to them) to GitHub would be a more practical solution. Any pointers on how to make this an idiot-proof process?

2. Coverage/support is not universal

MapGuide/FDO are multi-platform codebases. Although TravisCI can cover the Ubuntu side and AppVeyor can cover the Windows side, it does leave out CentOS. I've known enough from experience (or plain ignorance) that CentOS and Ubuntu builds need their own separate build/test/validate cycles.

And actually, Travis VMs being 64-bit Ubuntu Linux doesn't help us either. Our ability to leverage Travis would hinge on whether we can either get 64-bit builds working on Linux or am able to cross-compile and run 32-bit MapGuide on 64-bit Ubuntu, something that has not been tried before.

Also most service hooks (like coveralls and CoverityScan) target Travis and not AppVeyor, meaning whatever reports we get back about code quality and test coverage may have a Linux-biased point of view attached to them.

3. The MapGuide and FDO repositories are HUGE!

The repositories of MapGuide and FDO not only contain the source code of MapGuide and FDO respectively, but the source code of every external thirdparty library and component that MapGuide/FDO depends on, and there's a lot of third-party libraries we depend on.

If we transfer/mirror the current svn repositories to GitHub as-is, I'm guessing we'd probably be getting some nice friendly emails from GitHub about why our repos are so big in no time.

Also would Travis and AppVeyor let us get away with such giant clones/checkouts happening every time a build is triggered in response to a commit? I probably don't think so. Then again, I do live in a country where bandwidth doesn't grow on trees and our current government has destroyed our dreams of faster internet. What do I know?



So what do you think? Is this dream something worth pursuing?

by Jackie Ng (noreply@blogger.com) at August 26, 2014 12:38 PM

OSGeo News

Call for Abstracts for FOSS4G-Asia 2014

by aghisla at August 26, 2014 08:27 AM

SourcePole

Sourcepole Kursprogramm Herbst 2014

Im November 2014 bietet Sourcepole wieder sein kompetentes Kursprogramm rund um alle GDI Komponenten an. Zu allen Kursen gehört umfangreiches Kursmaterial, Mittagessen und Kaffepausen. Bei Buchung eines Grundkurses und dem darauf folgenden Aufbaukurs erhalten die Teilnehmer Rabatt auf den Kurspreis.

Geo-Datenbank:

  • PostgreSQL / PostGIS Einführung (3. - 4. November 2014)
  • PostgreSQL / PostGIS für Fortgeschrittene (5. November 2014)

Desktop GIS

  • QGIS 2.4 / Enterprise Desktop Grundkurs (10. - 11. November 2014)
  • QGIS 2.4 / Enterprise Desktop für Power User (12. November 2014)

GDI

  • Verteilte GDI mit der QGIS Suite und PostgreSQL (20. November 2014)

QGIS Programmierung

  • QGIS 2.4 / Enterprise Plugin Entwicklung mit PyQt4 und PyQGIS (17. - 18. November 2014)

Informationen zu den Kursen und die Online Anmeldung finden Sie im Kursprogramm

Wir freuen uns darauf Sie in Zürich begrüssen zu können.

by hdus at August 26, 2014 07:55 AM

Peter Batty

Denver Union Station guide

This is slightly off topic, but as a side project I have just put together a small web site which is a guide to all the cool new developments at Denver Union Station. If you live in (or are visiting) the Denver area and haven't checked out Union Station recently, you definitely should! And to make it not totally off topic, there will be an interactive map appearing on the site shortly, I just

by Peter Batty (noreply@blogger.com) at August 26, 2014 04:16 AM

August 25, 2014

GeoSolutions

JRC portal for the Danube area implemented in collaboration with GeoSolutions

drdsi

Recently the DRDSI (Danube Reference Data Infrastructure and Services) portal was launched  to the development of which staff of the Joint Research Centre (JRC) together with staff members of GeoSolutions have contributed. The JRC, with the support of the scientific partners of the countries of the Danube, has launched the project to develop the Danube Reference Data Services and Infrastructure (DRDSI) that will facilitate access to scientific datasets comparable and harmonized on various issues related to the region, in support of the EU Strategy for the Danube Region (EUSDR) The Joint Research Centre of the European Commission coordinates this initiative, whose main objective is to provide scientific support for the EU Strategy for the Danube Region (EUSDR), focusing on four areas of priority:
  • Environmental Protection
  • Irrigation and agricultural development
  • Navigability
  • Energy Production
In addition, the initiative also aims to facilitate the development of Smart Specialisation Strategies to encourage innovation in the Danube region. The initiative comes from a close cooperation between JRC and important scientific partners from the Danube area. The project has been developed with an integrated approach, organized by  thematic areas (Flagship Clusters); in this initiative will be collected data and identified scientific skills that will help to identify the policy measures and the actions necessary for the full implementation of the EU Strategy for the Danube Region. The portal DRDSI offers a wide range of features. It is entirely based on open source software, it provides the user with cataloging and metadata searching functionalities (by using CKAN) while providing the ability to interface with advanced features for browsing geographic data on the map (with the support of MapStore). The peculiarity that underlies the entire infrastructure, consists of the fact in the integration of separate components with the objective of providing a single, slender point of access to data for all the involved regions . The main objective of the project is to harmonize the set of services and information provided in a intuitive way for the user. The MapStore framework  (versione 1.6) was appropriately updated for this purpose  to ensure:
  •  Tools to inform the user about the loaded map services status and the relive messages
[caption id="attachment_1680" align="aligncenter" width="697"]mapstore2 MapStore at work for map preview[/caption]
  • Easy-to-use functionality of maps embedding and preview
[caption id="attachment_1677" align="aligncenter" width="952"]mapstore MapStore based map preview[/caption] For the publication of the metadata aggregated from the various sources in the area the CKAN framework (versione 2.2) has been equipped with special additional features such as:
  • Extension for geographical research.
  • Extension to support the Harvest CSW.
  • Extension for customization of the entire graphic interface in order to maximize their effectiveness in relation to the context of use (see figure below).
[caption id="attachment_1678" align="aligncenter" width="1024"]drdsi DRDSI Portal homepage[/caption]
  • Extension for the integration of the framework MapStore as cartographic display of preview (simple and advanced) of associated data. This component has been developed with the intention of providing a quick, easy, and customizable access to maps. The  support for a shopping-cart allowing the selection of the maps that the user wants to see once the search has been made is also available.
[caption id="attachment_1679" align="aligncenter" width="1024"]drdsi2 DRDSI Search functionality at work[/caption] All the  developed  features are available as Free and Open Source software and are released in their code repository or in the GitHub di GeoSolutions. The GeoSolutions team,
http://www.geo-solutions.it

by simone giannecchini at August 25, 2014 12:00 PM

gvSIG Team

Checking geometries

Traduzco un post publicado por Joaquín del Cerro hace unos días que puede ser interesante:

Hello everyone back again,

It was some time ago I didn’t write this blog but I have been really busy working on new gvSIG developments. Anyway the other day, somebody said me they needed a new tool for check geometry problems in a table before load it into a posgreSQL database. They told me….

“It would be nice if we could have a tool that processes geometries in a layer, list all the problems and it allows clicking the geometry conflict and, better yet, locating the geometry conflict”

Indeed, gvSIG does not have anything near it but straight away I thought that, with a bit of luck, I could get a similar tool which they need.

But the script isn’t as simple. It cuts across a whole range of variables although it is not too big and it can help to design more complex tools.

The principle is simple: we analyze the features of the layer, select geometry and we invoke the method: “getValidationStatus”. This method is designed to validate geometry and returns information about validation process: identify problems and if it is possible where they are. Thus, we are building up a little HTML validation report.

An entry is generated for each incident with the following information:

  • Line number where the incident is located
  • Dump data with feature for line
  • Description of the problem
  • Link to the incident is located. Instead of add an URL, we will add the WKT point for the incident layer.
wktgeom = vs.getProblemLocation().convertToWKT()
output.write('<a href="%s">%5.5d</a> %s<br>%s' % (wktgeom,i, feature.toString(),vs.getMessage()))

Once we have been analysed all the features we will have to generate the report. To do so, we will display a window with HTML text using “showTexDialog” function from “ApplicationManager”.

application = ApplicationLocator.getManager()
application.showTextDialog(
  WindowManager.MODE.TOOL,
  "Problems in layer "+layer.getName(),
  informe.getvalue()
)

It would be enough if we simply want to generate the report but it would be very nice if the incident area is displayed on the screen by clicking the incident in the report. To do this, we will have a bit more work to do. “showTextDialog” function allow us to pass a “listener” as optional parameter to receive events coming from HTML report. To do so, we will have to create a class to inherit from “HyperlinkListener”.

class MyHyperlinkListener(HyperlinkListener):
  def __init__(self,vista):
    self.vista = vista
    
  def hyperlinkUpdate(self, h):
    if str(h.getEventType()) == "ACTIVATED":
      wktgeom = h.getDescription()
      print wktgeom
      manager = GeometryLocator.getGeometryManager()
      point = manager.createFrom(wktgeom)
      centerViewinPoint(self.vista,point)

Our class will have in the constructor, a view to work with and we add the code to execute in “hyperlinkUpdate” method. The code will be executed every time while interact with link of our report. Either because we mouse over the link or because of we click on the link. We will insert the code in this method, verifying that click the link is filtered. Then, we will receive “ACTIVATED” event type. We will use the associated point for the hyperlink and rebuild our point according we had added to WKT point.

manager = GeometryLocator.getGeometryManager()
point = manager.createFrom(wktgeom)

And then you pan the view to the point

centerViewinPoint(self.vista,point)

There are a few more things to comment…

Sometimes, it will be run on the big layers and it would be nice if it included progress reporting. To do so, we will use “taskStatus” variable. It is associated with each script to report progress of the process. First of all, we associate it to the application status bar to see the progress of the process. That’s as simple as invoking the “add” method of the variable.

Then we will use the “setRangeOfValues” method to indicate the iterations necessary for our process. With this method, we will indicate that iterations go from 0 to number of records included in the layer to process.For each iteration, we will invoke “setCurValue” method to keep the process located. After our features have been reviewed we will invoke “terminate” method to get rid of “taskStatus” variable and indicate that the process is completed. Finally, we will use “remove” method to delete the variable from gvSIG status bar.

try:
  # Adding a progress bar to the gvSIG status bar
  taskStatus.add()
  # Indicate the number of iterations
  taskStatus.setRangeOfValues(0,layer.features().getCount())
  for feature in layer.features():
    # For each iteration there is a report process in the progress bar indicating where is located
    taskStatus.setCurValue(i)
    ...
    i+=1
finally:  
  # Finally
  # For indicate to the status bar the process is completed
  taskStatus.terminate()
  # To delete from gvSIG status bar
  taskStatus.remove()

Well, it still lacks many details like catching errors, StringIO use to create reports or generate HTML code, but I believe that people who know something about gvSIG scripting and python programming could follow it. At the end of this blog you will find the full code.

I also have a problem with “certerViewinPoint” method. There is some calculation error and we can’t correctly pan the view. That is a minor detail that you can improve if you work with the script.

I hope it will serve you as gvSIG tool and example of new types of scriptings.

To test the script you need a layer with damage or non valid geometries. I have any missed layer, if I located it, I upload the layer and I give you the link to test.

The script just run with gvSIG desktop 2.1.0 build 2231 or higher ;)

Greetings everyone

Joaquin

from gvsig import *
from org.gvsig.tools.swing.api.windowmanager import WindowManager
import StringIO
from commonsdialog import *
from javax.swing.event import HyperlinkListener
from org.gvsig.fmap.geom import GeometryLocator
from org.gvsig.fmap.geom import Geometry

def centerViewinPoint(view,center):
    env = view.getMap().getViewPort().getEnvelope();
    movX = center.getX()-env.getCenter(0);
    movY = center.getY()-env.getCenter(1);
    minx = env.getMinimum(0) + movX;
    miny = env.getMinimum(1) + movY;
    maxX = env.getMaximum(0) + movX;
    maxY = env.getMaximum(1) + movY;
    env = GeometryLocator.getGeometryManager().createEnvelope(
          minx, miny,
          maxX, maxY,
          Geometry.SUBTYPES.GEOM2D);
    view.getMap().getViewPort().setEnvelope(env);
    view.getMap().invalidate()


class MyHyperlinkListener(HyperlinkListener):
  def __init__(self,vista):
    self.vista = vista
    
  def hyperlinkUpdate(self, h):
    if str(h.getEventType()) == "ACTIVATED":
      # Just process “ACTIVATED” events which are the clicks on the links
      #  Collect the geometry we have used in WKT link.
      wktgeom = h.getDescription()
      print wktgeom
      # Collect Rebuild the point from WKT
      manager = GeometryLocator.getGeometryManager()
      point = manager.createFrom(wktgeom)
      # Once we have that, we pan the view to the point centerViewinPoint(self.vista,point)


def main(*args):
  layer = currentLayer()
  if layer == None:
    msgbox("Select layer to validate")
    return
  informe = StringIO.StringIO()  
  informe.write("<ul>\n")
  i=0
  hay_problemas = False
  try:
    # Add progress bar to gvSIG status bar.
    taskStatus.add()
    #  Indicate number of iterations that are going to be carried out.
    for feature in layer.features():
      # For each iteration, we will report to the progress bar to keep the process located
      taskStatus.setCurValue(i)
      vs = feature.geometry().getValidationStatus();
      if not vs.isValid() :
        hay_problemas = True
        if vs.getProblemLocation()!=None:
          wktgeom = vs.getProblemLocation().convertToWKT()
        else:
          try:
            # Catch the errors to avoid failure in calculating centroid
            # because of damage geometry.
            wktgeom = feature.geometry().centroid().convertToWKT()
          except:
            wktgeom = None
        informe.write("<li>")
        if wktgeom == None:
          informe.write('%5.5d %s<br>%s' % (i, feature.toString(),vs.getMessage()))
        else:
          informe.write('<a href="%s">%5.5d</a> %s<br>%s' % (wktgeom,i, feature.toString(),vs.getMessage()))
        informe.write("</li>")
      i+=1
  finally:  
    # Finally
    # Indicate the process is finished to the progress bar
    taskStatus.terminate()
    taskStatus.terminate()
    # And eliminate it from the gvSIG status bar.
    taskStatus.remove()
    
  informe.write("</ul>\n")
  if hay_problemas :
    application = ApplicationLocator.getManager()
    application.showTextDialog(
      WindowManager.MODE.TOOL, # TOOL or WINDOW  depending on whether we are interested.
      "Problems in layer "+layer.getName(),
      informe.getvalue(),
      MyHyperlinkListener(currentView())
    )
  else:
    msgbox("Layer "+layer.getName()+" is valid.")

Filed under: opinion

by elenasanchez232 at August 25, 2014 11:15 AM

GeoSolutions

Il JRC lancia il portale DRDSI per il Danubio realizzato con GeoSolutions

drdsi

Nei giorni scorsi è stato lanciato il  portale DRDSI -  Danube Reference Data and Services Infrastructure al cui sviluppo hanno contribuito, insieme allo staff del Joint Research Centre (JRC), alcuni componenti dello staff di GeoSolutions. Il JRC, con il supporto di partner scientifici dei paesi dell’area del Danubio, ha lanciato il progetto per sviluppare il Danube Reference Data and Services Infrastructure (DRDSI) che faciliterà l'accesso ai set di dati scientifici comparabili e armonizzati su vari temi legati alla regione, in supporto alla strategia UE per la regione del Danubio (EUSDR). Il Joint Research Centre della Commissione Europea coordina questa iniziativa, il cui obiettivo principale e’ fornire supporto scientifico alla Strategia UE per la regione del Danubio (EUSDR), concentrandosi su quattro aree di priorita’:
  • Protezione ambientale
  • Irrigazione e sviluppo dell’agricoltura
  • Navigabilita’
  • Produzione di energia
Inoltre, l’iniziativa punta anche a facilitare lo sviluppo di strategie di Smart Specialisation per favorire l’innovazione nella regione del Danubio. L’iniziativa nasce da una stretta collaborazione del JRC con partner scientifici di rilievo nell’area del Danubio, e viene sviluppata con un approccio integrato, organizzato per aree tematiche (Flagship Clusters); in questa iniziativa verranno raccolti dati ed identificate competenze scientifiche che aiuteranno ad identificare le misure politiche e le relative azioni necessarie ad una piena realizzazione della strategia EU per la Regione del Danubio. Il portale DRDSI offre un'ampia gamma di caratteristiche. Interamente basato su software OpenSource, garantisce all'utente funzionalità mirate alla catalogazione e ricerca di metadati (grazie all’utilizzo di CKAN) garantendo allo stesso tempo la possibilità di interfacciarsi con funzioni avanzate per la consultazione di dati geografici su mappa (col supporto di MapStore). La peculiarità che sta alla base dell'intera infrastruttura, consiste di fatto nell'integrazione di componenti distinte con l'obiettivo di fornire un unico e snello punto di accesso ai dati per tutte le regioni interessate. L'intento fondamentale, in un contesto di questo genere, punta dunque ad armonizzare l'insieme di servizi e delle informazioni offerte in modo facile ed intuitivo per l'utente. Il framework MapStore (versione 1.6) è stato a tale scopo opportunamente aggiornato per garantire:
  • Funzionalità di embedding delle mappe più snelle
mapstore2
  • Strumenti di controllo mirati in grado di informare l'utente sullo stato dei servizi di mappa caricati e relativi messaggi.
mapstore Per la pubblicazione dei metadati la piattaforma di base CKAN (versione 2.2) è stata dotata di specifiche funzionalità aggiuntive quali: Estensione per ricerche geografiche.
  • Estensione per il supporto all'Harvest CSW.
  • Estensione per la personalizzazione grafica dell'intera interfaccia al fine di massimizzare l'efficacia in relazione al contesto di utilizzo.
drdsi
  • Estensione per integrazione del framework MapStore come visualizzatore di preview cartografiche (semplici ed avanzate) di dati associati. Tale componente è stata sviluppata con l'intento di fornire un facile, rapido e personalizzabile accesso alle mappe. Mette inoltre a disposizione il supporto per lo shopping-cart che consente la selezione delle mappe che l’utente vuole consultare una volta effettuata la ricerca.
drdsi2 Tutte le funzionalita' sviluppate sono a disposizione come software Free e Open Source e sono rilasciate nelle rispettive repository di codice o sotto le repository GitHub di GeoSolutions. The GeoSolutions team,
http://www.geo-solutions.it

by simone giannecchini at August 25, 2014 09:00 AM

August 22, 2014

Antonio Santiago

Releasing code samples for The Book of OpenLayers 3

Writing a book is hard, requires constance and motivation and, more important, be strong to keep them both. Least but not last you need time. Time to see the source code and learn. Time to see the examples and learn. Time to understand all the concepts and learn. Time to explain in your words what you have learnt.

Today, I announced the links where you can find the online samples and code repository for The book of OpenLayers3. Code repository is open, so don’t hesitate to download and contribute with new samples.

The work is not complete, I need to finish the theory part of a chapter related to vector information and write two more chapters I have in mind and, of course, create some samples to see the theory in practice. I will write another post introducing the book with a more in depth chapter description. This post is only about the code samples. Your feedback is really valuable for me !!!

The book of OpenLayers3

About the code samples

For those interested in contribute, the project for the code samples is built using the Yeoman tool, which combines Grunt and Bower, and the generator for web application generator-webapp, which offers a project skeleton with a bunch of good practices.

In addition to the default plugins used by the generator, I made use of the Grunt’s plugin grunt-includes (see here) that implement like PHP include directive. This way, I can create a page layout (with headers, footers, etc) reusable for all the pages. See the package.json file for more details about plugins.

For the implementation I made use of the Bootstrap framework, the nice Yeti theme from Bootswatch project and the highlight.js project to highlight the samples code. See more details of project dependencies in the bower.json file.

Related Posts:

by asantiago at August 22, 2014 09:05 PM

GeoSpatial Camptocamp

Camptocamp partenaire argent du 4ème forum GeOnG

L’association CartONG organisera les 22 et 23 septembre 2014 à Chambéry le 4ème GeOnG, le forum de l’information géographique pour les organisations humanitaires, avec pour thème « Donnez un sens à vos données ».

Camptocamp est heureux de s’associer à l’événement en devenant partenaire argent de la manifestation. Dans ce cadre, nous viendrons présenter l’infrastructure de données spatiales geOrchestra.

Le programme et les informations pratiques du forum sont disponibles sur le site http://www.cartong.org/fr/geong/2014.

Nous vous invitons à venir nombreux à cette manifestation qui témoigne de l’importance grandissante des données géographiques et des moyens d’en faire usage dans le cadre d’interventions humanitaires et de projets de développements.

Cet article Camptocamp partenaire argent du 4ème forum GeOnG est apparu en premier sur Camptocamp.

by camptocamp at August 22, 2014 12:50 PM

August 21, 2014

FOSS4G 2014

Extracurricular adventures, don’t forget the Map Gallery, and schedule updates

Your registration is paid (what? not yet? register now!), your bags are near-packed, and now you’re wondering what else to do in Portland — in addition to a fantastic week of development, networking, and geo-geek revelry. See below for things you may have forgotten, an update on lodging, info on the program schedule, field trips, and a party on Null Island.

Right now: Map gallery reminder

Tick-Tock, tick-tock…. what was that one thing you were forgetting? Something about a map? Oh yes! Submissions to the FOSS4G Map Gallery are rolling in and the deadline of August 31st is looming large.

Have you toiled over a great map recently using open tools and/or data? Your map may be the result of a commercial venture or a personal challenge. Use whatever combination of technologies and data you choose. Map makers of all kinds are encouraged to participate, fame, glory and fabulous prizes await!  Submit your map now!

Tuesday, 9/9: FOSS4G Welcome Reception hosted by Ecotrust and Point 97

Kick off the 2014 FOSS4G conference like a local in the heart of Portland’s Pearl District. The Natural Capital Center offers visitors a first hand experience with convention challenging principles that put Portland on the map as a leader in creativity, design, and impact in a time of tremendous change and pressure on social and environmental resources.

Your hunger for maps, pre-conference conversation, and local flavor will be well satisfied. An assortment of beverages and food will be available, with free drink tokens for those who RSVP. Guests are invited to connect with people and place through Ecotrust and Point 97 mapping technologies, which are shaping the long-term economic and environmental health of terrestrial and marine environments. Feel free to take a tour of the 120-year old Natural Capital Center — headquarters for Ecotrust, Point 97 and home to over two dozen social enterprises that are changing the way we live, work, and do business.

  • Where: Natural Capital Center, 721 NW 10th Ave, Portland, OR 97209
  • When: Tuesday September 9th, 2014
  • RSVP: http://youareherereception.eventbrite.com . A reception RSVP is kindly requested. Those attendees that RSVP before September 2nd, 2014 will receive two beverage tickets for the evening.

Wednesday, 9/10: Maptime and Null Island! Party

Maptime is a conglomeration of hands-on, beginner-focused meetup groups for learning about web maps, open-source spatial analysis, and geographic concepts. They recently hit 30 (THIRTY!) meetup groups around the world, and figured it was time for a party! Come join them as they celebrate the growth of their organization, the first birthday of Maptime Null Island (with t-shirts), and the awesome community being creating. They’ll buy the first round…

Wednesday (again): LocationTech BOF

Organized during FOSS4G week in Portland, this LocationTech Birds of a Feather Meetup is a chance to meet members, project developers, entrepreneurs, and other interesting people for an enjoyable evening of good food, drinks, and camaraderie.

Field trips and tours

You traveled all the way to Portland so be sure to take some time to relax and explore our beautiful little corner of the world with one of our field trips or tours:

Space is still available, but limited. To register for an activity, visit the main registration page (scroll towards the bottom for tours etc). You can register for field trips separately from the main conference. If you need assistance or have questions, contact support at foss4g-info@osgeo.org.

Updated conference schedule

The schedule has been updated with the latest details and is full of great workshops, presentations, and events. Take a look and start sketching out your conference now to ensure that you don’t miss any crucial content.

Lodging Update

Our room blocks at the Doubletree and Staybridge have filled. However, the Staybridge is offering a limited number of additional rooms at the group rate based on availability. We recommend calling them ASAP to try and get a room. For a room at the Staybridge, contact Megan Black, (503) 262-8888, ext. 2004. Depending on availability, she may extend the rate.

If you are unable to find a room at either of those locations, there are numerous other hotels in the area around the Oregon Convention Center; many attendees have also had luck with AirBnB or one of a number of the guesthouses in Portland (search Portland Guesthouse).

Important Conference Dates

See the full calendar for more details.

  • Sep 8th-9th: Workshops
  • Sep 10th-12th: Main Conference
  • Sep 13th: Code Sprint

The post Extracurricular adventures, don’t forget the Map Gallery, and schedule updates appeared first on FOSS4G 2014.

by K.Bott at August 21, 2014 05:46 PM

August 20, 2014

GeoSolutions

GeoSolutions workshops at FOSS4G 2014

foss4g2014

Dear Reader, GeoSolutions is proud to announce that Andrea Aime, our technical lead on GeoServer, and Mauro Bartolomeoli, our technical lead on MapStore, will attend this year FOSS4G in Portland to give a few workshops on our technologies. The conference will take place at the Oregon Convention Center between 8th and 13th of September  2014 (here is the complete schedule including events on the weekend before the conference). Specifically the 8th and 9th will be dedicated to workshops (here is the workshop schedule). The schedule for our workshops is as follows:
  • SpatioTemporal data handling with GeoServer: an introduction with examples for MetOc and Remote Sensing data for WMS and WCS with Mauro Bartolomeoli, 8th of September - morning session. This workshop will provide detailed information on how to handle SpatioTemporal metadata in GeoServer for serving with OGC Services, with a particular focus on WMS and WCS.This workshop will provide detailed information on how to handle SpatioTemporal data in GeoServer for serving with OGC Services, with a particular focus on WMS and WCS.
  • Web mapping with OGC services and GeoServer: an introduction with Andrea Aime, 8th of September - morning session.  This workshop will provide an introduction to setting up high availability clusters for OGC services using GeoServer and GeoWebCache. In order to participate to the workshop no specific knowledge of GeoServer and GeoWebCache is required, but working knowledge with OGC service concepts and basic system administration is recommended.
  • Enterprise class deplyoment for GeoServer and GeoWebcache:optimizing performances and robustness with Mauro Bartolomeoli, 8th of September - afternoon session.  This workshop will provide guidance and hands on experience on how to optimize the performance of OGC services using GeoServer and GeoWebCache. In order to participate to the workshop a basic knowledge of GeoServer, OGC services, SLD styling is recommended.
  • Introduction to high availability clusters with GeoServer and GeoWebCache with Andrea Aime, 8th of September - afternoon session. This workshop will provide an introduction to setting up high availability clusters for OGC services using GeoServer and GeoWebCache. In order to participate to the workshop no specific knowledge of GeoServer and GeoWebCache is required, but working knowledge with OGC service concepts and basic system administration is recommended.
  • From data to maps and services with MapStore, GeoServer GeoNetwork and CKAN with Mauro Bartolomeoli, 9th of September -full day. This workshop will guide the attendees through creating a complete and flexible infrastructure for serving geospatial data based on the well-known Open Source components MapStore, GeoServer GeoNetwork and CKAN. A few real-world use cases will also be discussed at the beginning in order to put the information that will be provided in the second part of the workshop in the right context.
  • OGC services with GeoServer: from journeyman to master with Andre Aime, 9th of September - full day. The workshop will provide the attendees with an in-depth introduction to the GeoServer Open Source server useful for those who are (still??) not familiar with it but also for those who already using it as they will have the chance to ask questions directly to one of the main developers behind the software.
The workshops are meant to satisfy attendees with all level of knowledge of our technologies, from the uninitiated (e.g. Web mapping with OGC services and GeoServer: an introduction) to the advanced users looking for fine tuning tips and tricks (e.g. Enterprise class deplyoment for GeoServer and GeoWebcache:optimizing performances and robustness) or more ways to exploit the power of GeoServer (e.g. SpatioTemporal data handling with GeoServer: an introduction with examples for MetOc and Remote Sensing data for WMS and WCS). Looking forward to seeing you in Portland! The GeoSolutions team, 320x100_eng

by simone giannecchini at August 20, 2014 02:00 PM

Slashgeo (FOSS Articles)

FOSS4G 2014: Extracurricular adventures, don’t forget the Map Gallery, and schedule updates

August 19, 2014
Portland, Oregon, USA

Extracurricular adventures, don’t forget the Map Gallery, and schedule updates

Your registration is paid (what? not yet? register now! [1]), your bags are near-packed, and now you’re wondering what else to do in Portland — in addition to a fantastic week of development, networking, and geo-geek revelry. See below for things you map have forgotten, an update on lodging, info on the program schedule, field trips, and a party on Null Island.

Map gallery reminder

Tick-Tock, tick-tock…. what was that one thing you were forgetting? Something about a map? Oh yes! Submissions to the FOSS4G Map Gallery [2] are rolling in and the deadline of August 31st is looming large.

Have you toiled over a great map recently using open tools and/or data? Your map may be the result of a commercial venture or a personal challenge. Use whatever combination of technologies and data you choose. Map makers of all kinds are encouraged to participate, fame, glory and fabulous prizes await!  Submit your map now! [3]

Tuesday! You are here!

FOSS4G Welcome Reception hosted by Ecotrust and Point 97

Kick off the 2014 FOSS4G conference like a local in the heart of Portland’s Pearl District. The Natural Capital Center offers visitors a first hand experience with convention challenging principles that put Portland on the map as a leader in creativity, design, and impact in a time of tremendous change and pressure on social and environmental resources.

Your hunger for maps, pre-conference conversation, and local flavor will be well satisfied. An assortment of beverages and food will be available, with free drink tokens for those who RSVP. Guests are invited to connect with people and place through Ecotrust and Point 97 mapping technologies, which are shaping the long-term economic and environmental health of terrestrial and marine environments. Feel free to take a tour of the 120-year old Natural Capital Center — headquarters for Ecotrust, Point 97 and home to over two dozen social enterprises that are changing the way we live, work, and do business.

  • Where: Natural Capital Center, 721 NW 10th Ave, Portland, OR 97209
  • When: Tuesday September 9th, 2014
  • RSVP: http://youareherereception.eventbrite.com [4]. A reception RSVP is kindly requested. Those attendees that RSVP before September 2nd, 2014 will receive two beverage tickets for the evening.

Wednesday! Maptime! Null Island! Party!

Maptime is a conglomeration of hands-on, beginner-focused meetup groups for learning about web maps, open-source spatial analysis, and geographic concepts. They recently hit 30 (THIRTY!) meetup groups around the world, and figured it was time for a party! Come join them as they celebrate the growth of their organization, the first birthday of Maptime Null Island (with t-shirts), and the awesome community being creating. They’ll buy the first round…

Wednesday (again)! LocationTech BOF!

Organized during FOSS4G week in Portland, this LocationTech Birds of a Feather Meetup is a chance to meet members, project developers, entrepreneurs, and other interesting people for an enjoyable evening of good food, drinks, and camaraderie.

Field trips and tours

You traveled all the way to Portland so be sure to take some time to relax and explore our beautiful little corner of the world with one of our field trips or tours:

Space is still available, but limited. To register for an activity, visit the main registration page (scroll towards the bottom for tours etc). You can register for field trips separately from the main conference. If you need assistance or have questions, contact support at foss4g-info@osgeo.org.

Updated conference schedule

The schedule [11] has been updated with the latest details and is full of great workshops, presentations, and events. Take a look and start sketching out your conference now to ensure that you don’t miss any crucial content.

Lodging Update

Our room blocks at the Doubletree and Staybridge have filled. However, the Staybridge is offering a limited number of additional rooms at the group rate based on availability. We recommend calling them ASAP to try and get a room. For a room at the Staybridge, contact Megan Black, (503) 262-8888, ext. 2004. Depending on availability, she may extend the rate.

If you are unable to find a room at either of those locations, there are numerous other hotels in the area around the Oregon Convention Center; many attendees have also had luck with AirBnB [12] or one of a number of the guesthouses in Portland (search Portland Guesthouse).

Important Conference Dates

See the full calendar for more details.

  • Sep 8th-9th: Workshops
  • Sep 10th-12th: Main Conference
  • Sep 13th: Code Sprint

Important Links

[1] Registration: https://foss4g2014.eventbrite.com
[2] Call for Maps: https://2014.foss4g.org/foss4g-call-for-maps/
[3] Submit your map: https://2014.foss4g.org/gallery-submissions/
[4] Tuesday Reception: http://youareherereception.eventbrite.com/
[5] Wednesday Maptime: http://maptimeparty.splashthat.com/
[6] Wednesday LocationTech: https://www.eventbrite.ca/e/locationtech-meetup-portland-tickets-12165801239
[7] Timbers Game: https://2014.foss4g.org/schedule/field-trips/#Timbers
[8] Walking Tours: https://2014.foss4g.org/schedule/field-trips/#WalkingTours
[9] Wine Tour: https://2014.foss4g.org/schedule/field-trips/#WillametteWine
[10] Beer Tour: https://2014.foss4g.org/schedule/field-trips/#Breweries
[11] Sessions Schedule: https://2014.foss4g.org/schedule/sessions/
[12] AirBnB Portland: https://www.airbnb.com/s/Portland–OR

About FOSS4G

The annual FOSS4G conference is the largest global gathering focused on open source geospatial software. FOSS4G brings together developers, users, decision-makers and observers from a broad spectrum of organizations and fields of operation. Through six days of workshops, presentations, discussions, and cooperation, FOSS4G participants create effective and relevant geospatial products, standards, and protocols.

FOSS4G has been held all over the world and draws attendees from over 40 countries. Nottingham, England hosted the conference in 2013. In 2014, Portland, Oregon, USA will host FOSS4G’s tenth year.

The post FOSS4G 2014: Extracurricular adventures, don’t forget the Map Gallery, and schedule updates appeared first on Slashgeo.org.

by Alex at August 20, 2014 12:44 PM

Andrea Antonello

The New York Natural Heritage Program embraces GeoPaparazzi! (a small preview of Geopaparazzi 4.0)

I am really excited to say that the Research Foundation for State University of New York really did embrace Geopaparazzi for some of their projects and sponsored a nice piece of functionality:

EDITING OF POLYGONS IN A SPATIALITE DATABASE!

This is a functionality that has been in the wishlist of many Geopaparazzi users and thanks to Tim Howard and his group, it is going to happen really soon.

I also hope to get them to write us a nice post about their use of Geopaparazzi in the field of mapping invasive species.

Since these new functionalities were calling for a geopaparazzi 4.0 release, it was about time to also do one other long wished (at least by me) change: make the Geopaparazzi project single file based, in order to be self-contained and compact.

I won't keep this post really long right now, it is more about letting you know what we are up to next and also thank the Foundation for State University of New York for the sponsorship.

To explain a bit the two main changes that will be in Geopaparazzi 4, a small preview of it in two quick and simple videos.

The first one focuses on the new project structure, which has changed from a folder structure to a single sqlite file:




The second one shows how to use the spatialite polygon creation and editing tools:


We are currently in testing phase and some small things may change, but this is more or less what it will look like.

Geopaparazzi 4 is going to be exciting, I am looking forward to it!
Enjoy!!



PS: There are two major downsides to this migration:
  • we will need a conversion tool to transform old Geopaparazzi projects into the new, single file based, project format. I have a huge archive of hiking and travelling projects I can't loose... they are kind of my diary.
  • the OSM tools were currently lost in the process, since the database notes structure has changed
We are currently out of resources to solve this right away, but we will do our best.



by andrea antonello (noreply@blogger.com) at August 20, 2014 06:59 AM

August 19, 2014

Jackie Ng

Announcing: CentOS build of MapGuide Open Source 2.6

As mentioned in my previous post, the CentOS blocker is now resolved.

This means we now once again have a functional CentOS build of MapGuide Open Source 2.6 which is now available for download on the 2.6 release notes page.

I'm still scratching my head as to how aclocal/libtoolize/automake/autoconf on a thirdparty MapGuide component somehow makes iconv_open() fail!

by Jackie Ng (noreply@blogger.com) at August 19, 2014 10:19 AM

GeoServer Team

GeoServer 2.6-RC1 Released

The GeoServer team is happy to account the 2.6-RC1 release, now available for download. This release contains a number of good improvements and bug fixes since the 2.6-beta release. See the change log for more details and check out the 2.6-beta announcement for more about what’s new in the 2.6 series.

Download the release candidate now and help us by reporting any problems in the bug tracker or to the mailing list.

Spot a translation mistake? Help translate here: GeoServer Latest localizations

About GeoServer 2.6

Articles and resources for GeoServer 2.6 series:

 

by Justin Deoliveira at August 19, 2014 01:09 AM

GeoTools Team

GeoTools 12-RC1 Released

The GeoTools community is delighted to announce the availability of GeoTools 12-RC1 for testing:
This release is made in conjunction with GeoServer 2.6-RC1 and contains some good bug fixes and improvements since 12-beta. See the change log for details and check out the 12-beta announcement for more information about what's new in the GeoTools 12 series. 

Download the release candidate today and help us by reporting any problems in the bug tracker

Thanks for using GeoTools.

by Justin Deoliveira (noreply@blogger.com) at August 19, 2014 01:09 AM

August 18, 2014

GeoServer Team

GeoServer 2.4.8 Released

The GeoServer team is pleased to announce the final maintenance release of the GeoServer 2.4 serieis.

You can download GeoServer 2.4.8 from our new website:

The GeoServer 2.4.8 Release Notes detail a small number of changes in this final maintenance release:

  • Performance: Avoid full namespace scan for GetFeature requests
  • WPS fixes including a new PagedUnique process
  • Fix for REST management of SLD files
  • Fix for working with JBoss and Oracle via JNDI
  • This release is made in conjunction with GeoTools 10.8 (see also GeoTools 10.8 Release Notes)

We trust you have enjoyed GeoServer 2.4. All users are encouraged to take opportunity to migrate to GeoServer 2.5.

by jgarnett at August 18, 2014 09:07 PM

GeoTools Team

GeoTools 10.8 Released

The GeoTools community is pleased to bring you the last maintenance release for GeoTools 10.
Downloads for GeoTools 10.8 are available now:
The GeoTools 10.8 Release Notes detail a few lonely fixes.
This is the final GeoTools 10 release, please migrate your applications to GeoTools 11.

About the GeoTools 10.x Series

The GeoTools 10.x series:
  • Initial Release: GeoTools 10.0 was initially released in September 2013 at FOSS4G 2013
  • Stable: GeoTools 10.x acted as the recommended stable release series until GeoTools 10.5 in February 2014
  • Maintenance: The life of GeoTools 10.x was extended with an additional maintenance phase ending with todays release of GeoTools 10.8

by Jody Garnett (noreply@blogger.com) at August 18, 2014 07:07 PM

Bjorn Sandvik

Live tracking from Oslo to Bergen by foot - ready for takeoff!

Update August 2: I had to cancel the trip on day 3 due to serious illness in close family.

Follow the trip on: 
Tomorrow, Thursday 31 July, I'm starting on my four weeks hike from Oslo to Bergen. It's been a very nice and warm summer in Norway, so it's been hard to work on my real-time trekking map. But if everything works, you should be able to follow me on this map

I'll blog about the technicalities after the trip. The expedition code is available on GitHub under a GPL licence if you want to dig in: https://github.com/turban/oslobergen

A few notes: 
Hope it's working! :-)

Geek on hike


by Bjørn Sandvik (noreply@blogger.com) at August 18, 2014 02:05 PM

Slashgeo (FOSS Articles)

Open Source / Data Geonews: the 10 Years of OpenStreetMap adn Related News, WebGL Earth 2, and much more

Still catching up the geonews that showed up during our holiday break, here’s the open source / open data geonews in batch mode.

Open source geospatial software:

Open data:

Everything else open:

The post Open Source / Data Geonews: the 10 Years of OpenStreetMap adn Related News, WebGL Earth 2, and much more appeared first on Slashgeo.org.

by Alex at August 18, 2014 01:46 PM

Jackie Ng

Binary Search Algorithm: Applied in real life

When I announced the availability of MapGuide Open Source 2.6, we did not have a CentOS build available due to a serious blocking issue where iconv APIs would mysteriously fail within MapGuide.

The main symptoms of this iconv failure are:
  • Under default build settings, mgserver will fail on start up with a "could not load a transcoding service" error from the xerces library. The default build settings use iconv APIs to transcode strings within the xerces library.
  • The SHP FDO provider will throw a "memory allocation failed" error when attempting to connect to any SHP feature sources. The SHP provider also uses iconv APIs for narrow <-> wide string conversions.
While the first problem was worked around (by building xerces to use a different transcoder), the second one was truly back breaking. I didn't want to release 2.6 for CentOS where support for the most ubiquitous spatial data format was broken out of the box.

As a first priority after the 2.6 release, I went to see when this issue first cropped up and what was the offending component.

The 2.5.2 release for CentOS did not have this issue, so to eliminate FDO as the offending component I built the 2.5.2 release against the FDO 3.9 branch. Fortunately, the iconv failure did not show up, so we now knew that FDO was not the culprit. It was going to either be MapGuide or one of its Oem components that has caused this breakage.

Knowing that FDO was not the culprit, it was time to start identifying the svn revision in MapGuide that brought us this mess. Unfortunately, there's been quite a lot of revisions between 2.5.2 and 2.6 and knowing how long it takes to build and verify a single revision of MapGuide (because ... C++ code), it would be painstaking to build and verify every single revision.

So to take a logical shot in the dark as a means of reducing the set of svn revisions to identify, I picked the very first working revision of the 2.6 branch to see if this issue exists. It didn't (yay!), meaning our problem space is now reduced to 60 commits in the 2.6 branch.

One of these 60 revisions broke the CentOS build. Rather than wasting time building and verifying 60 individual revisions to identify the breaking revision, I took a more systematic approach and picked the closest "mid-point" revision that affected files in the Server/Oem/Common/Web directories.

If the problem showed up there, we can reduce the problem space to revisions older than that one being tested (ie. some revision older than the tested one introduced the problem), otherwise we can reduce it to revisions newer than that one being tested (ie. some revision newer than the tested one introduced the problem) and repeat the process, until our problem space becomes a single revision that fails. That revision is the revision that broke our CentOS build.

As the tale of my Trello card to track this problem can attest to, finding the offending revision was pretty quick.


And if the title of this post didn't give it away, this systematic process has a name: It's called a Binary Search Algorithm

Though in our case it's not a true binary search, more like a "biased" binary search in that although our problem space was 60 revisions, some of these revisions did not touch any part of the MapGuide Server/Oem/Web/Common code base, so such svn revisions can be excluded from our problem set. Also when the candidate revision to test landed beside a "big merge" revision, we tested that "big merge" revision as well just so we can immediately rule it out.

So there you have it. Knowing Binary Search is not just for passing your Computer Science exam or that Software Developer Job Interview or to implement various data structures, it has real life applications too like hunting down what commit broke your build.

Some might say, wouldn't a Continuous Integration system have caught this? Indeed it would've, but as I've talked about previously about how we make our builds of MapGuide, the Windows builds of MapGuide are built under Jenkins (which can detect and flag broken/unstable builds thanks to its rich ecosystem of plugins), but the Linux builds are not. Linux builds although they are mostly automated now, still require manual invocation (to start the vagrant provisioning process) and manual review of the various log files produced to see if anything broke. The offending revision obviously slipped through the radar.

The Linux build system obviously has much more room for improvement, something that we can now have the opportunity to explore now that 2.6 is out the door.

But before we go about that, let's put out that overdue 2.6 build for CentOS.

by Jackie Ng (noreply@blogger.com) at August 18, 2014 12:44 PM

GeoSolutions

Upcoming GeoServer training in Finland with our partner SITO

GeoServer

Dear All, The GeoSolutions team is proud to announce that Andrea Aime will hold a two days training on GeoServer at SITO premises in Espoo, Finland on the 26th and 27th of August 2014. The Training will be conducted in the English language by the trainer following the training material provided by GeoSolutions and available at this link. The GeoSolutions team,
http://www.geo-solutions.it

by simone giannecchini at August 18, 2014 12:00 PM

August 17, 2014

gisky

Turning an android device into a GIS workstation or server

Baseline: By installing Debian GIS on your phone/tablet/... next to Android, you can turn the device into a powerful GIS workstation or server without loosing any of the original functionality.

My experiments started earlier this week. I was informed of a bug in debian: saga gis failed to build on an arm processor (a type of low power chips often found in mobile devices). Rather than turning to some server provided by debian to fix the build I thought of doing something else: I knew my phone also has an arm processor. And since android is based on linux, I thought it should be possible to run debian on it in a seperate "chroot" environment.

After doing some research I found "debkit". This is actually an app you can install right through google play. This app will give some very simple instructions on how to install debian on your device (the device needs to be rooted. Otherwise it will not work). The actual instructions were very straightforward and I had a running debian installation with desktop support installed in less than one hour.

What you get is actually a full debian distribution, and in fact that means that you can also install a lot of GIS related packages.

Installing gdal through the command line

Since I was doing all of this on a smartphone, typing gets tedious very fast, so I used an external keyboard. And yes:  that looks really silly (check picture below). Even better is installing ssh, then you can connect from a pc or laptop to continue the installation.

attaching a keyboard makes typing easier :-)

You can even go one step further and install a graphical desktop environment, this means you can in fact run packages like qgis and saga on your phone. Though I agree that this is not very useful using a phone as a desktop replacement, it may be a powerful way to check some data or perhaps run a simple analysis in the field. Apart from that, plenty of tablets, cheap laptops and TV sets based on android or chrome os exist. Ones that you may prefer taking to the field rather than your real workstation. The screenshot below was taken from a desktop environment running on my phone. I should add that this works relatively smooth and was not stressing the device.
Hard to distinguish from a real desktop, but this is an actual screenshot taken on my smartphone (lenovo p780)


But perhaps even more useful is that you can actually run servers on the device as well. If you have a webapplication that usually runs on a debian server you may actually be able to take it with you on the device, and use the standard android browser to use it. Not something you would like as a proper solution, but could be worth it for proof or concepts, ...

Mapserver running locally and serving as a wms


It also shows nicely how you actually use debian next to android: you don't replace any existing things. It can lead to special situations as well. While I had just started compiling some software, I got a phonecall and just picked up the phone ...

All of this would not have been possible if all debian contributors would not have been so eager in supporting so many ports, and the debian gis team in bringing a lot of GIS software to the distribution! 


by Johan Van de Wauw (noreply@blogger.com) at August 17, 2014 09:22 PM

August 16, 2014

Kartoza

Playing with Foreign Data Wrappers in PostgreSQL

Recently I set out to try out the PostgreSQL foreign data wrapper (FDW) because I needed access to data that was in MySQL tables. The main reason I needed to play around was to expose my data to a range of PostgreSQL functions that are better and more recent that MySQL. I also needed to use MySQL data for views and lookups and data-driven styling for some Geoserver layers. FDWs allow remote access to tables or queries from various external third-party databases or file structures.

So this is a workflow I followed to do this on Ubuntu 14.04:

Install PostgreSQL and MySQL development files :

sudo apt-get install libpq-dev  postgresql-server-dev-9.3
sudo apt-get install libmysqlclient-dev

Clone mysql_fdw in your development folder:

git clone git@github.com:EnterpriseDB/mysql_fdw.git

CD into the mysq_fdw folder and run the following:

export PATH=/usr/lib/postgresql/9.3/bin/:/usr/bin/mysql:$PATH make USE_PGXS=1
sudo PATH=/usr/lib/postgresql/9.3/bin/:/usr/bin/mysql:$PATH make USE_PGXS=1 install

Then the SQL begins in PostgreSQL database by creating a database on the terminal or using your favourite gui (pgadmin3).
Create a database where you will have all your tables:

createdb mysql_fdw
psql -c 'CREATE EXTENSION postgis;' mysql_fdw

or in pgadmin create a database and then log into the database then run the following command:

CREATE EXTENSION mysql_fdw;

create a server that points to a database that you need remote access to:

CREATE SERVER mysql_svr 
FOREIGN DATA WRAPPER mysql_fdw 
OPTIONS (address '127.0.0.1', port '3306');

create a corresponding table to hold the data in PostgreSQL as a foreign table by selecting the values from mysql database “test”:

CREATE FOREIGN TABLE local_cadastre (
sg21 character varying (255),
province character varying (255),
munname character varying (255)
)
SERVER mysql_svr
OPTIONS (query 'SELECT sg21,province munmane from test.cadastre limit 500;');

Create user connection parameters in your database where you define the connection parameters to the mysql database:

CREATE USER MAPPING FOR PUBLIC 
SERVER mysql_svr 
OPTIONS (username 'user', password 'password123');

After that you have your foreign table in PostgreSQL database and you could run a select statement to return records from the table you have created. The data is dynamically fetched from MySQL tables and viewed in PostgreSQL.

If the data you are fetching from MySQL is static you can run the following to create a local copy of the table:

Create table  cadastre as select * from local_cadastre;

After that you have a PostgreSQL table and we can do our favourite PostgreSQL functions on our data. An advantage is if you had data in other databases and you have moved from them to our favourite PostgreSQL, but you need to keep the other database going for legacy clients,  then don’t worry about moving the data just maintain it where it is and play around with foreign data wrappers.

 

 


by Admire Nyakudya at August 16, 2014 09:45 AM