We have written about the OpenStreetMap (OSM) project many times, but we have yet to explain how to get started with it as a contributor. Since it is the vacation high season in the Northern Hemisphere and many more people will be hitting the maps, this is the perfect time. You can contribute a lot to the project even if you don't own a Global Positioning System (GPS) device -- or even a compass.
Maps != GPS
Perhaps the biggest misconception among people who know of but have not contributed to OSM (including myself, at the beginning) is the notion that you must own a GPS unit in order to help out. It is true that a GPS logger is the simplest way to collect the raw road traces that eventually become part of the map, but it is by no means mandatory. And even if you have a GPS logger and collect data, the vast majority of your time is spent editing the OSM map itself -- correcting, labeling, and updating what is already there. That works to the newbie's advantage, because there is already data available for much of the world.
If you live in the United States, there is a vast collection of untouched map data in the OSM database courtesy of a bulk import of the US government's TIGER map set. The TIGER data was generated from government-owned maps and aerial photography and is used by the Census Bureau. Consequently, although it is very good, it is far from perfect, especially with respect to new construction.
You can also help out by editing the GPS data provided by other users. Some may upload GPS tracks regularly but go a long time between editing sessions. In other cases, there are bulk GPS tracks uploaded by people who have donated them en masse -- such as the London courier service eCourier, which donated track data from its entire fleet.
Finally, an agreement with Yahoo! allows OSM to use the company's aerial photography data free of charge, so it is even possible to add roads to the map based on the Yahoo! imagery visible in OSM's map editors.
And even though roads receive the lion's share of the attention, OSM's goals include gathering a solid collection of points of interest (POIs) as well. Good POI info helps navigation, and you do not need GPS to add it. POIs include public places such as parks and attractions, government buildings, schools, churches, and anything else distinctive. Remember, POIs aren't just destinations, they are navigational aids -- any large or easily distinguished feature on the map helps users orient themselves and get where they want to be.
The simplest way to make improvements to the OSM map is to create an OSM Web account, log in, then examine the map of your local neighborhood. You can use the OSM Web site without logging in, but when you are logged in, you can click on the Edit link at the top of each page. This takes you to the online map editor Potlatch.
Potlatch presents a practice-only "Play" option when you first activate it; if you are just getting started, select Play mode and get the feel for working with Potlatch before editing a live session. Once you're ready, Potlatch will load the current map view in editing mode, using Yahoo!'s aerial imagery as a background, and overlaying a interactive rendering of the OSM data on top. The editor retrieves this map data live from the OSM server, so the changes you make go right back into the main database.
Potlatch presents map data in an editable interface using Flash, so you will need to access it using a Flash-supporting browser. Each road (or, as the OSM lexicon calls it, "way") can be edited by clicking on it. Clicking selects the way, highlighting it on the map, showing the waypoints that define its start, end, and curves, and displaying metadata such as street names and classifications beneath the map.
To correct way placement, grab a waypoint and drag it to the proper location. Potlatch automatically handles tedious tasks like creating intersections when you connect two roads. To correct or add metadata, use the buttons and selection widgets at the bottom.
Don't forget the POI information in addition to the ways. Double-click on the map in Potlatch to create a new POI, then edit its metadata at the bottom of the page.
Data collection and advanced editing
Once you've gained experience editing map data with Potlatch, you may want to branch out -- either into collecting GPS tracks yourself, or to more advanced editing tasks such as optimizing the number of points that describe a way in the database.
You can do GPS logging with a wide array of hardware-only or hardware/software combos. Here again your best source of information is the OSM wiki, which maintains a list of solutions.
One of the most interesting is the Linux-based Maemo Mapper, which runs on Nokia Internet tablets. Maemo Mapper can server as a mapping and route planning tool, but it can also log GPS tracks. With Maemo Mapper, you can switch on GPS logging and record all of your travels as GPS tracks, and save markers en route whenever you encounter POIs that you want to add later. An OSM wiki tutorial explains how to bind the tablet's hardware buttons to the key operations, allowing you to keep your eyes on the road as you log data.
Whether you collect it with Maemo Mapper, your GPS-enabled phone, or a standalone GPS unit, you can upload individual tracks to your OSM account using the site's GPS Traces button. OSM expects GPS traces in the form of GPS Exchange Format (GPX) files, a widely supported standard.
Once uploaded, you can see your GPS tracks in Potlatch, and use them to correct or add ways to the map. It is important to remember that the GPS track itself is not a way; you create the ways yourself using the GPS info as a reference.
In my first try, Maemo Mapper produced a lot of unreliable position data when I first activated the GPS and whenever I went inside a building. That is normal; lackluster connectivity when the GPS receiver is starting cold or obscured usually leads to bad data. But it does illuminate an important fact about GPS tracks: close enough is good enough.
What my GPS reported to me as I drove was 10-30 feet off compared to the way data already in OSM. But that is within the error of a typical GPS unit, so there is no way to tell whether my data or the map's is more accurate, and thus no reason to alter the ways in the database.
As easy-to-use as Potlatch is, when you start editing a lot of OSM data you'll want to move up to a more full-featured editor like JOSM. JOSM is a multi-platform, Java-based OSM editing app. It allows to you work offline by downloading relevant map data, then uploading the revised data only after you are finished making changes.
Working offline means you can make more substantial changes to the map; a long series of edits in the real-time editor Potlatch means making multiple updates that consume server time unnecessarily. And you can experiment -- for example, reducing the number of points that describe a curved section of road, or fixing a confusing multi-road crossover or underpass -- without running any risk of disturbing someone who happens to need the map at the moment.
What are you waiting for? Get thee to a mappery
The success of OSM depends on individuals volunteering their time. And although the core members of the project contribute heavily, don't for a minute think that you need to devote hours and hours or purchase costly electronics to make a difference. Start small: look at the OSM rendering of your own neighborhood; fix an error or two, and add some POIs.
There are a lot of ways to get involved in OSM, including plenty of opportunities for software developers, but everyone can add a little bit of data culled from their surroundings, and that's the best source of data there is.