Две плюшки к забытому столу

20 октября, 19:58

С тех пор, как место Potlatch 2 на сайте занял iD, тот ушёл из ниши редактора для новичков чуть выше, в редакторы средней сложности. Неопытные мапперы всё так же могут ломать в нём отношения, но те, кто запомнил пару десятков шорткатов, правят карту не сильно медленнее пользователей JOSM. Однако Ричард не развивает редактор уже пару лет: рассылка еле жива, коммиты в репозиторий — сплошь переводы из translatewiki. Претензии полностью иссякли: похоже, единственным недостатком потлатча было то, что он открывался по умолчанию. За два года количество пользователей редактора упало впятеро, но их пока больше, чем у JOSM, меняющегося каждый день.

Неделю назад Ричард картинкой из «Флэша Гордона» заявил: потлатч ещё жив! Несколько полезных для опытных редакторов функций давно написаны процентов на 90, и у автора появилось время добить их до работоспособного состояния. Первая — шорткаты для тегов. Вдобавок к «R», копирующему теги с предыдущего выделенного объекта, можно нажать Shift+Fn (где 2 ≤ n ≤ 12) и сохранить все теги объекта на функциональной клавише. Вторая функция — плавающее окно с альтернативной подложкой, которое открывается галочкой в списке подложек. Сделано для идентификации объектов на снимке по аналогам генштаба, но можно, заблокировав масштаб, использовать как мини-карту, чтобы не потеряться.

В комментариях пользователи сетуют, что так и не появилась функция восстановления удалённых объектов — единственная причина держать на сайте Potlatch 1. «Что ж поделаешь — функция сделана в обход OSM API, повторить её едва ли получится», — сожалеет Ричард. «Я только что добавил поддержку вызова /deleted в OSM API с параметрами, аналогичными вызову /map. Он возвращает список удалённых объектов в прямоугольнике», — парирует Фредерик Рамм в, почему-то, рассылке josm-dev@. Фредерик, очевидно, хочет добавить восстановление удалённого в редактор JOSM, но если у Ричарда выпадет пара свободных дней, вполне вероятно, что первый потлатч, не обновлявшийся с 2010 года, окончательно исчезнет. Помимо уменьшения головной боли админам и программистам, это позволит выкорчевать поддержку протокола AMF из сайта osm.org, упростив перевод API на C++ для версии 0.7.

Миллионы домиков

20 октября, 0:54

В сентябре 2013 года адресные точки и контуры зданий Нью-Йорка были выложены в public domain. Компания MapBox, большинство клиентов которой — американцы, немедленно взялась их импортировать в OpenStreetMap. Но поскольку они не французы и понимают, что нельзя просто взять и скопировать, процесс затянулся на год и затронул около 20 сотрудников. После десятков обсуждений, документирования, написания кода, обработки и постобработки данных, в Нью-Йорке появился миллион зданий и 900 тысяч адресных точек. Для сравнения, в России нарисовано всего 7 млн зданий. Алекс Барт рассказал об исходных данных, результатах и выводах. Исходные коды всех инструментов опубликованы на GitHub.

В похожей заметке блога MapBox Алекс поведал решение проблемы обновления исходного набора данных на сайте города. Наша лицензия не позволяет напрямую копировать обновления в базу под public domain, поэтому нью-йоркский отдел ГИС получает ежедневную сводку с изменениями в адресации и контурах домов в OSM. Увы, перевести наши данные под PD для упрощения транзакций у компании не получилось.

Этим летом команда переключилась на другие города США. В июле импортировали 150 тысяч домов в Сан-Франциско. Сейчас идёт импорт трёх миллионов домов в Лос-Анджелесе (фрагмент — на картинке выше, из твита Эрика Фишера). Также обнаружил, что Ian Dees в марте 2013 года импортировал 300 тысяч домов в Чикаго — правда, более простым способом, без лишних дискуссий.

