Не сменить ли нам лицензию
Пока все развлекались, организаторы опубликовали видеозаписи первого дня докладов. Посмотрел на себя — и удивился, что говорил всего 12 минут. Похоже, чем хуже готовлюсь, тем длиннее доклад: на линуксфесте беспомощно протянул час, здесь ворочал четыре слайда в минуту и запнулся всего пару раз. Затем не удержался и посмотрел ещё доклад Энди Аллана, который великолепно раскрыл стек рендеринга через векторные тайлы и объяснил, почему на osm.org до них ещё далеко. Из интересного посмотрю ещё Денниса Люксена про OSRM (он начал с автоматического вычисления важности дорог в сети, что мы делаем вручную для значений highway) и первую пачку коротких докладов (там Джерри Кло что-то говории про деревья, это пригодится для завтра).
Половина второго дня конференции стоила всей пятницы. Я пропустил несколько докладов, на которые стоило сходить — в частности, Wall-E и, сейчас, Keynote Дирка Хелбинга. Но узнал подробности об Imposm, альтернативе osm2pgsql, разрабатываемой спонсором конференции Omniscale. Крутая программа, но в каждой версии были свои недостатки: первая была закрытой, вторая щеголяла умопомрачительными фичами, вроде хранения промежуточных данных в отдельном NoSQL, продвинутой обработкой тегов и сверхзвуковой скоростью обработки. Но потом в списке шло «диффы не поддерживаются», и — oh well. Третья версия пока в разработке: документации ноль. Её переписали на Go, промежуточные данные хранятся ещё компактнее (8 байт на точку), предобработка тегов ограничена, зато поддерживает диффы. Серверы Omniscale работают с диффами уже три месяца, пока ничего не сломалось. Некоторые видели, что стиль OSM Bright подготовлен для базы как osm2pgsql, так и imposm, хотя таким больше никто, кроме MapBox, не занимается.
Роланд из всех применений своего Overpass API выбрал самое эффективное: редактирование больших данных в OpenStreetMap: например, дорожной сети в масштабах региона. Для этого нужен плагин mirrored_download, он умеет грузить данные Overpass. Дальше, например, если хотите поработать над маршрутами общественного транспорта в городе, загружаете все highway=* и railway=* (для трамваев), точки highway, railway и public_transport, и все линии и отношения для всех точек и линий. Так можно быть уверенным, что вероятность сломать какое-то отношение при редактировании минимальна. Конечно, можно и по-старинке: сделать GPS-трек и сказать жосму скачать все данные вдоль него.
Короткие доклады были интересными, особенно по части HOT — люблю, когда за трибуной мапперы, а не программисты. К сожалению, второй слот отменили, поэтому я не успел ничего рассказать. Но там выступил не менее интересный человек: Майкл Коллинсон рассказал про нашу лицензию и про Community Guidelines, принятые Советом неделю назад, и объясняющие многие непонятные случаи использования данных. После него слово взял Алекс Барт из MapBox, в очередной раз выступивший за снятие ограничения Share-Alike на наши данные. Как всегда, вспыхнуло обсуждение, из-за которого мы на 20 минут опоздали на ланч, но тема богатая. Нужно понимать, что хотя сейчас на это никто не пойдёт, рано или поздно наши данные сменят лицензию, сначала теряя Share-Alike, а когда-нибудь — может, лет через 30, — полностью перейдя в общественное достояние. Об этом нужно задумываться прямо сегодня, особенно перед импортом данных из частично свободных источников.
(фотография Саймона Пула)