Maps.me для тех, кто не пользуется maps.me

Posted by Anton Khorev on 1/31/2018

Недавно в дневнике одного из участников была опубликована запись (теперь уже отредактированная) про модерацию в российском разделе форума. Ряд участников, обратив внимание на вклад автора, посчитал нужным отметить, что эта запись по сути является анонимной, что позволяет не относиться к ней серьёзно. Одной из высказанных в записи мыслей является то, что один из модераторов форума, Zverik, является также разработчиком maps.me, что может влиять на его действия при обсуждении этого приложения и, особенно, использования этого приложения в качестве редактора. Активным участникам всё это и так известно, и мне, казалось бы, нет необходимости упоминать здесь эту запись, однако некоторые комментарии к ней вызывают интерес. Автор записи, в частности, отмечает, что на форуме была закрыта тема «Ошибки пользователей редактора maps.me». Закрыта она была, так как модераторы посчитали, что обсуждать этот предмет надо в общей теме про maps.me, а обсуждение в теме ошибок имеет тенденцию переходить к оскорблениям в адрес модератора-разработчика. Тут следует заметить, что Zverik непосредственно перед публикацией записи сделал несколько неудачных высказываний на форуме, например о том, что одним из правил является недопустимость оскорблений особенно разработчиков, хотя понятно, что такого правила нет и быть не должно. Однако в комментариях к записи были сделаны и более радикальные замечания, в частности о том, что русский раздел форума вообще не предназначен для обсуждения maps.me. Сам Zverik с подобными утверждениями согласия не выражал.

Существенному количеству участников не нравится maps.me, и может показаться, что им действительно стоило бы либо перестать пользоваться этим приложением, либо писать в о нём в официальных каналах связи с разработчиками, вместо того, чтобы выражать своё недовольство на форуме. Но даже если они перестанут пользоваться maps.me, им всё равно придётся иметь дело с правками, выполняемыми из него. Соответственно и maps.me можно обсуждать с двух сторон: как приложение, которым вы хотели бы пользоваться, и как явление с которым приходится иметь дело. Это две разные темы, и вторую тему не имеет смысла обсуждать в гугл плей и подобных местах.

Допустим, что мы решили, что две темы про maps.me на форуме – это нормально. В этом случае всё равно можно возразить, что одна из них имеет негативный характер, так как у неё в названии содержится слово «ошибки». А что, собственно, заслуживает обсуждения – правильные правки? В осме, например, есть обсуждения пакетов правок. Для чего им пользуются? Ну иногда для того, чтобы сказать автору правки, что он занимается вандализмом, ведением войны правок и всё ломает (это были примеры комментариев к некоторым моим правкам), но обычно это обсуждение реальных или потенциальных ошибок. Так что ошибки в осме обсуждаются, а если кто-то захочет перейти к замечаниям про вандализм и т.п. в форме, неприемлемой для форума, то на этот случай есть модераторы, которых помимо Zverik’а ещё два. Если вам кажется, что форум – не место для обсуждения ошибок, потому что существует упомянутое выше обсуждение пакетов правок, то вы должны быть и против темы «откаты правок». Вы можете сказать, что «откаты правок» - для тех случаев, когда обсуждение пакета не помогло. Ну так и в случае с правками из maps.me оно не поможет.

Ошибки в правках как особенности редакторов

Многие ошибки в редакторах, ориентированных на новичков, объясняются особенностями самих редакторов. Maps.me – это редактор не просто для новичков, а даже для тех, кто не понимает, где именно он редактирует данные, и даже что действия из редактора являются именно редактированием общих данных. Но ведь maps.me используют не только новички, но и опытные участники. Можно же им редактировать и не делать всего того, про что написано ниже? При определённых условиях можно, и я об этом писал (например, про перекрывание доступа в интернет для maps.me с целью последующей проверки пакета в josm), но нередко и опытные участники делают всё то.

