![](https://habrastorage.org/webt/7p/en/3r/7pen3rfns8gl3zdw3p4xlgju2jo.jpeg)
wowik — программист и инженер-физик из Москвы, который, как он говорит сам про себя, «программировал все, что шевелится: мейнфреймы, персоналки, мобильные устройства, теперь еще и web». Но в мире OSM он известен, как разработчик легендарного «валидатора Вовика». Что такое валидаторы, чего не стоит делать в OSM, и почему многие не любят свободу — обо всем этом Владимир рассказал в интервью.
— Как и когда вы познакомились с OpenStreetMap?
— Это было достаточно давно, когда я пользовался навигационной программой PocketGIS для Windows CE, в которой уже тогда были пробки. Как-то на форуме PocketGIS я вдруг увидел сообщение, где в качестве иллюстрации к обсуждению изменений движения была ссылка на свежеотрисованные в OSM новые проезды. Такие ссылки стали повторятся и оказалось, что PocketGIS готовится к переходу с карт ГосГисЦентра на OSM. Так в начале 2009 года я зарегистрировался в OSM. Поначалу я картографировал территорию вокруг своего дома, дорисовывал дороги, расставлял запреты маневров. Потом пришел на форум проекта, чтобы задать вопросы и поспорить: про адресацию в Зеленограде и сколькими линиями рисовать дороги.
— Чем вас увлек процесс картографирования? Зачем и почему вы начали рисовать карту?
— Карты меня привлекали с детства. Это почти путешествия. С другой стороны, какой же туризм без карт? Рисовать карты я начал еще в школе. У моего папы была некая карта-чертеж окрестностей Зеленограда от знакомого из турклуба. Через несколько лет она поистрепалась, и отец решил перенести ее с фотобумаги на чертежную бумагу, попутно укрупнив масштаб. Вот это и было моим первым настоящим картографированием, потому что мы с отцом и братом по ходу дела еще выполнили актуализацию этой карты: нарисовали дороги в лесу и микрорайоны в городе.
В старших классах школы я решил самостоятельно повторить процесс, доведя масштаб до 2 см на 1 км. При этом стал активно править карту: стирать ластиком, клеить заплаты. Даже проводил измерения на местности. Например, с компасом и велосчетчиком обмерил бетонку от Ленинградского до Пятницкого шоссе, так как этого куска не было на исходной карте.
Поэтому в OSM я занялся практически тем же, но с другим инструментарием. Новым была лишь возможность картографирования по спутниковым снимкам, что в мире OSM обычно называют «диванным мапингом», который, кстати, сродни путешествию, особенно если местность незнакомая.
— Вы уже более 10 лет в проекте OSM. Можете ли вспомнить, каким он и его сообщество были тогда? Что изменилось в проекте за это время?
— 10 лет назад в OSM чувствовалось внутреннее движение. Главный интерес, через который в то время приходили мапперы, — это карты для навигаторов. По нынешним меркам почти все тогда были новичками, чтобы в чем-то разобраться осмерам приходилось взаимодействовать между собой, спорить, общаться. В результате повышался уровень всех членов проекта, вырабатывались подходы и рецепты. Было несколько гуру, которые понимали чуть больше, так как писали разные утилиты, к примеру конвертеры. Приблизительно в тоже время появилось понятие валидатора, как один из подходов к импорту данных. Мне, как программисту, такое сообщество было интересно, хотя большинство программистов имело базоцентричный взгляд на мир. На международном уровне также заправляли программисты. Они не боялись менять мир, был развернут API v0.6. Позже прошло перелицензирование данных. Оно подтвердило, что главное в проекте — не данные, а люди.
Данные OSM устроены аналогично живому языку. Одно и то же можно обозначить по разному. Это дает свободу и возможность развития. Но многие не хотят свободы, так сложнее программировать, она заставляет думать.
Так или иначе, после шумных выборов модераторов на форуме, горячие обсуждения стали редкостью. Теперь на форум, да и в Telegram-чат, где много веселой болтовни, приходят лишь за готовыми рецептами. Новое рождается где-то еще, компании выпускают какие-то продукты, сообщество их обсуждает, но собственного уже предложить почти не может.
— Как вы думаете, почему так получилось, что сообщество перестало предлагать и генерировать что-то новое?
— С одной стороны, OSM со спринта перешел на стайерский бег. Очевидные вещи, которые можно и нужно было сделать, в основном уже реализованы. Открылись новые горизонты, и силы сообщества теперь распылены, их хватает лишь на частности. Например, решить, каким образом отмечать пешеходную полосу — как тротуар или специальным тегом.
С другой стороны, люди теперь хотят пользоваться готовыми решениями и сосредоточиться непосредственно на своих собственных задачах, не отвлекаться на обустройство OSM. Сообщество все больше фрагментируется по интересам, соответственно силы фрагментов становятся слабее.
— В связи с этим у OSM есть будущее, как у проекта? Такое ощущение, что он, скажем так, растет на старых дрожжах. Или я ошибаюсь? Возможно что-то новое?
— Ну, раз я еще участвую в нем, то, наверно, еще питаю какие-то иллюзии. Мне кажется, OSM нужно самому определиться с тем, какое он место занимает в сложившейся ситуации. Это еще одна ГИС, но только такая, которую можно свободно использовать? Если да, то проект уже занял свою нишу. Он такой единственный — первый после ГИС-грандов. Можно сказать, план Б, когда с грандами не клеится или не хватает на них денег. Но, как мы видим, новые идеи, которые появляются в экосистеме OSM, например, Mapillary — быстро подхватываются другими, в том числе и грандами. Уникальность OSM от этого страдает. Мне кажется, что OSM нужны идеи, которые в других системах нереализуемы.
Как сообщество, проект OSM с его самоорганизацией обладает рядом достоинств, но большой недостаток заключается в том, что его ядро устроено архаично, чего стоит одно только использование списков рассылки! Думаю, что молодым силам сложно вливаться в проект и осваивать его. Нынче связи между людьми происходят как-то иначе. Теперь online и offline в жизни сливаются, и люди зачастую контактируют напрямую, без посредства сообществ. Поэтому новые силы ходят где-то рядом, а мы продолжим их не замечать, пока однажды они не возглавят OSM.
Также OSM еще интересен как исследовательский проект по изучению деятельности и развития самоорганизующейся системы. Проводить исследования, ставить эксперименты в нем можно бесконечно.
— Ранее вы уже упоминали слово «валидатор». Можете простыми словами объяснить, что это такое и зачем он нужен. Можете ли привести в пример несколько интересных и полезных валидаторов?
— Валидатор — средство проверки вносимых или уже внесенных данных. Это может быть проверка на допустимые значения в редакторе, может быть список ошибок, выявленных при конвертации данных в формат карт для навигатора. Это и специальные тесты на выявление топологических ошибок.
Но самым интересным в OSM оказался класс программ, которые проверяли на соответствие данных OSM некоему рефренсному набору данных. Одним из первых, который мне запомнился, был валидатор населенных пунктов и административных границ по классификаторам ОКАТО/ОКТМО. При помощи него можно было увидеть, какие города и деревни еще надо внести, а какие их названия надо исправить. К сожалению, сейчас этот валидатор, как и некоторые другие, уже не работает, но если авторы опубликовали код своих программ, то иногда их работу оживляют другие участники проекта.
Со временем в RU-OSM стали появляться валидаторы почтовых отделений и банков, рек, железных дорог и много другого. Некоторые имели удобные средства для полуавтоматического добавления или изменения данных, например, времени работы банка.
Опыт показал, что такие программы не только позволяют постоянно поддерживать актуальность и целостность данных в OSM, но и производить импорт данных не вслепую, плодя дубликаты и затирая верные данные, а аккуратно сливать данные воедино, устраняя возникающие конфликты. В данный момент заканчивается импорт театров. Перед внесением данных участники проверяют насколько правильны и актуальны данные, как они соотносятся с уже имеющимися в OSM.
— Вы являетесь разработчиком известного в мире OSM валидатора — валидатора Вовика. Расскажите о нем: как родилась идея, откуда берете данные, зачем он нужен, что с его помощью можно сделать? Есть ли статистика его использования?
— Мне, как программисту одно время работавшему с переборными схемами, хотелось попробовать реализовать некоторые свои соображения по поводу построения маршрутов по дорогам. Я начал разбираться с тем, как мне написать программу для чтения данных из OSM.
В это время на форуме случилось бурное обсуждение, как обозначать новые номера автодорог, которые стали присваивать во всех регионах. Проголосовали по их формату, на страничку в WikiOSM стали складывать постановления с перечнями автодорог, вести таблички для внесенных в OSM дорог. Я понял, что тут нужен инструмент, который бы помог упростить внесение этих новых данных, и я могу его сделать из того, что у меня уже есть.
Первой была Брянская область, потом еще несколько соседних областей. Данных внесено было мало, зато ошибок в них хватало. Исправив ошибки, я начал расставлять дорогам номера, ориентируясь на указанные в названиях населенные пункты. Каждый раз искать на карте населенный пункт было неудобно, поэтому я добавил в программу выдачу подсказки его местоположения по данным OSM.
В перечнях автодорог также были указаны их длины. С ними вообще получился увлекательный квест. Где дорогу начинать, а где заканчивать, чтобы соблюсти указанную длину? У границы деревни, у перекрестка, у магазина или у автобусной остановки? А что если при этом у соседней дороги не хватит куска?
Обратились ребята с Украины со своими перечнями нескольких областей. Интересно было узнать особенности. В Белоруссии, оказалось, почти всё уже пронумеровали и у ребят есть похожий инструмент, а вот перечни дорог там не публикуют.
Тем временем расширял географию. Страна у нас большая, в разных регионах одно и тоже постановление интерпретируют по разному. В Адыгее умудрились автодорогам присвоить номера римскими цифрами (79 ОП МЗ Н-VIII). Опять своего рода путешествие.
Существовавший в валидаторе автодорог список населенных пунктов решил оформить отдельно, добавил сопоставление с ОКТМО. Позже добавил в валидатор улицы и номера домов, чтобы сопоставлять с ФИАС. Так получился второй валидатор. Оказалось, что его можно настроить для работы и в близлежащих странах, так с ним активно поработали ребята из Казахстана.
С номерами домов выяснился сильный разнобой. Как раз в это время обсудили и проголосовали за единый формат. В OSM правильно отмечать адрес следующим образом: 10А с1, а не 10а стр.1. Написал проверку этого правила и подсветку ошибок. Когда надоело исправлять ручками, написал для очевидных случаев полуавтоматическое исправление, одним щелчком я принимаю предлагаемый вариант.
Названия улиц тоже оказались не причесанным. Когда-то их названия приводили к утвержденному виду (Молодёжная улица, а не улица Молодежная), сопоставляли с выверенным списком названий, но тот инструмент давно уже не применяли, и я написал свой, у него пока нет интерфейса, он сразу готовит данные, готовые для выгрузки в базу OSM. Так валидаторы обрастают дополнительными функциями.
Про статистику. Валидатор автодорог считает, что внесено 98% номеров автодорог. Статистику же использования я не веду, но знаю, что моими валидаторами пользуются, так как мне периодически пишут на форуме, что что-то сломалось или просят обновить перечни в какой-то области. Также обращаю внимание на то, что в Telegram-чате нередко кто-нибудь спрашивает ссылку.
— Планируете ли сделать еще какой-нибудь подобный инструмент в будущем?
— Оказалось, мало искать и исправлять ошибки, необходимы инструменты для анализа причин их появления. Уже сейчас делаю инструмент, который позволяет понять, пользователи каких редакторов не отвечают на замечания про свои ошибки, в каких регионах происходит массовый кривой импорт, какими инструментами это делается, из каких источников берутся данные.
— Что вам нравится в сообществе RU-OSM? Что не нравится? Чтобы сделали лучше?
— Наше сообщество состоит из людей разных возрастов, профессий, интересов, которые к тому же проживают в разных странах. От них можно узнать много нового: от биологии до социологии. Общий настрой — веселый, ведь один из главных принципов OSM: have fun! Поэтому дружеские подтрунивания воспринимаются большинством спокойно и самокритично.
Не нравится то, что форум перестал играть главную роль в консолидации сообщества, а чат в Telegram его не заменил. В целом, все недостатки проекта вытекают из его достоинств, каждый в основном занимается тем, что ему больше нравится. Еще мне кажется, что мы недостаточно серьезно относимся к общим делам.
— Как думаете, почему до сих пор RU-OSM не формализовалось и не появилось некоммерческой организации, продвигающей OSM в России, как это случилось во многих странах? Что этому препятствует?
Очень много зависит и от страны, и от людей. В Польше, например, каждый налогоплательщик вправе передать до 1% суммы своих налогов в пользу общественной организации. Разумеется, польские OSMеры этим пользуются. В нашей стране создать и поддерживать работу НКО не так уж и просто, хватает бюрократических сложностей. Но попытка построить организацию на базе сообщества RU-OSM предпринималась. В 2012 году был создан неформальный Совет RU-OSM. Активно он работал меньше года. А теперь же у сообщества не хватает решимости даже просто распустить этот странный совещательный орган. По слухам, кто-то несколько раз в несколько лет отвечал на письма, которые поступали на e-mail Совета, но вот приемной Совета на форуме никто не отвечает это точно. Мне говорят: «Ну, это же это никому не мешает?» На что я отвечаю: «Но и не помогает же?» Если вы действительно хотите серьезно участвовать в деятельности OSM, как организации, то всегда можете присоединиться к международному Фонду OSM.
— Чтобы пожелали новичку проекта OSM? Почему стоит картографировать?
— Посоветовал бы познавать мир. В OSM — это карты, технологии, люди. Ну и запастись терпением, ибо OSM — это не результат, а бесконечный процесс.
— Вы сами используете OSM в работе? Или в личной жизни?
— По работе я использую знания и технологии, с которыми я познакомился в OSM. Например, два месяца назад вдруг вставил карту с подложкой OSM в одну из своих программ, которые разрабатываю на работе. Пока в качестве эксперимента, но всем очень понравилось. В личной жизни — это программы с картами и навигацией вне Москвы, к сожалению, качество информации о дорожных пробках в программах на базе OSM пока не высоко. Перед тем, как куда-то поехать — картографирую эту территорию, чтобы получше познакомиться с ней. И наоборот, после поездки уточняю карту, приводя в порядок свои впечатления от поездки.
— Назовите несколько проектов, основанных на OSM, которые вам нравятся или которые вы можете порекомендовать.
— Огромную зависть вызывает проект импорта адресов и домиков из эстонского кадастра. Программа при минимальных усилиях пользователя позволяет просматривать и вносить информацию о тысячах домов.
Игра Generation Streets — отличная идея: добавить к данным OSM то, чего там не хватает, чтобы сделать красиво.
Mapillary — регулярно через мобильное приложение снимаю панорамы улиц, когда еду на авто или бываю в новых местах. В итоге у меня получается что-то на вроде протокола. Некоторые снимки — хорошие — потом сохраняю себе на память.
Sight Safari — неплохая задумка: использовать для построения маршрута не как это обычно бывает — время пути, а его красоту и познавательность.
![](https://habrastorage.org/webt/rn/r3/6r/rnr36rtnwpeqrs2mmj_bu1k48-0.jpeg)
Уютный питерский дворик, снятый и загруженный wowik на Mapillary
— Что бы вы сказали в завершении беседы?
— Обычно, когда рассказывают про OSM, начинают с того, что можно в нем делать. Но совсем забывают рассказать, что нельзя делать, как не навредить проекту.
Во-первых, нельзя тащить с миру по нитке без разбору. Вся затея с OSM была задумана для того, чтобы собрать данные, свободные для использования, свободные от всяческих прав третьих сторон. Поэтому вопрос лицензионной чистоты вносимых данных важнее их полноты и точности. Делая свой проект на данных OSM, люди хотят быть уверенными, что данные никуда вдруг не денутся из-за чьих-то претензий.
Во-вторых, нельзя не уважать чужой труд и чужое мнение. Люди в проекте разные, по любому вопросу обычно есть, как минимум, два различных мнения, зачастую противоположных.
Общение российских участников OpenStreetMap идёт в чатике Telegram и на форуме.
Также есть группы в социальных сетях ВКонтакте, Facebook, но в них, в основном, публикуются новости.
→ Присоединяйтесь к OSM!
Предыдущие интервью: SviMik, Кирилл Бондаренко, Артем Светлов, Сергей Синицын, Наталья Козловская, Виктор Вяличкин, Иван aka BANO.notIT, Антон Беличков, Елена Балашова, Илья Зверев, Тимофей Субботин, Сергей Голубев.