В нашем сообществе никто, кроме отдельных программистов, не любит импорты. По разным причинам, но чаще всего — потому что они делаются тяп-ляп, и результат ни поправить, ни откатить. С 2008 года длинная инструкция в вики описывает, какие шаги должен пройти идеальный импорт. Правда, мало кто ей следует. MapBox же обещает соответствовать не только этим требованиям, но и собственным правилам, которые сводятся к одному: «мы уважаем сообщество и учитываем его на всех этапах импортирования». Кажется очевидным, но пойди найди какого-нибудь другого импортёра, который подпишется под таким. Мы уже рады, когда уважение к работе других участников OSM проявляют обычные мапперы, редактирующие карту вручную.

Двое на галеры

19 октября, 1:25

Как я уже упоминал на радио, надвигается конференция State of the Map, которая означает ежегодное собрание OSMF, что, в свою очередь, напоминает нам о выборах. Фредерик Рамм и Мэтт Эймос выходят из Совета, и с четверга кандидаты на их места записываются в эту вики-страницу. В этом году мы голосуем не за одного претендента, а ранжируя их: так голоса не угадавших лидера не пропадут зря — если, конечно, нам будет из кого выбрать. Претендентов пока немного, и этому две причины.

Во-первых, в прошлом году мы поменяли схему участия, и теперь в OSMF три вида членов: обычные, ассоциированные и корпоративные. Первые отличаются от вторых только тем, что предоставили адрес проживания. Ну и их список можно получить по запросу. В Совете могут работать только обычные члены — но после новогодней сортировки в них осталась только треть от общего числа. То есть, на сегодня потенциальных кандидатов меньше двухсот. Конечно, желающие могут быстро зарегистрироваться, или поменять вид членства.

Кстати, обновлённая позавчера статистика участников OSMF открывает странный тренд: в последние четыре месяца общее количество участников не росло, а в сентябре даже уменьшилось на десять. Немного компенсируют это 5 корпоративных членов (среди которых наш NextGIS). Кажется, вопрос ухода обычных людей из Фонда не волнует Совет: на августовской встрече они решили, что нужно развивать корпоративное членство, и к SotM составят проект его уровней (т. е. не один вид, а несколько, с разной стоимостью).

Вторая причина падения интереса к работе в Совете — многолетний застой в проекте. Я дважды попытался поднять тему в рассылке osmf-talk@ (про смерть, про отдых): OpenStreetMap стал слишком большим, и ранняя идеология — программисты сами поставят и решат все задачи — уже не работает, поэтому примерно с 2011 года ничего не происходит без инициативы сторонних организаций. А те не заинтересованы в развитии самого проекта, в непользовательских частях: API, сбор данных, сложное редактирование. OSMF должен вырасти в большую организацию наподобие Фонда Викимедиа, с долгосрочной стратегией, с платными рабочими местами, не боящуюся расширяться в новые ниши. Весь Совет поголовно считает, что номинальных задач — поддержки серверов и разрешения конфликтов между участниками — более чем достаточно. Обновлённый манифест разочарованного Фредерика (обязательно прочитайте) это отлично иллюстрирует. Ричард Фэйрхёрст, проработавший в Совете полтора года и шумно его покинувший, шутит в чатике, что починить OSMF можно, заменив разом весь состав Совета, а не только пару человек, которые, как он намекает, не являются частью проблемы.

Так что на плечи будущих членов Совета ложится ответственность чуть выше обычного: либо они станут во главе организации и поведут её в светлое будущее, либо, исчезнув в паутине процессов, окончательно дискредитируют Совет как управляющий орган OpenStreetMap — и тогда уже с уверенностью поставим вопрос о его разгоне.

Возможно, эта инерционность, граничащая с апатией, стала причиной процедурных задержек в этом году: так, на подготовку предложения по месту проведения State of the Map 2015 выделено всего 2,5 недели: приём заявок открыли 14 октября, и в Буэнос-Айресе уже хотят объявить победителя. Всё идёт к тому, что следующей осенью мы полетим в YOUR CITY.

От руки

18 октября, 16:45

Открыв слой «Roantra» на OpenGeofiction, сначала вспоминаешь французский карандашный стиль. Он впечатляет каждый раз, даже сейчас потаскал карту, рассмотрел текстуры. Но карта республики Roantra особенная: немец Фило Стапф нарисовал её всю от руки, включая столицу, Yasheu. Кроме того, он сгенерировал рельеф, и недавно перенёс всё нарисованное в проект OpenGeofiction, расширив и дополнив. Вместе с другим разработчиком, он представил проект на SotM EU 2014.

