Releasing adventure mapping software
At Green Elk, we’re dedicated to finding suitable co-elks for you. A co-elk is somebody you go out to explore and enjoy the great outdoors with. We do this to scratch our own itch, because we think outdoors is more fun together.
We also have another itch to scratch: We love to learn from our past adventures! Where exactly were we? How far did we go? How long did it take?
Answering seemingly trivial questions about past trips not only satisfies our curiosity, but helps us plan our next adventures. What’s a good day-trip distance? When and where should we have lunch? What’s a good speed to keep, given that enjoying life means both exploration and regeneration?
This is why we created kajgps.py, our adventure mapping software. It’s a piece of software to analyse GPS tracks and visualise them. Personally, I have collected GPS tracks on and off for nearly ten years, with various pieces of hardware (Polar and Garmin sports watches, GPS trackers) and various software apps (on a number of phones). Each device or service comes with proprietary software for showing tracks recorded using technology from that vendor only. Data is collected in various formats, some of which are de-facto encrypted, others of which are written in text form. Usually some form of GPX export is supported. What I missed is a cross-device, cross-platform repository of tracks, that makes it as easy as possible to use track data.
The best analysis is often very simple statistics: How far did we go before the first break? What was our speed in each of the stretches? How long was our lunch break? The answers to those questions can be visualised in various ways:
- as texts (in HTML pages or PDF files)
- graphically (in SVG files, with an annotated track)
- as input for existing map visualisation software (through KML and GPX files).
The goal when creating kajgps.py was to distil the core of the information from the GPS track and package the result in an open, easily digestible structure, for usage in browsers and map visualisation software on mobile devices and in the web. We wanted to be independent of hardware and software vendors, and concentrate on the most common and most open formats.
In fact, we wanted to take openness as far as we knew how to take it. That means releasing the software on GitHub under the GPLv3 license. We chose this license not just because we believe it’s a great FOSS license, but as I personally share the pride in being part of creating it, as a former co-chair of the Discussion Committee B, back nearly ten years ago when Eben Moglen coordinated the creation of the GPLv3 for the Free Software Foundation and I was VP Community Relations of MySQL AB.
Expect to see another blog entry soon, with pointers to our GitHub page, and with elementary documentation.