Чтобы показать, что я не придираюсь именно к maps.me, рассмотрим для начала другой редактор – iD. Вы, возможно, видели, как в правках из этого редактора некоторые точки, например, точки дорог оказываются перетащенными на существенное расстояние. В результате получается ломаная линия, проходящая сквозь препятствия в виде зданий, пересекающая другие дороги без общей точки пересечения и т.п. Ясно, что это не имеет смысла, и у вас может возникнуть мысль про выполнившего данную правку типа «он что, идиот что ли?» Но он, скорее всего, не идиот, и здесь имеет место особенность редактора. Возьмём хорошо известный вам josm. Какой кнопкой мыши вы перетаскиваете точки? Левой. Какой вы перемещаете область редактирования? Правой. А что в iD? Точки перетаскиваются левой, область прокручивается тоже левой. Если вы предпочитаете josm и никогда не пользовались iD, то попробуйте, и вы заметите, что у вас тоже получатся случайно перетащенные точки. Ну а редактор iD на сайте openstreetmap.org предлагается тем, кто не пользовался до него вообще ничем, и кто перетаскивания не заметит.

Про iD можно было бы продолжать, и да, от каждой отдельной правки из этого редактора проблем может быть больше, чем от правки из maps.me, но пора перейти к рассмотрению последнего.

Особенности редактирования из maps.me

Далеко не все из этих особенностей являются ошибками редактора, про которые можно было бы написать разработчикам, чтобы их исправили. Некоторые из особенностей определяются целевой аудиторией, некоторые - бизнес-решениями. Возможно, разработчики действительно предпочитают, чтобы на эту тему говорили поменьше. Нас интересуют такие особенности, которые воплощаются в действия пользователей, способные удивить незнакомого с maps.me участника. Ниже приведены примеры подобных действий.

Создание дубликатов уже существующих точек

Бывает, что пользователь maps.me добавляет POI рядом с такой же точкой, уже существующей в данных osm. Как он мог её не заметить? На это есть две основные причины. Первая причина: у пользователя может не быть данных о недавно добавленных точках. При условии, что пользователь регулярно обновляет приложение, данные у него будут обновляться раз в месяц, но сами данные идут с задержкой. В результате имеющиеся у пользователя данные являются устаревшими в среднем примерно на месяц. Для сравнения у osmand данные обновляются раз в месяц практически без задержки, что даёт устаревание в среднем на пару недель. Ещё в случае с osmand нет необходимости обновлять само приложение для получения новых данных, что может положительно влиять на готовность пользователя выполнять обновления. Правда у maps.me, по идее, сам объём передаваемых данных должен быть меньше, потому что они шлют диффы.

В осме есть места, не редактирующиеся годами, для которых месячный возраст данных не будет иметь значения, но есть и активно редактирующиеся места. Если открылся новый магазин в заметном месте, то существует высокая вероятность того, что он будет отмечен несколькими пользователями. Одним из этих пользователей может быть представитель данного магазина. Иногда и оба пользователя могут быть представителями. Мне известен подобный случай, когда точка была добавлена через iD. Это, конечно же, не привело к её немедленному появлению в maps.me, которого, возможно, пришлось бы ждать полтора месяца, и точка была добавлена ещё и через maps.me. Так что если вы создаёте только что открывшийся магазин, вам может понадобиться следить за отредактированным местом, чтобы отлавливать дубли. Лично у меня случалось, что в добавок ко своей точке, я получал ещё две в течении нескольких дней. Одна из них в данном случае была создана из osmand, видимо, по подобным причинам.

Неприятной особенностью этой причины возникновения дублей является то, что ситуация будет усугубляться с ростом количества пользователей. Можно себе представить, как в недалёком будущем открытие заведения, привлекающее достаточное количество обладателей смартфонов будет приводить к обозначению этого заведения десять раз. Для этого, конечно, обладатели смартфонов должны быть пользователями maps.me, а пользоваться этим приложением они захотят, если в нём будут качественные данные. Получаем отрицательную обратную связь: повышение качества данных – появление избыточного количества редактирующих из maps.me – понижение качества. В идеальном случае, когда всё метится сразу, избыточное количество равно одному.