Галерея геокубизма

7 октября, 13:35

Объявленный в середине лета конкурс логотипов JOSM на финишной прямой: разработчики опубликовали присланные заявки и предлагают помочь в выборе. Дирк благодарит всех участников; он не ожидал, что их будет так много. Конечно, есть пара вариантов и от Фелиса, два года назад работавшего над альтернативным интерфейсом редактора. Разработчики поясняют, что открытого голосования не будет, но они рады услышать и учесть ваше мнение — напишите пару слов на contest@josm.openstreetmap.de. Следующая «стабильная» версия JOSM выйдет уже с новым оформлением.

Его ворсейшество

7 октября, 11:34

Мы помним карты на обоях, пледы из карт, рельефные карты, аэрографию на машины и наклейки на трамваи, краску на асфальте в МИИГАиК, выжженную карту на доске, тряпочные карты для путешественников. Дизайнер Флориан Пачер нашёл незанятую нишу: он печатает карты на коврах. Точнее, фрагменты спутниковых снимков: они цветные, и мозаика возделываемых полей достойно заменяет привычные узоры. Его работу воспели в десятках изданий по архитектурному дизайну, включая русскую версию Architectural Digest. (via kulturologia.ru)

Выходные в метро

17 сентября, 14:01

Проекту «Метро для всех» через неделю исполнится год. По духу он совершенно осмерский: группа энтузиастов на свои деньги ездит по городам и картирует станции метро, все до единой. Затем собранное оформляется, публикуется на сайте, и человек с тяжёлой коляской может посмотреть, стоит ли ему ехать кратчайшим путём, или с двумя пересадками, но без лишних ступенек. Работа чуть сложнее, чем отметка доступности отдельных заведений (см. wheelmap и его русские клоны), но картинки получаются красивее и полезнее.

Одним из первых городов был Петербург: хотя никакие местные издания про проект не написали, маршруты точно так же аннотируются списком препятствий, и нигде больше вы так просто не узнаете, что в Автово с коляской лучше не соваться. Однако схемы станций местами устарели, местами просто неточны. Команда «Метро для всех» решила, что пора подтянуть город к общему уровню, и 20—21 сентября, в эти выходные, она устраивает хакатон «MetroHack 2014» в коворкинге «ChangeLab» на Василеостровской.

Кроме объезда станций и обновления схемы есть и более осмерские задачи: мы решили, что просто открыть данные недостаточно, пора улучшать карту метро в OpenStreetMap. Мы знаем (или узнаем), как под землёй идут все туннели, сколько ступеней в каждой лестнице, и где установлены лифты. Я обновил схему тегирования метро в соответствии со схемой общественного транспорта, ныне используемыми тегами и обсуждениями на форуме. Наконец, обходя станции, мы обратим внимание и на то, что лежит снаружи вестибюля: закартируем прилежащие тротуары и подземные переходы. Результатом хакатона станет не только пополнение сайта «Метро для всех», но и улучшение OpenStreetMap.

Можно прийти на пару часов, можно вкалывать с нами все два дня, можно вообще не приходить, а поругать схему на форуме. Регистрируйтесь на сайте, если решитесь, чем раньше — тем лучше. Картовстреч в Петербурге до весны не планируется, так что это последняя возможность сообща что-то сделать для карты города.

Весь покрытый зеленью

11 сентября, 10:54

Что это за точка в Атлантическом океане? Определённо, остров. Одно из значений слова null — «несуществующий», и оно верно: на самом деле, там пусто, несмотря на то, что в OpenStreetMap там каждый день разные вещи. Точка (0; 0) знакома каждому картографу: она часто притягивает данные, которые должны быть в другом месте. «Null Island» — это также самоназвание группы весёлых ГИС-разработчиков в Штатах (преимущественно из Stamen), которые вчера собрались на вечеринке в рамках FOSS4G. Конечно, у них есть футболки, подробная карта и сайт острова. Многие догадались, что поскольку в разных системах координат центр различен, остров на самом деле архипелаг, и Стивен Мэзер построил его схему.

