Zverik's diary

Recent diary entries

Steve's Answers

Posted by Zverik on 15 January 2015 in English (English)

Two weeks ago Steve Coast held an AmA (Ask Me Anything) on Reddit. I've selected and rearranged some of his answers for this post, since he rarely expresses his point of view on lists or anywhere else.

Also, he agreed to participate in next week's Russian OSM Radio (in English, of course). You can submit your questions during the broadcast (22nd of January, 20:00-21:00 UTC) on #osm-ru IRC channel.

mr_gila: What inspired you to start up OSM?

There's a few different answers to that question. On one level, it was just kind of obvious. Back then, in 2004, Wikipedia was hot new technology and the wiki idea in general was spreading. Why not apply it to maps?

On another level, I had an old laptop with Debian Linux on it and a USB GPS device. I tried to use some mapping software but there were no maps. So why not make them?

On another level, the maps that were available in the UK and Europe tended to be very proprietary and expensive. So why not open them up?

On another level, I was young and naive.

Let's not forget though that OSM is now many, many people from all over the world. It wouldn't have worked if I hadn't convinced a lot of people to join in and help.

mapsandmapsandmaps: How did you find your time studying at UCL, and how much of an impact do you think this lead into you founding OSM? Does it feel strange that it has become a big topic of academic research with people like Muki Haklay writing papers about it?

UCL. I was working in a couple of PhD research labs and not paying much attention to studies. That mean I had the time and resources (computers with direct access to the internet, no NAT!) to go do OSM and other things.

Muki was in one of those research labs (as was Paul Torrens, Martin Dodge, Sean Gorman and others), so it's not entirely strange.

ManAboutCouch: Half-jokingly, how has OSM managed to get this far without a properly defined Polygon feature type?

OSM has succeeded, I think and in part, precisely because the data model (and other things) are/is so simple. When I started it, there were various calls for OSM to use all kinds of complicated schemas (like WFS). You'd blow your brains out just reading the specification. OSM to me in many ways was a people problem not a technology problem, and it's easier to fit the technology to the people (e.g. OSMs simple models) than it is to convince people to go use WFS.

NorbitGorbit: If you had to redo the map project from scratch, what sort of system would you use or design to handle crowdsourcing map data?

I think I'd pretty much do it the same with some tweaks.

I'm trying to be careful to assign credit. The addition of change sets and relations for example. I had similar ideas but I didn't implement those, and they're critical.

I think exploring tags beyond just keys and values, since we hack in third values by doing things like "addr:housenumber=42" for example.

Beyond the data model itself, waze really nailed some aspects of crowd sourcing. The human element of getting people to contribute certain things.

dv7d: Do you map? What do you like to map the most?

Yes I still map under a variety of usernames. I've been attacking addressing to get a feel for the complexity of it. I used to spend a lot of time cleaning up TIGER data. Map roulette is a good way to find random things to fix in the map:

GregZorz: What would you say to someone responding that your use of multiple accounts waters down ability to check authenticity/reliability of edits?

i'd say in the general case you're right but as the founder I've had satirical fake blogs set up about me, people follow me and other internet weirdness. So I take a degree of anonymity.

ManAboutCouch: Hi Steve, you're on record saying that you think the next big challenge for OSM is address data. Given the myriad of address systems in use across the globe, and how this is often perceived as 'less fun' than adding other features to the map, how do you see this challenge being met?

Frankly it's hard to see it happen within OSM any time soon. Addressing requires some bold moves. For example, only show roads on the OSM website which have addresses. That would instantly make the world go blank, and create a lot of pressure to add address data, similar to how OSM was 5-7 years ago but with more people and resources. That kind of bold move is unfortunately hard to make happen these days.

edparsons: Looking forward to the book, but to preempt it - Are there any decisions you made in the early days you now regret ?

I'll split this in to two. Mistakes and regrets.

Mistakes abound. OSM could have had an exit like waze. Segments (a data model we had prior to ways) diverted energy away. Trying to run mapping parties by telling people where or what to map rather than letting them self-select. Calling it OpenStreetMap when it's much more than streets.

Defining "mistake" would take too long, but we should note that many of these things are only mistakes when viewed under a certain light. Mistakes of some kind are inevitable when doing something new. I'm happy making mistakes because it means I'm learning something. What I discovered is that this doesn't apply to most people, for whom mistakes or even trying something which has a chance of becoming a mistake is... not something you do.

Which brings me to my only regret: Giving up too much power. I thought that everyone in the world thinks like I do, and would also give up power and try new things like I did. That for the most part simply didn't happen. It's worked out very well, and the people are great, and OSM hums along... but the days of taking big bets and risks is over. That drives me nuts, since there's so much more out there to do with open mapping than just making the map slightly better every year and running another conference. For example, addressing.

We've done very well, as you know. We blazed a trail for others to follow too. I just have a much higher set of ambitions, including OSM being "done" by now (which would include addressing, of course).

dalek2point3: Steve -- are you saying that you wished that OSM had gone down the route of for-profit crowd sourcing a la Waze, rather than non profit a la Wikipedia? Have you thought about these two modes and pros and cons of each?

That's why I mentioned "certain light" above, there are tradeoffs here. Being able to monetize would speed things up. It doesn't have to be all or nothing, open or closed. You can make data open after two years, or something.

The downside is you don't get the same unexpected use cases like the Humanitarian OSM Team going and saving the day in Haiti.

GregZorz: Forget mental regrets... looking back 10 years, is there a physical item(s), or data from a specific trip, you wish you you kept/saved/rescued?

I tend to throw things away. I remember the anecdote that when Jobs went back to Apple in '97 they had an Apple Museum with all the old computers and stuff in it. He closed it down. Or as I think Gates said, he doesn't spend a lot of time looking in the rear-view mirror.