Усугубляться ситуация будет даже и без увеличения количества желающих добавить точку в какое-либо место. Помимо этого есть и увеличение количества мест, где какая-либо точка уже добавлена. Если бы вся карта была пустая, то и дубль сделать было бы нельзя, но и вашими и мапсмишными стараниями подобные дублебезопасные места исчезают. Чем плотнее поставлены точки, тем выше вероятность и следующей причины.

Вторая причина незнания о существовании точки: у пользователя данные о существующей точке могут быть загружены, но он всё равно её не увидит, так как точка может просто не рендериться. Maps.me рендерит только то, что помещается целиком. Для POI это и иконка и подпись к ней, состоящая, обычно, из названия. Слишком большая подпись и другие точки рядом могут привести к тому, что данная POI видна не будет. Другими точками могут быть и данные не из осма, а например, из букинга – серьёзная проблема в центре Санкт-Петербурга – или ещё какая-нибудь реклама, какой были, например «артефакты» из некого фильма. Рендеринг рекламных точек является для maps.me приоритетным, а всяких апартаментов, зарегистрированных в букинге, в центре предостаточно, так что интересующая пользователя точка иногда может всплыть только в результате поиска. Если пользователь решит, что существующей в данных точки нет, и попытается её добавить, то у точки появляется второй шанс быть обнаруженной. В режиме добавления maps.me пытается рендерить всё, что есть, даже если оно накладывается друг на друга. Данные из букинга при этом не пропадают, и при достаточной плотности точек будет ничего не разобрать, так что шанс может быть упущен.

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

Создание заметок про отсутствие уже удалённых или заменённых точек

Встречаются заметки с просьбой удалить или просто с утверждением об отсустсвии того, чего рядом с этими заметками не обнаружить. Они могли быть поставлены на объект, существовавший в данных пользователя по первой причине создания дубликатов. Можно обратить внимание на то, что maps.me добавляет к тексту заметки, если он был введён пользователем, название точки, послужившей поводом к созданию заметки, её тип и дату-версию данных у пользователя. При этом пользователь не знает, что он создаёт именно заметку. Для пользователя эта операция может выглядеть как собственно удаление, так как она влияет на отображение точки. Кстати, отменить создание заметки-удаления невозможно, даже если пакет правок ещё не отправлен, в отличие, например, от создания новых точек. Ну и конечно же ни про какие пакеты правок и про то когда именно происходит загрузка данных, пользователь понятия не имеет. В датах-версиях можно заметить, что некоторые пользователи не обновляют свои данные год и больше. Имя и тип точки старые версии maps.me не писали, и заметки, относящиеся непонятно к чему со стандартным текстом «amenity doesn’t exist» всё еще могут существовать.

Создание заметки при создании точки, при том, что в заметке не содержится никакой информации, которой бы уже не было в точке

Зачем может понадобиться делать заметку, по которой ничего сделать нельзя, да и не нужно? Но пользователи maps.me просто не знают о том, что они создают заметку. У них в интерфейсе добавления точки внизу есть поле, где раньше предлагалось ввести дополнительную информацию – из неё и создавалась заметка. Сейчас, кстати, там написано «Отправить сообщение модератору OSM», хотя никаких модераторов базы данных в осме нет.

Проблема, казалось бы, невелика. Мы просто закроем заметку и всё. Но выясняется, что некоторые решают эту заметку отработать, то есть создать запрашиваемую точку. Кто же будет создавать точку, если она уже создана, не считая, конечно, пользователей maps.me? Но maps.me – не единственный редактор, позволяющий работать с устаревшими данными, и ещё один из подобных редакторов выше уже был упомянут. Но ведь, чтобы создать дубль в этом случае, надо иметь свежие данные по заметкам и старые по точкам, а такого не может быть? Выясняется, что может. В принципе вы даже из josm можете редактировать старые данные, например детально отрисовывая какое-то место так, что промежуточный результат выкладывать не имеет смысла, но заметки решили загрузить свежие, но это вряд ли. А вот из osmand создание дублей по подобным заметкам я видел. Если вы видите заметку, поставленную из maps.me, не забудьте обновить у себя данные под ней.

