{"id":14263,"url":"\/distributions\/14263\/click?bit=1&hash=b4dc4ce4b906960991e4705d10ce304ff5052bead202f1bda35bfb08e31596b1","title":"\u0421\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0434\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u043f\u043e\u043a\u0440\u0430\u0441\u0438\u0442\u044c \u0433\u043b\u0430\u0432\u043d\u0443\u044e \u043a\u043d\u043e\u043f\u043a\u0443 \u0432 \u0447\u0451\u0440\u043d\u044b\u0439","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"edca0fea-02f8-5eb8-ae8c-3678b2acc040"}

Bunch! что это и зачем

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

в чем идея

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

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

реализация идеи

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

что есть и как этим пользоваться

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

судя по всему, самое время посетить страницу сервиса и определиться с пунктом назначения.

рабочая зона выглядит так

рабочая зона сервиса

город определяется автоматически по IP-адресу. но поле можно редактировать на случай, если поиск необходим по другому населенному пункту или если по ip определился неправильно. последнее часто случается при использовании мобильного интернета.

итак, следующее предположение -- вы находитесь в Москве, предпочитаете джинсы Levi’s или Mustang, а кофе -- исключительно Starbucks. как-то слишком по-хипстерски, но зато поиск не обещает быть простым.

заполняем поля, жмем кнопку «Bunch!» -- профит

форма, заполненная параметрами поиска и результат

теперь хоть понятно куда можно ехать и быть уверенным, что все нужное рядом.

еще можно искать по достаточно абстрактным критериям. например, найти книжные магазины и булочные в Питере на расстоянии 20 метров друг от друга.

что дальше

пока проект в стадии MPV. с простым дизайном, простой реализацией, бесплатным, ограниченным по количеству запросов, API поиска.

ближайшие планы:

  • собрать обратную связь и решить готов ли я заниматься этим дальше;
  • сделать понятный дизайн. сейчас явно ощущается, что UX/UI страдает. у многих людей, которым я просто скидывал ссылку без объяснения что это, были сложности с пониманием того, как этим пользоваться и что должно получиться;
  • сверстать новый дизайн;
  • приобрести платный тариф API поиска, без ограничений на количество запросов (самый простой и быстрый пункт);
  • оптимизировать бэкендную составляющую (нюансов много, все расписывать нет смысла).

так как над проектом трудится всего один человек-бэкендер и только в свободное время, первые два пункта уйдут на реализацию во фриланс.

в заключение

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

и еще раз ссылка на ресурс

а тут немного о проекте

0
43 комментария
Написать комментарий...
Zoibana

Даже после объяснения зачем это нужно я все ещё не понимаю какую боль пользователя решает этот сервис.

Одновременно вывести на карте точки по разным запросам? Чтобы потом в голове отобрать нужные точки, как-то их объединить и построить в голове между ними наиболее оптимальный маршрут? Да, это слегка удобнее трёх отдельных поисков на карте. Но последующий ручной анализ, ручная группировка и ручное построение оптимального маршрута - сводят в ноль все остальное.

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

В третьих, как я неоднократно убеждался лично, на поиск по карте работает как нужно только при поиске по конкретному адресу. Если же ищешь что-то абстрактное, то вываливается куча говна. Например, ищу «ремонт аймак», вылезает ряд помоек, серийных компьютерных сервисов-разводил, какие-то ноунейм конторы, а вот именно тех компаний, которые мне нужны, на карте почему-то нет. Ручная фильтрация говна нужна почти в каждом поиске.
И так аналогично по ОЧЕНЬ многим бытовым запросам. По запросу ресторан вылезает шаурмечная за углом, по запросу рекламное агентство вылезает частный риэлтор тетя Рита, которая банчит посуточной арендой хат для секса. И все в таком духе.

И никакой сервис тут уже не поможет. Вообще. Исключительно ручная работа

Ответить
Развернуть ветку
Denis Mayorov

А в Яндекс.Навигаторе кнопку "заехать" нажимали?

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

к сожалению, нет. так как не сижу за рулём.

предполагаю, что там будет что-то похожее на "места рядом" в яндекс картах. но они не дают возможность делать поиск всех пересечений, только с привязкой к текущей локации.

а если это не так, то обидно, что функционала нет для пешеходов

Ответить
Развернуть ветку
Denis Mayorov

Вы строите маршрут до точки назначения. Попутно вы указываете интересующие места: рестораны, кинотеатры, заправки. Они могут быть расположены по маршруту или в другом конце города, не имеет значения. Нажимаете "заехать" и маршрут перестраивается с учетом новых чекпоинтов.

Ответить
Развернуть ветку
Zoibana

Там есть и для пешеходов

Ответить
Развернуть ветку
Gesund Meister

Старбакс и левацс были хипстерскими в 2008, не забудь добавить кнопку «Поделиться на myspace”

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

простите, не хотел оскорблять чувства меньшинств

Ответить
Развернуть ветку
Евгений

Спасибо. Я ничего не понял. 😔

Ответить
Развернуть ветку
Евгений

И да, добавьте пожалуйста кластеризацию меток. Телефон начинает нещадно тормозить.

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

да, есть такая проблема при слишком широком поиске. ее устранение — один из первых пунктов, за который планируюсь браться в случае продолжения работ. пока можно попробовать сократить расстояние, чтоб получить более вменяемый результат.

за идею клатеризации на карте — спасибо!

Ответить
Развернуть ветку
Aleks B

Если не нашли конкурентов то это значит либо плохо искали либо это нахер никому не нужно

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

интересно, кто же был конкурентом у сервисов, которые появлялись первыми

Ответить
Развернуть ветку
Nikolay Safronov

А можно пример таких сервисов?

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

примеры сервисов, у которых нет конкурентов или у которых их не было в момент зарождения сервиса?

это две большие разницы и, надеюсь, вы понимаете, что я говорю о втором случае

Ответить
Развернуть ветку
Nikolay Safronov

Так я тоже говорю о втором. Вы забываете, что всегда есть непрямые конкуренты. У поисковых систем в момент их появления, например, это были библиотеки.

Ответить
Развернуть ветку
Aleks B

да, это называется продукт замещения, а рынки уже давно сформированы

Ответить
Развернуть ветку
Aleks B

Здравый смысл

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

вот вы и конкурируйте со здравым смыслом, я предпочитаю им руководствоваться

Ответить
Развернуть ветку
Nikolay Kenig

Незайдет

Ответить
Развернуть ветку
Scott Freak

Автор, куда вы потеряли большие буквы?

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

Я ИХ КОПЛЮ, ЧТОБ ПОТОМ ПИСАТЬ КАПСОМ

Ответить
Развернуть ветку
Scott Freak

И потом бездарно потратить на ответ мне?)

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