I find those items like mapping t-shirts, paper maps, conference pens, old GPS units tie me to a past that is gone anyway. I'm much more interested in the future.

smellsliketuna: Do you get a lot of people pitching you on ways to leverage your previous mapping project, for for-profit ventures? It would seem to be a logical choice, given your knowledge and experience.

Yes - I'm on a few different advisory boards now for example. Notably Auth0 and ParkNav, the others are stealth.

mapsandmapsandmaps: What's your opinion on the open/proprietary software situation in the mapping/GIS industry and do you think open tools and data will eventually take over?

I don't think open software will take over because it's always playing catch up and very rarely customer-focused or original. As an example, select a group of numbers in Excel and it takes two clicks to color the cells by value. That is, green for low numbers through orange and red. A simple visualization that's very valuable that I use all the time.

Go try that in libre/open office, apple numbers or google docs. It's essentially impossible by comparison. Everyone tries to copy Excel (and ESRI and so on) but they always end up copying the wrong thing. See my talk and the part about Dubai copying New York:

alexandreleroux: Do you see Google ever moving to OSM for Google Maps/Earth data? Other major players have done it -- at least partially (Microsoft, Apple, MapQuest, Esri).

Google people have been super supportive of OSM including funding our conference and so on. I think OSM just moves too slowly for what they're trying to achieve, and that's fine. The world can support more than one map or one ideology.

I think it would be hard for Google for a couple of reasons. First is the investment. Who wants to be the guy to write off billions of dollars? Second, the map isn't actually good enough yet for them, and they're not done yet. They're trying to get cars to drive themselves which in part requires great maps, and they're not there yet.

Will it ever happen? Eventually. I think it depends how long Google (and OSM) lasts, which depends on them (G) finding more than one business model, which enters in to the realm of speculation.

Think about it like this: Would you bet people wouldn't use wikipedia? In the end, if OSM is good enough at zero price, why wouldn't you use it?

alexandreleroux: I heard lots of folk in the geospatial community claiming that it's OSM's ODbL license that reduces OSM data reuses.

The ODbL is a convenient thing to blame for not using OSM. I haven't found a use case yet where it wasn't really about something else, like a business decision. For example, some don't want to contribute addressing back to OSM and so "the license is bad". It's like saying wikipedia's license is "bad" because I have to credit wikipedia when I use it.

Is the license perfect? Absolutely not. But we're breaking new ground here. There isn't another large open data project close to the scope and size. Could we go public domain? Yes, but then it's an open question as to whether it would succeed without incentives to contribute anything to the pot. Hence discussion of Linux vs. BSD.

smellsliketuna: What future projects are you looking to get involved in?

I think there's a lot out there in the world that can be fixed. Search can be a lot better as an example. There are a lot of closed databases in the world that could be freed up. It feels like local businesses should have better services to help them with their online presence.

Then there are simple things. I'm noodling with this:

(Ed.) A pitch from another reddit post:

It feels like companies and startups need evangelists more than ever, but they're hard to find and retain. Why not contract that?

I've been an evangelist and hired them in the past. It's hard and expensive. Then when you have an evangelist, you have to pay a bunch of money to fly them around to conferences. They burn out. And then, when you go to a conference, most of the people manning booths aren't super excited or inviting.

So I figured, why not offer evangelism as a service? Help man your booth, plan great talks, run and attend meetups, help with online evangelism. Maybe you just want to know what's going on at conferences.

It's not a replacement if you want a full-time person who truly believes in your product, but it's a way to fill out your team or hire someone to do a conference for you here or there, far cheaper than hiring someone.

dv7d: How does the future of OSM look like?


Every day that goes by makes it harder to justify not using OSM in some way, because the map keeps getting better and the price is staying the same. I've said enough about addressing elsewhere here already, but it's the missing piece.

Calling mappers from Porto

Posted by Zverik on 5 January 2015 in English (English)

Hi everyone, I'll be visiting Porto in two days. Portugal is great, not as cold as Saint-Petersburg. We've already been to Lisboa, from where we recorded a holiday OSM podcast: English parts start at 2:00:30 (featuring Manuel Hohmann, Thomas "malenki" and Jerry Clough) and 3:01:15 (with Ian Lopez). The next issue will be recorded on 8th, 20:00-21:00 WET, and I very much hope to talk with a local, portugese mapper. Maybe even face to face, though usually I use Skype or Mumble.

So, if you map Portugal, or live in Portugal, or know someone from Portugal — contact me please. Also, I'm up for a osmers meeting in a cafe near Santo Ildefonso on 7th or 8th. I'm Ilya, my phone (for sms only) is +7 921 583-12-91.

update: radio recording today, 8th of January

Three questions

Posted by Zverik on 26 December 2014 in English (English)

We in Russia have a weekly podcast recorded live: OSM Radio (looks like RadioOSM, I know). Every Thursday we go online, discuss OpenStreetMap news and interview guests, either from OSM community or from OSM-related companies (Sputnik,, OsmAnd, NextGIS etc).

The next broadcast will be on the 1st of January. Because of the holiday, that won't be an ordinary podcast, but an "open mic" event. From 17:00 to 21:00 UTC we'll be receiving calls from OSM members (and making calls ourselves), and will ask three questions:

  • What was the most cool or satisfying thing you did in OSM last year?
  • What was the biggest event for you in OSM in 2014?
  • What do you expect of OpenStreetMap in 2015?

On that evening we expect to bring the community together and to make them hear each other, to really feel like a group united by the common goal. And I think it would be great to have English-speaking OSM members on air as well. Probably in the second half of the program. We are open till the last visitor, so if there are many osmers, we'll finish later. If you want to participate, call me by skype (zverikk) on the 1st after 19:00 UTC, or mail me ( your skype id, so I will call you myself. Mumble server is also available, mail me for its address. Let's make it an event to remember.