Задание несоответствующих друг другу тегов на одной точке

Иногда это явление происходит в очевидно бессмысленном виде: компьютерный магазин «Столовая». Можно догадаться, что на этом месте раньше был магазин, а потом открылась столовая. Пользователь поменял name, но почему он не поменял amenity/shop? Потому что редактор этого сделать не даёт. Бывают и менее очевидные случаи, например, когда ресторан помечен как ночной клуб. Ведь вполне возможно, что на самом деле это также ночной клуб. Но нет – это пользователь maps.me обновил name у точки на месте бывшего клуба.

Помимо типа точки, который пользователь видит, но не может поменять, есть и такие теги, которые пользователь даже и не видит. Это все теги, которые не вписались в шаблон для редактирования, то есть большинство использующихся тегов. Их пользователь обновлять не будет. Не прочитает он и заметки для редактирующего в note. Все редакторы можно поделить на те, которые не скрывают теги, на те, которые сначала скрывают, но могут показать, и на те, которые не могут. josm относится к первым, iD – ко вторым («все теги» обычно свёрнуто), maps.me к последним. Последние проще для неподготовленного пользователя при добавлении новых данных, зато совсем не годятся для редактирования существующих. Можно подумать, что никаких проблем быть не может, если надо всего лишь поменять значение website или opening_hours. Но представьте себе, что на точке также стоит fixme, в котором сказано, что текущее значение неправильное. После редактирования без учёта fixme, неправильным становится уже сам fixme.

Ещё бывает, когда в одном из языковых вариантов name написано одно, а в другом (или в основном name) другое. Основной name в интерфейсе запрятан подальше, так что обычный пользователь его не найдёт. Если понадобится поменять название, то будут отредактированы какие-то языковые варианты, возможно не все. Какие именно поля для языковых вариантов будут показаны пользователю – зависит от географического положения точки и системного языка. Иногда они заполнены значением, иногда пустые, точно не знаю, по какому принципу. Строго говоря, я не знаю, как в текущей версии maps.me обстоит дело с редактированием названий (например, должен ли я стереть автозаполненное название, если считаю его неправильным), потому что не хочу ставить эксперименты, чтобы определить что именно куда запишется. Знают ли это обычные пользователи maps.me, думаю, понятно.

Что вам надо делать в подобных случаях, а лучше – всегда при редактировании существующих точек: смотреть историю. Если в истории редактирования точки есть правка из maps.me, особенно если в этой правке меняется name, то это является основанием для того, чтобы не доверять остальным тегам. Придётся их либо перепроверять, либо удалять.

Создание новых точек вместо редактирования существующих либо без удаления старых

Собственно удалять из maps.me нельзя. Но и редактировать уже существующие точки, как было сказано выше, тоже нередко нельзя. Получается, что типичное явление, когда закрывается один магазин, и на его месте открывается другой, ввести из maps.me нельзя. Но это не значит, что пользователи не будут пытаться, с соответствующим результатом. Конечно, нередко пользователь не знает, что новый магазин появился вместо, а не дополнительно к старому. В этом случае добавление новой точки и ничегонеделание со старой будет ошибкой самого пользователя без какой-ли помощи со стороны maps.me, если только maps.me старую точку не скрыл, см. вторую причину дубликатов. Но что пользователь мог бы сделать со старой? Ну, например, поставить на неё заметку, о том что её нет. На самом деле ему бы следовало этой заметкой и ограничиться, а про новую точку написать в комментарии, но до всего этого надо догадаться, а пользователь не знает даже о существовании заметок и о различии записи в node и в note.

Создание точек с неподходящим типом