ну почему бездарно, вон плюсик один получил))

Ответить
Развернуть ветку
Ярик Шляхов

Ссылка не рабочая или проект настолько тяжёлый что не могу дождаться загрузки или ограничение по региону применения ?

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

а какая именно ссылка у вас не работает? можно, пожалуйста, добавить деталей, чтоб понять что пошло не так.

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

по поводу ограничения по региону — такого быть не должно.

а в самой статье все ссылки рабочие, перепроверил

Ответить
Развернуть ветку
Ярик Шляхов

ссылка в статье 
прямое название в браузере
bunch.city

работает под ВПН - как и говорил у вас ограничения по географии на стороне сервера или самого приложения - тогда стоило бы уточнить географию приложения

есть еще предположение - яндекс слегка забанен в Украине и вы возможно некорректно резолвите зависимости или хендлите ошибки - не могу утверждать точно

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

похоже на ограничение со стороны сервера. попробую узнать у провайдера vds.

сам из-под vpn и разных стран не тестировал.

спасибо!

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

@Zoibana 

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

по поводу построения путей —  в моем понимании, задача немного за рамками mvp-проекта. тем более, что не всегда оно нужно, так как все локации могут быть в шаговой доступности. и изначально проблема как раз была в том, чтоб увидеть на карте те места, где необходимые организации расположены в удобной доступности. зачем строить оптимальный маршрут, если между точками назначения 100-300 метров.

касаемо поиска чего-то абстрактного — да, такая проблема есть и автоматически она нерешаема, но есть большая часть запросов, когда можно конкретизировать критерии поиска

Ответить
Развернуть ветку
Eugene Danilov

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

Ответить
Развернуть ветку
Eugene Danilov

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

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

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

Ответить
Развернуть ветку
Dmitri Atname

Поехать на другую сторону города, чтобы между аптекой и сбербанком было не 300, а 100 метров? 😉

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

если вам уж точно куда-то ехать и вы хотите именно заехать по пути куда-то еще — нет)
а если вы, условно, в центре и вам не важно куда ехать — на север или на юг — можно поискать с помощью сервиса необходимые места и обнаружить, что на севере они расположены кучнее, а на юге как-то неудобно. и поехать на север. как-то так))

Ответить
Развернуть ветку
Dmitrii Ivanov

Идея хороша, воспользовался сервисом.
1) Не хватает легенды для карты, какого цвета маркер какому заведению из моего поиска соответствует.
2) Вместо обычного текстового поля для ввода расстояния следует сделать ползунок (slider) с асинхронным поиском. Я заранее не знаю, какое расстояние между точками моего поискового запроса
3) Возможность выделить область поиска

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

спасибо большое!

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

Ответить
Развернуть ветку
Dmitry

Посмотрите сервис zigzag, ранее на VC была статья. Удачи.

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

спасибо большое!

сервис zigzag — вот это https://zig-zag.org/about?

Ответить
Развернуть ветку
Eraj Rahmonberdiev

Ислам, вы родом из РТ?

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

здравствуйте!
нет, из РД

Ответить
Развернуть ветку
Аккаунт заморожен

Комментарий недоступен

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

воу, даже я такого не ожидал) спасибо)

Ответить
Развернуть ветку
Александр Коломытов

Мне понравилось.
Могу забить все точки, которые мне нужны и покажет наилучший вариант.
Правда проблема в том, что вариант в котором все находится рядом - в 10 км от дома, не очень подходит.
Было бы классно, если бы указывать расстояние не 200 метров, а ближайший вариант ко мне, с параметром «пешком не более 5/10/15 минут» друг от друга.

Ответить
Развернуть ветку
Ислам Исрафилов
Автор

спасибо!

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

Ответить
Развернуть ветку
40 комментариев
Раскрывать всегда