What I want

Posted by Zverik on 12 November 2014 in English (English)

Hi. I often drop hints about what our project misses, and now want to talk some bit more about a part I'm interested in. Since I joined OpenStreetMap, I have been interested in geodata collecting methods. I quickly grasped walking papers, put my GPS and camera to use, and struggled with georeferencing audio recordings. OSM allows for many types of sources, and in past years a lot were invented. But alas, not much in last years.

Walking papers (or field papers) are still produced from tiles., the "modern" service for generating atlases, is more than two years old and is a slight update to older, built in 2009. It stiches tiles and produces a PDF file. You have no control over map style, you can't even use your own tiles. "Toner" style, which is the best option, are updated infrequently: you might have to wait a week before traced buildings appear on it. And some of them still won't, since it's hard to grasp how it works and why it hides some features unpredictably. Finally, pages of an atlas will be oriented by cardinal directions, in a grid with 90° angles. Of course, not many towns have such proper road network, so you will have to choose smaller scale, with less effective area for mapping.

I think I can fix this. It is easy, really: most of building blocks for a proper solution are already invented. First, an interactive map, on which you place rectangles for pages. Arbitrarily, not neccessary in a grid. Maybe draw some lines, which would be "pie segments": instead of using MS Paint for making a pie, use some advanced technology. Maybe integrate it with MapCraft. So, a bunch of rectangles on a map. Not 90°-aligned: rotate them as you like. Align with road network, with streams etc, so areas for filling in take as much space as possible, and scale is biggest you can get. When done, just save your work and close the website. Go trace some buildings and tracks.