Бывает, что в городе вдруг появляются водопады и прочие объекты, которых не может там быть. Это пользователь maps.me захотел обозначить что-то, для чего доступного для выбора типа в maps.me не нашлось. Список доступных типов ограничен, а один из них выбрать обязательно нужно. Можно было бы догадаться поставить заметку, но на пустом месте это сделать не получится, так что, если заметка и появится, то только вместе с водопадом. Скорее всего, однако, заметка не появится, и вам придётся либо угадывать, что имел в виду пользователь, либо откатывать.

Спам

К сожалению, спам не ограничивается известным случаем с тегом banner_url. Рассмотрим историю редактирования одного уже удалённого здания. Как видно, в версии #10 помимо этажности я задал название и сайт. Как мне это удалось, если maps.me не даёт редактировать названия у зданий? Конечно же я ничего, кроме этажности править не собирался, но у maps.me свои соображения на этот счёт. Есть агентство недвижимости на букву Ц, рекламу которого можно увидеть в приложении в общем и на некоторых зданиях в отдельности, во всяком случае в Санкт-Петербурге. Редактирование этих зданий может привести к попаданию в правку рекламы Ц. Если вы видите подозрительные name и website на здании, то надо опять же проверить историю редактирования на предмет наличия в ней правок из maps.me. Если они есть, то возможно следует их откатить.

Ввод данных с точностью плюс-минус дом

Пользователи maps.me ставят точки мимо нужного здания несколько чаще, чем пользователи других редакторов. Объясняется тем, что им приходится рассчитывать на gps, находясь рядом со зданиями, отсутствием спутника/аэрофотосъёмки в качестве подложки и невозможность подвинуть свои точки после добавления. Например, один пользователь, входящий в топ-10 редактирующих из maps.me, идёт вдоль улицы и вносит все POI подряд, не зная, что вместо дома n их надо было ставить в n+2, вместо n+2 – в n+4 и т.д. Дойдя до конца квартала, он, конечно, поймёт, что ошибся, но исправить ошибку уже не сможет. Это не очень хороший повод для доверия к точности координат точек менее топовых пользователей. Мимо точки ставят и без maps.me, да и магазины, бывает, в действительности перемещаются в соседний дом, но если вы видите точку не на том здании, на каком считаете, что она должна быть, её создание правкой из maps.me – аргумент в вашу пользу. Ну и некоторые вообще в здание попасть не могут, и ставят на проезжую часть. Может быть они ожидают, что в интерфейсе добавления в нужное место надо ткнуть, а не тащить его под «прицел».

Нелогичное объединение правок в пакеты

Пакеты правок, создаваемые пользователями maps.me могут быть как «атомарными», содержащими одну точку, так и «планетарного масштаба», с правками в разных частях света. И зачем пользователи так разбивают свои правки на пакеты? А они их и не разбивают, это за них делает приложение. Правки с одной точкой будут у тех, у кого с интернетом всё в порядке, «планетарные» будут у туристов, экономящих мобильный трафик. Я видел пакет, в котором помимо создания дублей в СПб, было создание дублей во Франции (и коллегам оттуда приходилось делать suppression d’un restaurant en doublon) и, может быть, не-дублей на Шри-Ланке. Пакеты могут быть и пустыми – это если соединение оборвётся.

Прочее

Можно было бы ещё отметить малую вероятность реакции на обсуждение пакета правок, добавление личных заметок, добавление нескольких заметок в одно и то же место и т.п.

Насколько это плохо и что с этим делать

Вкратце можно сказать, что в хорошо отмапленных местах от всего этого вреда не так много, но и пользы от правок maps.me гораздо меньше, чем хотелось бы разработчикам. Я даже скажу, что если бы в Адмиралтейском районе СПб пользователи maps.me не сделали ни одной правки, то вы бы разницы не заметили. Ну, допустим, некоторые точки появились бы попозже. В Центральном районе, может быть, эффект от maps.me побольше. Так что выпиливать все правки maps.me в этих местах не нужно. А вот как обстоят дела в местах, где доля правок из maps.me выше, было бы интересно узнать. Более подробные рассуждения на эту тему придётся оставить на потом, так как эта запись получилась слишком длинная.