Кстати, компания Stamen снова получила грант фонда Knight Foundation (того, что спонсировал редактор iD) на новые серверы, расширение слоя Terrain на весь мир и улучшение повсеместно используемого слоя Toner. Последний они в честь события опубликовали на GitHub — теперь его, наконец, можно самостоятельно починить для использования в обходных листах.

Он снова здесь

11 сентября, 1:44

Помните, когда-то в древности была такая библиотека — OpenLayers? В своё время технологический прорыв, она выросла в большого некрасивого монстра, которым пользовались, скорее, от отсутствия альтернатив и от действительно хорошо оттестированного движка, работавшего даже на безнадёжно устаревших браузерах, вроде Opera. Последнее немного затормозило распространение Leaflet (и я был в числе недовольных, когда он захватил osm.org), но ненадолго: теперь библиотекой OpenLayers пользуются либо бородатые ГИС-программисты, либо новички, по несчастью наткнувшиеся на слишком старый учебник.

Две недели назад многолетняя работа по осовремениванию движка завершилась выпуском версии 3.0.0. На сайте, к сожалению, нет учебника, кроме несуразного quick start (прошлая версия тоже страдала отсутствием вменяемой документации), потому создаётся впечатление, что получилось стильно, кратко, молодёжно: даже скрипт библиотеки теперь называется ol.js. В анонсах упор делают на WebGL и трёхмерные карты, хотя в примерах их непросто найти. Если погрузиться в справочник, всплывают страшные конструкции, вроде ol.control.defaults().extend({...}) для банального добавления элементов управления, и понимаешь, что проще не стало.

Пока писал эту заметку, делал и расширял небольшой пример использования библиотеки, значительно проще официального. Вот что я вынес из этих шести строчек и пары десятков страниц документации:

  • чтобы написать шесть строчек кода, нужно прочитать пару десятков страниц документации по API: примеры и учебник только запутают;
  • А-А-А-А! нажмите Alt+Shift и подвигайте карту! Включено по умолчанию!
  • надеялся, что за это время в команде появился дизайнер, но нет: все элементы интерфейса так же неприглядны;
  • по умолчанию прячут копирайты под значок — что в своё время не сошло с рук MapBox-у;
  • снова чехарда с проекциями, но полегче: не нужно создавать кучу вспомогательных классов;
  • потому что многие константы и объекты можно заменить простыми строками;
  • не lat-lon, а lon-lat, как у взрослых;
  • снова тысяча мелочей из коробки, вроде библиотеки слоёв, экспорта в PNG, разбора OSM XML, кластеринга и heatmap-ов;
  • несмотря на обещанный «high-quality documentation», хорошо выглядит только справочник по API, да и то — до первого вопроса про типы параметров функций;
  • дробный масштаб — не для солидных людей, судя по отсутствию простого способа его включить;
  • надеялся на функциональный аналог Leaflet.draw, но его нет;
  • боюсь представить, как к библиотеке пишутся плагины;
  • интерактивная карта на главной openlayers.org — самая узкая, что я когда-либо видел.

В целом, здорово, что OpenLayers жив. Он — необходимый противовес Leaflet, почти полная противоположность: подтормаживает, сложный и насыщенный API (хотя файл js больше всего в три раза), разработчиков команда, версия больше нуля. Поначалу эта заметка должна была быть негативной, но когда разбираешься, как и зачем сделаны некоторые непривычные вещи в библиотеке, понимаешь объём проделанной работы, её суть и адресатов. Пока не стоит бежать переписывать на неё все свои проекты, но после пары минорных релизов и выпуска документации OpenLayers, без сомнения, пошатнёт позиции Leaflet как «монополиста» в пользовательской картографии.

Пара парней-дизайнеров удалилась

8 сентября, 0:00

Закрыв OSMRanking, группа altogetherlost нашла, куда пристроить свой более популярный сервис статистики OSMStats. Теперь им заведует Паскаль Найс, известный своими тематическими картами. Разумеется, он не преминул покопаться внутри сервиса, добавив выбор даты, статистику по ченджсетам и графики за год для стран и активных участников. Работа недизайнера заметна с первого взгляда: пропали градиенты и тени, а дату выбирать, мягко говоря, неудобно.

Ctrl +  Ранее