Map Editor : Josm

JOSM is a map editor, written in Java specially for openstreetmap. It is structured as a comprehensive editor with Java plugins. I have used JOSM extensively in my Openstreetmap contributions. JOSM takes a good deal of learning but nowhere near as much as learning how to map, tags to use, conventions etc. etc for the Openstreetmap database.

One or two of the plugins interested me. One of them, Livegps, listens to a gps receiver and plots where you are on the screen. Another, Surveyor, allows you to annotate where you happen to be at a particular moment with various observations like "bridge", "roadname" etc.

When I first began using JOSM it was undergoing significant development. Naturally the first thing that I did was to hit a very annoying bug that had been extant for 5 months and seemed not to be in the process of being fixed. I did try to fix it but got no further than failing to be able to compile JOSM using the software development environment Eclipse which, as its name implies, is obscure. However, my thrashing about on the forum persuaded someone else to fix that immediate problem, so I am happy. The problem is that in places the code of a plugin relies on calling only functions which are thread safe. Unfortunately one was not and crashed the code on an unhandled exception every few minutes. All now in the past - thankyou JOSM developers.

The surveyor plugin (used to annotate your track) depends on the LiveGPS plugin which itself depends on GPSD daemon running. Surveyor (I think it was anyway) had a thread-unsafe function call problem but it did not stop the system, it only failed to enter the annotation you were in the process of entering. It only happens one time in three attempts, so I just live with it. Relying on thread safe function calls ain't wonderful practice, but life is short so I will live with the consequences.