When a morning of a mapping party comes, open the website and press "Create atlas". It will display the progress, but the atlas will be made on a server asynchronously. First, it downloads an area from OSM API. Yes, not from a local postgis database, only fresh data. An added bonus (for local installation) is that you can use cached osm data, or just bring it from another computer, if an internet connection is weak. Then it applies a MapCSS style (which you can customize, even upload some of your own or josm's) and renders each page, rotating data as needed. Then it joins pages into an atlas and provides a download link. Later the atlas can be rebuild, using fresh data, maybe a different style or with more pages.

I don't believe in scanning pages for using them as a layer in JOSM (Bing/MapBox imagery make for a better reference layer), but georeferencing marks probably can be included. That won't be the greatest feature, because I have some other thoughts. You know the weakest point of the OpenStreetMap mapping in 2014? Updating data. It is quite easy to collect and map new roads, new POIs, new restrictions. But updating it is very, very hard, almost impossible for rich regions. There are no tools. My theoretical walking papers can fix that issue. Since we have full control over data, we can put POIs and relevant tags right on pages. We have a second side: for example, on the map there would be dots with coordinates (A4, D9), and on the reverse side — tags for each dot. And the same for ways and maybe relations (didn't think it all through, obviously). So you can have not only a base map for collecting new data, but also a check list for updating the already rich map.

This solution will make mapping easier not only in thrid-world countries (where internet is sparse and you can't rely on external web services, or spend days installing tile rendering stacks), but in densely mapped cities, where data has not been updated for years, because it already seems well-mapped, why go there again.

The next step would be an Android application for mapping. Why android? Because I again keep in mind mappers in third-world countries, who can get an android phone for $30, but not an iPhone for $300. So, let's take Vespucci. It is a powerful editor, getting better every months thanks to Simon. It can download an area and let you edit it. But can it work without internet and GPS? Not likely. Can it be used on a mapping party, when you are passing 10 points of interest a minute? You'll be exhausted in half an hour. The ideal mapping solution will have to separate data collection and data processing. Step 1: go out and record everything. Take photos, record audio, type a hundred house numbers, draw some crude lines on a touch-screen, like you do on walking papers. The interface should allow for quick mapping, e.g. in a car: you see a sign — you press a button and leave moving a mark to a correct place and tagging it for later. KeypadMapper and OSM Tracker are examples of this approach, but it should be made more streamlined and consistent. You cannot rely on GPS, for it has low precision, and not available on cheaper phones (off go those two apps). You cannot rely on the internet to provide you with tiles (off goes OSMPad). But you can assume you'll have a chance to download 100k of osm data back at home (or 10-20k on the road), to use as a base map for further mapping.

Step 2: Upload collected data somewhere (e.g. on your computer), process it and update the map. Data format can be universal, which means some central server for storing all the information. Audio notes can (and should) be converted to text, GPS trace joined from broken segments, data split between days and so on. Since most of points would be in tags or other non-textual representation, so anybody can use it for mapping, you would have an option of upload it to a server (right from your phone), so someone else could map it in their spare time. Or it could be you, download the data pack in JOSM. And then — map it. Recorded points shown as icons, with copypasteable tags; photos already georeferenced with subsecond precision, notes written on a map, crude drawings also georeferenced as underlying layers, between OSM data and imagery. It would be so much better then trying to remember what you meant by these waypoint titles, or having to read your handwriting on walking papers. And technical requirements would be as low as they get.

I am not a great programmer, or a designer. But I know what and how should be done to drastically improve mapping in OSM. No commercial company would make it, because they make profit not from mapping, but from using already mapped data. Hence loads of geocoders, routers, renderers, data converters, but nothing really good and innovative on editing front (sans iD, which was really lucky and sponsored by a grant). I really really want all I wrote above implemented. I want to push a button and get up-to-date walking papers with POIs for my street, to go out and find new amenities and update opening hours. After a long drive I want to run JOSM and add lane information, cafes, hotels and petrol stations, house numbers and surfaces I collected just hours ago to the map. I want to make OSM better, but I see no way these tools could be made. We all know the main principle of OpenStreetMap: "You want it — you make it". Maybe some wonderful person would start on that, but given my experience with mentoring "OpenSurveyor" on GSoC, it's not an easy task for students or even novices to OSM. Turned out having a 10-page design document means three months won't be enough.

All I know I can program, I know some of these technologies and will have little trouble learning the rest. Eventually I can finish all that. But as a spare-time job, between hosting an osm radio, writing news posts for shtosm, organizing mapping parties, disputing on osmf-talk and so on, progress would be very, excruciatingly slow. Not to mention I have other challenging ideas like writing a proper changeset reverting web service. So can you recommend me any way to make creating these tools my full-time occupation?

update: if some company (Stamen? Mapzen? Mapbox? Enaikoon?) decides to commit to one of these projects, I'd be happy to translate and update specifications.

OSMF Board voting extra statistics

Posted by Zverik on 9 November 2014 in English (English)

Richard is now counting some stats on anonymous ballots from the Board voting, and he persuaded me to publish some other, more complex stats I did on that Saturday. So, here comes.

Basic counting

Out of 219 ballots...

  • 79 (36%) have all 8 candidates ranked
  • 56 (26%) have 3 candidates
  • 23 (11%) have 4 candidates

Richard makes a smart assumption that some people didn't quite understand that one can submit any number of candidates, not one, not 3 (for number of seats) and not all 8. I submitted 4 candidates, because I had strong preference for Board members, and I believe that's the case for most of 3/4 votes. And people who filled all 8 positions maybe are not happy with a tiny chance their vote will be burned otherwise.

Every candidate has been listed at each of 8 positions in ballots (that is, there is no candidate that haven't been assigned e.g. #6 in at least one ballot).

For ballots with less than 8 positions, some of the candidates were not mentioned. Let's count number of ballots for a candidate, where he/she is not included:

  • 102 (46.6%) — Steve Coast
  • 93 (42.5%) — Ethan Nelson
  • 80 (36.5%) — Randy Meech
  • 75 (34.2%) — Marek Strassenburg-Kleciak
  • 73 (33.3%) — Paul Norman
  • 64 (29.2%) — Peter Barth
  • 54 (24.7%) — Kathleen Danielson
  • 39 (17.8%) — Frederik Ramm

So, nearly half of voters skipped Steve (I wonder why) and Ethan (probably because he is less known than others). Frederik and Kathleen wrote a lot of good, thought-provoking posts in osmf-talk, so I hope that's why everybody were voting for them.

Second places

We know Frederik Ramm got 78 first-rank votes, and 23 of them were distributed among other candidates. Whom?

  • 27 (35%) have chosen Peter Barth as the second candidate, so he got 8 of these extra votes
  • 19 (24%) have chosen Paul Norman, so he got 5.6 votes

(The rest was skipped because numbers are too small). Some of those who gave the first preference to other candidates had very strong preferences for the second place:

  • 11 of those who voted for Paul (55%) have chosen Frederik as the second
  • 12 of those who voted for Randy (52%) have chosen Kathleen as the second alternative

So it's quite clear why when Randy Meech was eliminated at round 5, Kathleen was immediately elected for the second seat at the Board.

What if...

Now, what if we didn't use STV, but went for the first preference? Here are [some of] first candidates ranks:

  • 78 (35.6%) — Frederik Ramm
  • 32 (14.6%) — Steve Coast
  • 30 (13.7%) — Kathleen Danielson
  • 23 (10.5%) — Randy Meech
  • 20 ( 9.1%) — Paul Norman

You see a bit of difference with final results (Frederik, Kathleen, Paul). So, if there were 4 seats to fill, who would take it — Steve or Randy? Guess again:

  • 4: Peter Barth
  • 5: Steve Coast
  • 6: Randy Meech
  • 7: Marek Strassenburg-Kleciak
  • 8: Ethan Nelson

The magic of STV! Of course, next preferences played a big role in the actual result. Let's see who was most often mentioned as a backup candidate:

  • 43 (19.6%) — Kathleen Danielson
  • 41 (18.7%) — Frederik Ramm
  • 35 (16.0%) — Paul Norman
  • 32 (14.6%) — Peter Barth

Here they are. Let's invent another voting system, where the first candidate gets ½ of a vote, the second — ¼ of a vote, the third — 1/8 and so on. What the results would be?

  • 52.5 — Frederik Ramm
  • 31.5 — Kathleen Danielson
  • 24.9 — Paul Norman
  • 22.9 — Peter Barth
  • 21.6 — Randy Meech
  • 20.6 — Steve Coast

This is where it gets complicated

Why the 5th and 6th candidates differ from STV results for 6 seats? That stems from placements variation. Let's find a most assigned rank for each candidate. For example, Frederik was placed first in 78 ballots, and second in 41.

  • Frederik Ramm: 1:78, 2:41
  • Peter Barth: 3:41, 2:32
  • Marek Strassenburg-Kleciak: 3:28, 4:23
  • Randy Meech: 3:24, 4:24, 1:23
  • Kathleen Danielson: 2:43, 1:30, 3:29
  • Paul Norman: 2:35, 3:34
  • Steve Coast: 8:44, 1:32
  • Ethan Nelson: 5:28, 4:25

That list is hard to read, so let's erase the ballot count:

  • Frederik Ramm: 1, 2
  • Peter Barth: 3, 2
  • Marek Strassenburg-Kleciak: 3, 4
  • Randy Meech: 3, 4, 1
  • Kathleen Danielson: 2, 1, 3
  • Paul Norman: 2, 3
  • Steve Coast: 8, 1
  • Ethan Nelson: 5, 4

Steve's positions are interesting: mostly first and last ranks. Frederik is most favored, so 1st and 2nd ranks mostly. Others float around their ranks, not deviating much. Voting results basically reflect that: Frederik, Paul and Kathleen are closest to the top ranks, with Peter following.


We haven't got permission to publish number of normal and associated OSMF members who voted and who were eligible to vote, but we can make some assumptions from the statistics and number of ballots.

  • Members: normal + associate = total
  • By October: 182 + 336 = 518
  • Eligible: ? + ? = around 300 (518 minus 218)
  • Voted: 106 + 113 = 219

So if we take number of voters for 73% of those eligible, we get following numbers (again, they are very approximate):

  • Eligible: 145 (of 182) + 155 (of 336)

Which means that nearly half of associate members are behind on their membership payment, while most of normal members pay on time. The question is, are they behind because of financial troubles, or because they don't care. If it's the former, then the new policy on associated membership fees would help a lot.

An alternative to /export

Posted by Zverik on 28 June 2014 in English (English)

Have you ever printed a map? Clicked a hundred times on "Export" button on Installed mapnik or maperitive and spent days configuring a database and customizing a style? Did you wish for a simple web service that lets you select a bounding box and produces a hi-dpi raster or vector image? Well, there is one now. It is called Get Veloroad, for a style it was created for.

On the side panel you choose paper format and margins, add a GPX trace if needed, select style ("veloroad" and "" are available), image format, and press "Submit". If the server is not overloaded, you'll get your image in a minute, in glorious 300 dpi. SVG files are postprocessed, so you can easily move labels as a whole, instead of separate letters (the most annoying trait of mapnik-generated maps).

Alas, my server cannot fit all the planet, so there are only Baltic countries and parts of Russia and Finland. Everything is open-sourced though, so I hope soon we'll see a worldwide service for producing high-resolution images.

Nik4 gets smarter every day

Posted by Zverik on 4 June 2014 in English (English)

Since the release of Nik4 some bugs were fixed: namely, scale (-s 10000 = 1:10000) is applied correctly, georeferencing parameters were corrected, and very large tiled maps (bigger than 16k×16k, mapnik's limit on images) are created without errors and are properly georeferenced (you can load them in QGIS without any extra work).

Now the version is 1.4, and there are features to make producing maps more fun. For example, you don't need to extract latitude and longitude to get an image of an area you see at just run --url osm.xml screenshot.png

and you'll get 1280×1024 map near that point. Like a screenshot, but more flexible. Users from USA can now specify US Letter paper format (--paper letter, or shorter -a l). Style XML can be streamed from stdin, and the resulting image can be streamed to stdout.

Dimensions are not bound to width and height now: they are swapped automatically to better fit given bounding box. And you can set one of dimensions to 0 to calculate it from bbox. See this chapter of documentation for examples.

Finally, styles can now have variable parameters. If there is ${name:default} sequence anywhere in style XML, with --vars name=value argument you can replace it with any value, or with the default value, if name is omitted. This allows for printing different routes with the same style, or exporting a map in many languages.

To update Nik4 with pip, run pip uninstall nik4; pip install nik4. For calculating bbox for a given route, you can use this page.

Nik4: mapnik → image

Posted by Zverik on 16 May 2014 in English (English)

I recently needed to create a big georeferenced image from a mapnik style file, and found out no image exporting tool currently offers more than a direct interface to mapnik's options. That is, I could not get "image in 300 dpi for printing on an A5 sheet", I had to understand what scale_factor is, and what is the default resolution, and why lines had become so thick. And I'm a programmer — imagine a confusion of a regular user!

Today I have published Nik4. It makes everything easier.

Grab a 800x600 image at z13? -c LON LAT -x 800 600 -z 13 — and no suprises like when the output image differs from (nik2img puzzled me with that one). Print a region in 300 dpi on A5? -a 5 --ppi 300 --bbox X1 Y1 X2 Y2. You don't have to think about scale_factor ever. Make a very large image? No problem, use --tiles 4 and wait a bit; you won't run out of memory.

See for an extensive description and installation instructions (easy_install nik4 — there, no more instructions needed). Print more maps.

And for generating tiles there is just as simple

Grouping Mapnik's labels

Posted by Zverik on 29 April 2014 in English (English)

If you tried rendering quality maps with Mapnik, you know its label placement is awful. Just a bit better than throwing labels on map at random. So for printing, postprocessing in a vector editor is mandatory.

If you tried editing Mapnik-generated SVG, you know it is completely unstructured. Which means, if you need to move a label, first you have to select all of its letters one by one, and then its casing, also letter by letter. And there will be a lot of frustration when you select roads underneath the label, or lose selection.

Yesterday I've made a small script that takes Mapnik SVG, finds labels and wraps them in groups. So when you open that SVG in Inkscape, you will move labels not by letter, but as a whole.

The only parameter, -d, controls the maximum width of a letter, including spacing between letters. The default works for me, but if your labels are tightly packed, or are printed in a very large font, you may need to use that parameter.

A year with imagery offset database

Posted by Zverik on 31 March 2014 in English (English)

On this day last year I announced the Imagery Offset Database: a centralized storage for imagery offsets. It was planned as a way to provide every mapper, especially beginners, with a confidence that they are tracing correctly aligned imagery. And for those not knowing imagery can be misaligned, a way to not ruin a map. After the announce, tens of mappers started entering their offsets into the database, and I've never made a local offset bookmark ever since.

Aerial Imagery cannot be ideally georeferenced. Depending on precision of your measurement tools (GPX traces give 1 to 10 meter precision), you may notice that the imagery layer is positioned incorrectly, and use your editor's controls to shift it to the right place, so GPS traces follow roads and paths on the imagery. This is common knowledge among experienced mappers, and I hope beginner mappers learn that soon enough.

Sadly, looking at new editors I can't but conclude than either there is no misaligned imagery (which is probably false), or many mappers, including those who work on those editors, don't bother with aligning imagery to GPS traces. How many of you pressed those little arrows for shifting a background layer in iD editor? Does your favourite mobile editor, with which you upload POI nodes to the database, account for shifted imagery? Do you make bookmarks of such offsets so you can quickly restore them later, or on a different computer?

A week ago Simon Poole added IODB support to Vespucci, making it the second editor supporting it. This is great news, number of editors supporting the database has doubled overnight. Support in iD has been stalled, and I didn't expect Potlatch or iOS apps to support it. So basically, pay attention and don't be suprised when buildings are misaligned with imagery.

Now some statistics. As of now, there are 5180 non-deprecated entries in the database, of which 4078 (70%) are in ex-USSR countries (3180 in Russia). Mappers add on average 14 entries a day and have not skipped a day yet (see the graph above).

Of 5644 imagery offsets 4606 (82%) are of Bing layer, 714 of Russian and Ukrainian regional imagery, and around 150 offsets refer to some HOT-related imagery. Strangely, there are 44 offset of Google Maps, and 30 — of Yandex's. I assume those users were just testing the database and not uploading anything to OpenStreetMap.

I hope someday we won't need that database, but for now, when only a handful of coutries have precisely aligned imagery, it is one of the most important tools for mappers. It will probably be included in JOSM core later this year, and I'd be glad to hear of more editors supporting it.

And by the way, I always planned to publish the server's source code, but got to it only recently: see it on github.

Crimea in OpenStreetMap

Posted by Zverik on 28 March 2014 in English (English)

Quite a lot of news sources have asked almost all cartographic providers if they will change Crimea's owner on their maps. No international provider answered positively. In Russia companies are more willing to comply: maps are showing Crimea as a part of Russia, and Yandex now has two separate maps, for Russians and Ukrainians, which show Crimea in different colors. Wikipedia contributors started a tiny edit war between images that show Crimea as a disputed territory or a part of Russia.

Members of Russian and Ukrainian OpenStreetMap communities have discussed the matter during the first few days of the Crimea situation, and have come to an agreement ten days ago. We declared a moratorium on touching administrative borders in Crimea, as well as name tags (since some mappers started changing Ukrainian names to Russian), active until 1st of June, 0:01 MSK. Until at least then Crimea stays a part of Ukraine on our map. Every edit altering name tags or administrative borders will be treated as provoking an edit war and reverted, users who do that repeatedly will be banned. There were some cases of that already.

Of course users are encouraged to map non-political things, like buildings and landuses, and add language-specific name tags: name:uk, name:ru and name:crh. Right now there is a mapping event in progress, focusing on improving Crimea's coverage on OpenStreetMap, which has attracted around 70 mappers.

Crimea in Russian colors (not in OSM data though)

For Russian patriots I've made a special political map which shows Russia's position on Crimea, Kosovo, Abkhazia and South Ossetia to users with Russian IP addresses, and a normal map with Ukrainian names for visitors from other countries.

А вы уже в Крыме?

Posted by Zverik on 25 March 2014 in Russian (Русский)

Как всегда, забыл про дневники OSM, хотя новички в первую очередь смотрят именно их. Новички, знайте: у нас есть форум и новостной блог.

Идёт пятый день эпичного картопроекта «#крым», в рамках которого мы — уже 65 человек — вместо своего двора открываем в JOSM крымские деревни и луга, и обклацываем по бингу и ортофотопланам всё, что видим. На сайте проекта всё написано, и есть карта, где нельзя не заметить разницу между пятничным и сегодняшним покрытием. Иногда мы собираемся сообща улучшить карту города, но впервые поставлена задача обработать целый полуостров, и мы справляемся с ней лучше, чем можно было ожидать.

В этом мероприятии нет политики, если вы не привнесёте её сами: до 31 мая действует мораторий на изменение административных границ и тега name в Крыму. Наша цель — просто собраться вместе и почувствовать, что сообщество OpenStreetMap — это картографическая сила, равной которой нет. Карта Крыма из OSM уже почти на всей территории лучшая в мире, но наша задача — довести её до такого состояния, чтобы мы сами могли ей гордиться.

Картопроект заканчивается вечером 31 марта. Чтобы обозначить себя как участника, в комментарий к одному из загружаемых пакетов правок добавьте хэштег #крым или #крим. Обсуждение идёт на форуме.

Sochi was not mapped for Olympics

Posted by Zverik on 11 February 2014 in English (English)

Olympic facilities being mapped really good in OpenStreetMap has been a subject of many articles recently, mainly with comparison to Google Maps (which are nearly empty, of course, unlike Yandex Maps). This has been good for OSM awareness, and Russian mappers welcome that. In Russia a lot of Olympics-related projects (including the torch relay) were using OpenStreetMap, and most of them even attributed us correctly.

But there are comments that bug me, which imply that, as it usually happens with humanitarian response, in case of Olympics some mappers just organized themselves on a weekend and mapped the whole area from Bing imagery and probably official data (of which there is none, by the way). That is completely untrue: we had no mapping parties or other events targeted at mapping the region.

This chart shows number of changes (identified by num_changes XML attribute) for the region containing Sochi, Adler and Krasnaya Polyana. Only small changesets were counted, which do not cover other regions. You can clearly see that the region was mapped mostly by agsochi (83% of all changes) four years ago (with 185K changes in March 2010), and then gradually updated to reflect current situation.

This kind of chart is typical for many regions with active mappers: someone maps everything when they first find the area, and then update it through the years. It just happened that Olympic Games were held in a well-mapped region, not the other way around.

Other contributors with more than 5 thousand changes are:

  • Sergey Astakhov — 3.3%
  • raw2008 — 2.2%
  • garl — 1.4%
  • -James- — 1.3%
  • ulil — 0.77%
  • СПТ Сочи — 0.77%

The last one is notable in that it is an account for Sochi's fire brigade, which since April 2013 has been constantly adding hydrants and fire stations in the region. You can see the outcome of their work on OpenFireMap.

MapBBCode Triumphant

Posted by Zverik on 6 December 2013 in English (English)

Yesterday I've created another repository in MapBBCode project. It is a small script, which does great things.


The Rails Port does not support MapBBCode, and probably never will. But copy and paste the following line to the address bar to witness the magic (you'll have to restore "javascript:" prefix in Chrome and IE):


MapBBCode Loader searches for BBCode on the current page, and if it succeeds, it appends Leaflet and MapBBCode libraries and replaces all [map] bbcode with maps. And if there is a specially marked button, the script adds a map editor to it. Basically, this script allows integrating MapBBCode into forum and blog engines which do not have native plugins for that yet.

I guess nothing can stop MapBBCode from conquering the internet. Even closed-source forum engines (I'm looking at you, vBulletin, which requested $250 license for access to documentation) and lazy administrators. The complete instruction of five simple steps for embedding MapBBCode anywhere is published in the GitHub repo.

The loader requires MapBBCode 1.2, which is now in development and may contains traces of bugs.

Update: it seems Leaflet can't stand CSS in OSM diaries. And in Firefox you cannot run javascript from the location bar. In Chrome and Internet Explorer "javascript:" prefix is automatically removed when you copy the string, you have to add it back yourself. Basically, it works without fixing only in Opera browser.

But that is not the point: the loader is not supposed to power such one-off demostrations. It serves as a plugin replacement for engines that are hard to modify. For example, is powered by a closed-source engine, and only MapBBCodeLoader has allowed for maps in it.

The State of MapBBCode

Posted by Zverik on 17 November 2013 in English (English)

Yesterday a new version of MapBBCode library was released, 1.1.1, and plugins for 4 forum engines were updated to use it. Full changelog is on github, here is a list of visible changes:

  • Documentation was moved to the official website and can be translated. There are Russian versions of some pages. Also I plan to write several guides, including a user's guide and a programmer's tutorial.
  • OpenStreetMap attribution link not only opens our website, but opens it at the location displayed on a map. A kind of permalink. It is the 8th leaflet plugin made for this library, and, like previous seven, can be used separately.
  • Some users requested zooming with a scroll wheel. It was turned off because it disrupts page scrolling, but I was hinted at the solution. Now you can zoom with mouse wheel after clicking on a map.
  • Adding proprietary layers, like Google's, has been made extremely simple. On some forums it's just a matter of installing an add-on or uncommenting a line in plugin's code. But since the library was made for popularizing OpenStreetMap, there is a restriction: non-OSM based layer cannot be made the default one.

During those two weeks, the MapBBCode plugins were installed on several forums, including the biggest offroading forum in Russia (Skif 4x4) and the second biggest cycling forum (Velopiter). I can't thank enough administrators of those forums. Shoorick and DKiselev have written simple unconfigurable plugins for WordPress and FluxBB, which are being tried by some people. In a week or two I plan to release a vBulletin plugin, which would allow granting maps to the biggest forums, like SkyscraperCity, Velomania and, with hundreds thousands of users.

MapBBCode: free maps for everyone

Posted by Zverik on 31 October 2013 in English (English)

It is now time to mark a milestone in my month-long programming marathon and announce the first release of the MapBBCode library: a way to integrate maps into almost everything, but primarily written for forums and blogs. There is a long introduction on the official site, but the problem it solves is very common and somewhat annoying, especially with biking and construction sites: they have no maps.

Mapping plugins for forums tend to focus on geolocating users, which is a dull and useless task. What if I want to draw a route and allow fellow bikers to download it as GPX before setting off? The world of embedded maps is dominated by monstrosities, like the one I've spotted in Shaun's blog (40€ for a map!). We have Leaflet, we have the best map in the world, and forum/blogging engines have API — let's get coding.


Map BBCode is a string enclosed in [map]...[/map] tags. It can be copied anywhere and edited as text; essentially it is GeoJSON with restricted set of properties and adapted for forums. A small javascript library turns it into a Leaflet map panel and allows editing code not by entering numbers, but by drawing on a map. You can try in on the project's page. There are also modules for phpBB forums: this Monday a popular local forum on road construction has installed it, and now I'm pushing it to local cycling forums. Someday there will hopefully be plugins for vBulletin, WordPress, SMF, MediaWiki and others.

As an example of library's versatility, MapBBCode Share website was born. The idea was simple: put strings in a database — and you've got a map sharing service, simple and accessible, like pastebin or imgur. And you can copy raw code to a forum or a blog. This vision started to shatter when GIS-Lab community used the site for planning a mapping party by openly publishing an edit link. And then I added import and export to a dozen of formats, personal libraries (so you won't have to store bookmarks locally) and API. It turned out that sharing maps is only a fraction of the site's potential.

MapBBCode Share

Now you can plan a trip together with friends, place markers, embed the developing map in a forum post, and a day before the trip you can download the route and waypoints in GPX format right from a forum page. You can import CSV and immediately download it as HTML with no external dependencies (besides Leaflet). No iframes — unlike every other service, MapBBCode Share produces full-featured HTML that works offline and can be included in a website by copying code. You can upload OSRM-generated routes, quickly edit poly files, inevitably export GeoJSON, — the site "competes" not only with and uMap, but even with JOSM. Privacy is bulletproof: you sign in with OpenID (google/yahoo accounts will do), your ID is immediately hashed before storing, so even the administrator doesn't know who is using the website. The hash doesn't leave the server, so no one can link maps to users.

Today I am releasing the whole package: more than 200K of code, 60K of documentation, 7 new Leaflet plugins, everything published under the most permissive license of all, WTFPL. The development goes on, but now all changes are logged, and the author is responsible for keeping backwards compatibility. Please use MapBBCode Share and write plugins for embedding the code into forum and blog engines. Let's make the [map] tag a standard, and make sharing maps no harder than sharing images or code.


Posted by Zverik on 21 September 2013 in English (English)

Want a new feature or bug fixed in any OSM tool? Learn java/javascript/actionscript/rails/whatever's popular this moment or suck it up. It's a do-ocracy: people don't matter, pull requests do.

Someone may help if you are obviously not a programmer, but god forbid you write a single script — you're done, from now on <see above>.

(a summary of my sotm talk, proved again this week)

SotM Baltics 2013 is not over yet!

Posted by Zverik on 20 August 2013 in English (English)

While participants are already home and preparing for State of the Map in Birmingham, organizers of SotM Baltics 2013 are still working, so the conference website doesn't get old and obsolete. We made a special page with links to all media mentions, photos and blog posts on SotM Baltics. If you blogged about it or forgot to publish some photos, now is the time.

We have our channel on Vimeo where new video recordings of talks are published daily. They are announced in the twitter and added to the schedule along with slides. At this rate you will manage to watch most of videos before the main SotM.

It's hard to make recommendations, because you would surely skip talks not mentioned, but if you have time only for one video, do watch "Jokes about Estonians", which will be published on Friday. It's not related to OSM, but we are glad it found a way into our schedule.

SotM Baltics 2013: the last day to submit your presentation

Posted by Zverik on 7 July 2013 in English (English)

SotM Baltics 2013

Between two grand conferences, states of the maps, there is a smaller one, just a bit more that a meeting of mappers, although from several countries. Hosted in Tartu this year, SotM Baltics will not only allow you to test and perfect your presentation for the main State of the Map event, but also get aquainted with mappers and OpenStreetMap users from "distant" countries like Latvia, Estonia, Finland and Russia. During two days of the conference you'll see the interior of the biggest university in Estonia, enjoy a summer city with all signs written in a strange language, and have a couple of fun events to attend while you are discussing the imminent fall of OSM with other community members.

So, this leads me to an announcement that today is the last day of the call for presentations! I know I should have been spamming all of you the whole week, like other conference organizers did. But still, you have the whole day to think up a title, it's not like we're requesting anyone to submit the whole presentation. There will be a lot less pressure on the stage compared to hundred-persons halls of bigger SotMs, so this is a prefect opportunity to get heard and discuss important topics with mappers who aren't as active in mailing lists.

State of the Map Baltics 2013 will be held on 3-4 of August in Tartu, Estonia.

Location: Kesklinn, Tartu, Tartu maakond, Estonia

Single Point of Failure

Posted by Zverik on 29 November 2012 in English (English)

On 27th Steve Coast wrote in his blog a big speech about people who take the sole responsibility for important elements of infrastructure in crowdsourced projects. He tells of points in OpenStreetMap which are controlled by indispensable people, and other projects members acknowledge that they have no idea what to do if those people would quit. It's time, Steve says, for them to leave, so we could «find out how we distribute the workload now while we only have 900,000 registered accounts instead of 9 million».

This is a familiar subject for reliability experts, the Single Point of Failure talk. In crowdsourced projects such points are people, of course. And indeed, several years ago only one man worked on Potlatch, another one made OWL, the mapnik style was controlled by third, and this chain of indispensable people went on and on. But Richard Fairhurst correctly notices in comments that today in all those control points communities have grown, and indispensable people are not indispensable anymore. Actually, I can name only one SPF in our project from the top of my head. And it's Steve himself.

Who is contacted by media when OSM has another victory over some proprietary cartographic service? Who is deemed visionary, who opens every State of the Map conference? Who our project is associated with by outsiders? Is it someone from the press contacts? No. It is the Chairman Emeritus of the OSMF Board and the Inventor of OpenStreetMap. What is his recent archievement in the project? On his site there is a list: "founded OSM" (2004), "started SotM" (2007), "co-founded Cloudmade" (2007 again), "kicked off mapstraction" (2010, take a look at djeo btw). Which are his latest two projects? FrontDoor, which allows to fix houses' entry points using Bing imagery. Last month James Fee asked Steve, where are the results. He evaded the subject. And OpenGeoCoder, for which Steve specifically chose not to use OSM because of Share-Alike license. His last edit to the map was in February 2011.

You know how most active people in our community respond to imports. Only recently there was a major flame war in mailing lists concerning French cadastre buildings. Few consider TIGER experiment in USA to be successful: last week's Operation Cowboy's main objective was fixing data imported five years ago. And what major problem does Steve identify in his yesterday note, what solution he proposes? Addressing, of course. US has too many buildings, and it is impossible for the mapping community to collect all the addresses. We just don't have enough time. And because there are vast emptiness in OpenStreetMap instead of addressing information, it is unsuitable for geocoding. And the situation is even worse in Europe and Japan. I guess no one ever succeeded in finding an address there. What could we do to save the project? Let's take TIGER data (which is, of course, horrific, but there is no other way), slap it into OSM and tell the community to fix it! Better than nothing, anyway.

Now I should remind you that Steve Coast still represents our project. Not Germans, Jochen and Frederic, whose articles I adore. Not Englishmen, Richard, Harry and Matt, messengers of reason. Not Simon Poole, current chairman of the OSMF Board, and not Richard Weait, an activist of Communications Working Group. Steve Coast. Only in October he was interviewed by James Fee, editor of the popular GIS-related Spatially Adjusted blog. In September he opened the State of the Map US conference, in November he told of his OpenStreetMap involvement to Czech GIS-portal. To this day Steve is a face of our project, despite being irrelevant. It was fun a year ago, but today I think he is starting to be harmful to project, slowing it down.

"We have points of control which are fully owned by single individuals. The people around them readily acknowledge that they don’t have a clue what we would do if they quit. I say that’s terrible. I say they should quit and we should find out what we have to do." Steve, who did you write this about?

(this is a translation of SHTOSM entry, and I'm sorry if something is translated inadequately)