И сколько при этом памяти потребляет? И на каком железе? Правда, 20-мегабайтные файлы для редактирования вряд ли кто-то загружать будет, а то 10 секунд - это уже неудобно.
Программа предполагается кроссплатформенной?
И еще, в качестве пожелания и для обсуждения. Мне давно уже укажется, что хороший редактор для OSM должен иметь в себе препроцессор (встроенный или серверный). Дело в том, что сейчас порог входа в проект для новичков достаточно высок - необходимо обладать знаниями о раличных тегах и их сочетаниях, читать форум и вики для понимания существующих договоренностей в сообществе и так далее (знать английский, например). JOSM, Merkaartor и Potlatch уже предоставили возможность использования готовых пресетов для множества объектов, но и это не идеальное решение. Возможно, ситуацию изменит Mapzen, но его пока мало кто видел, да и не все готовы работать с онлайновым редактором.
Решением этой проблемы я вижу создание набора правил, обрабатывающих те или иные ситуации. По этим правилам программа автоматически заменяет “пользовательское” представление на принятое в проекте. Например, рисует человек линию, в списке типов отмечает - “улица” (не непонятный и общий highway, а просто “улица”). Дальше - какая улица? Он выбирает - “дворовый проезд”. И программа сама проставляет все необходимые теги, и пользователю совершенно не обязательно знать, что в базе это будет сохранено как набор highway=residential + living_street=yes.
То же самое, например, с релейшенами. Это сложное и не очень понятное понятие. Зачем забивать пользователю голову, если он может просто выделить куски улицы, нажать кнопки, скажем, “Транспорт” → “Автобус” и так обозначить маршрут? Или границу.
Или та же проблема типов дорог. Пусть программа смотрит - если дорога нарисована внутри границ города, то предлагать один список понятных типов, если за пределами - другой (федеральная трасса, дорога между городами и т.д.).
Еще на форуме обсуждалось наличие чисто локальных реалий - например, как обозначать аул или гаражи. Тут решение может быть таким же - программа автоматически ставит принятые сообществом “похожие” теги плюс свой, дополнительный. Тогда рендеры и другие редакторы увидят стандартное представление, а пользователи нашего редактора - именно свой “аул”. И будут уверены в том, что сохранилось именно так, а он не стал каким-нибудь hamlet’ом.
Еще есть просто сложные объекты - строения на островах внутри озера, берега рек всякие. Такие вещи надо знать как рисовать - вот это должно быть с таким тегом, чтобы рисовалось красиво, а вот это - таким релейшеном. Почему бы не переложить применение этого сакрального знания на программу?
Таких правил может быть очень много. При этом они позволят унифицировать подходы к рисованию внутри сообщества. А если что-то поменяется будет принят пропозал или просто большинство решит по-другому, то все правки можно будет автоматически исправить. А новые уже будут делаться с учетом изменений, поскольку редактор каждый раз будет обновлять с сервера список правил.
Я считаю, что главное - дать возможность людям рисовать, максимально просто для них. А чтобы не переделывать потом, лучше сразу предоставить удобный для всех инструмент. Все помнят, что для работы с GPSMapEdit’ом нужно было проходить специальные курсы. С имеющимися редакторами OSM стало проще, но давайте сделаем еще один шаг к удобству!