Пикабу, привет.
Я — Андрей. Люблю природу… ну и программировать тоже. Ниже — длиннопост с историей о том, как любовь к природе, палаткам и экотропам привела меня к созданию своего проекта (сайта).
Летом часто выбираюсь за город с палатками на выходные. Но в процессе подготовки к поездке всегда возникает вопрос: «Куда едем?» И тут начинается: нужно классное место под палатку, чтобы и водичка была, и виды, и народу немного, а ещё чтобы на машине можно было подъехать и т.д. Обычно я искал место, куда поехать, изучая карты, спутниковые снимки, форумы, делал раскладку Таро. И вот в процессе очередного поиска такого места я психанул и решил запилить свой проект.
Под катом я бы хотел познакомить вас с этим проектом, рассказать о пути к его созданию и, по возможности, получить обратную связь. :)
Видение того, что я хочу получить, сразу нарисовалось в голове — это сайт с интерактивной картой, на которой размещены метки. Каждая метка — это стоянка, место, где можно удобно остановиться с палаткой. Нажав на такую метку, появляется полезная информация.
Что нужно отображать на метке (маркере)? Я ориентировался на те вещи, которые всегда волнуют меня (исследований и опросов не проводил):
Сложность маршрута до места;
Наличие дров;
Насколько сильно докучают комары;
Тип леса (я тошнотик в этом плане, бор - наше всё, еловые дебри обхожу стороной);
Есть ли инфраструктура на полянке? Например, костровище, столики/скамейки или основа походной бани;
Ну и, конечно, фоточки места, желательно — что именно меня там ждёт и каковы виды вокруг.
При разработке макета маркера для меня было важно минимизировать объём текста. Мне кажется, что определённую информацию проще воспринимать через картинки, без необходимости читать много текста. Собственно, после нескольких неудачных набросков в Miro, появился этот вариант:
Квадратики с закругленными углами — это тематические иконки, отображающие ту или иную характеристику места. При наведении на иконку должна всплывать коротенькая текстовая подсказка, которая немного раскрывает суть. Иконки имеют цветовую дифференциацию: цвета светофора. Идея проста — цвет отображает качество или сложность (от зелёного — "хорошо/легко" до красного — "плохо/сложно") характеристики. В итоге удалось уместить набор интересующих характеристик в небольшое пространство, при этом человек получает базовое представление о локации, не читая много текста.
Пару слов про "Сложность пути". Этот блок дался мне сложнее всего. Как лаконично человеку сообщить о сложности маршрута при наличии разных способов пройти этот маршрут? В итоге я решил разделить маршрут на две части: на транспорте и пешком (иногда — на водном транспорте). Первая часть описывает сложность проезда до ближайшей точки, где можно оставить машину или до ближайшей к метке остановки общественного транспорта. Вторая — сложность пешего пути от этой точки до самой локации. Для каждого маршрута есть три варианта: на общественном транспорте, легковом автомобиле и внедорожнике. Цвета показывают сложность: красный — трудно, жёлтый - нормально, зелёный — легко. Пример: "Красная" легковушка + "зелёный" пешеход = сложная дорога для легковых автомобилей (есть шанс застрять или повредить машину), но пешая часть маршрута лёгкая — идти недалеко и приятно.
Нарисовать макеты — это, конечно, здорово, но как это всё сделать? Без понятия. Я, конечно, программист и умею писать на C под микроконтроллеры и на Python под Linux, но в веб-программировании я ни бум-бум. Тут стоит сказать, что ИИ в общем и ChatGPT в частности — воистину мощная мощь, если использовать этот инструмент с умом. Благодаря ИИ я узнал о существовании Django, Bootstrap, Vue и многих других всяких модных слов. Да и с развёртыванием сайта на сервере мне тоже ИИ помогал :).
Если с серверной частью сайта на Python я сам справлялся, то вот визуальная часть сайта (front-end), которая реализовывалась в основном на JS (и вёрстка на HTML, конечно же), на 60% сделана при помощи ИИ:
По опыту работы с ChatGPT могу сказать, что в 7 из 10 случаев он генерирует вполне работоспособный код на JS/HTML/Python. Успех предприятия во многом зависит от того, как вы опишите свою задачу и какие данные предоставите ему. А вот с точки зрения изучения чего-либо ChatGPT получает 10 из 10. Шикарный инструмент для познания и открытия нового.
В общем и целом (Алексей Щербаков из ЧБД может спать спокойно), спустя 3 месяца изучения новой для себя сферы и программирования, родился он — naturemap.ru
Текущее состояние
Есть такое понятия как MVP - Minimal Viable Product (минимально жизнеспособный продукт). Именно эти 3 буквы характеризуют мой проект сейчас. В рамках MVP наполнение происходит только по Ленинградской области (в будущем, если всё будет хорошо, хочу масштабировать его на всю Россию). Сайт можно использовать по назначению, но он ещё очень далёк от завершения.
Макет маркера из предыдущей главы в итоге превратился в следующее::
Появились элементы, которые я не учел в макете, но опыт эксплуатации показал их необходимость. При этом некоторые элементы отсутствуют (например, система рейтинга, комментарии) — это будет реализовано в будущем.
Можно скопировать координаты (если нужны именно они):
А можно сразу построить маршрут на Яндекс Картах. Не вижу смысла пытаться составить конкуренцию Яндексу с точки зрения навигации и построения маршрутов:
Есть возможность скопировать прямую ссылку на маркер и отправить кому-нибудь. При переходе по ссылке сразу откроется конкретный маркер (фан-факт: этот функционал я реализовал полностью при помощи ИИ):
Подсказка при наведении на иконку:
В процессе работы над созданием сайта пришло понимание, что концепт необходимо немного изменить. Если изначально идея заключалась в публикации маркеров только для стоянок и становлении неким 'стояночным' хабом, то на сегодня я пришел к более глобальной идее — 'активный отдых'. Я собираю информацию по различным интересным локациям (именно в контексте активного отдыха) и публикую эти места на карте.
В процессе изменения концепта я узнал о существовании аналогичных проектов (ага, ходят слухи, что изучать рынок и конкурентов нужно чуть ли не на первом этапе, но я посчитал, что это всего лишь слухи). В рунете есть несколько проектов с похожей концепцией — собрать информацию по локациям (в основном рассказывают только про экотропы). Однако я бы не стал говорить, что все проекты (мой тоже) идентичны и копипасты друг друга - различия (иногда существенные) присутствуют. Наличие конкуренции и аналогичных проектов я считаю хорошим признаком: это значит, что спрос на подобные решения у людей действительно существует.
В итоге, помимо стоянок на карте появились еще два типа маркеров:
Экотропы:
2. Активности - разные локации для активного и интересного времяпрепровождения:
"Маршрут" для всех типов маркеров содержит одну и ту же информацию, а вот "Окружение" может варьироваться в зависимости от типа маркера. Подробнее с ними можно ознакомиться, прочитав раздел справки:
Тыкнув на заглавное фото, можно перейти в галерею и посмотреть фотографии локации:
Каждое фото в галерее кликабельно, и его можно открыть на весь экран.
На текущий момент это весь основной функционал. Вы можете потыкать, попробовать и поизучать всё это дело самостоятельно.
Будущее
Планов на будущее много, и что-то, скорее всего, так и останется влажными мечтами:
Исправить существующие баги — их много! :)
Добавить пространство пользователя (регистрация, личный кабинет). С появлением такого пространства можно будет запилить систему комментариев, оценок и рейтингов.
Дать пользователям возможность добавлять свои маркеры. Пока это могут делать только я, но пользователь всегда может написать на почту (или в ВК) информацию, и я добавлю её на сайт. Опыт такого взаимодействия уже был.
Календарь/планировщик для маркеров стоянок. Это пока не до конца продуманная идея, но представьте, что у стоянок появляется кнопочка календаря с датами, и юзер может выбрать дату и нажать кнопочку "занять". Для всех остальных пользователей этот маркер на эти даты будет в состоянии "занято", что намекает, что в эти даты на эту локацию нет смысла ехать.
Фильтрация по типам маркеров и их характеристикам.
Монетизация. Задача монетизации — выйти на самообеспечение сайта. В каком формате она будет проходить (донаты, рекламная партнерка, ещё как-то) — я пока без понятия, но точно на доступность контента она никак не будет влиять.
Построение активного комьюнити с активной экоповесткой. Говоря про экоповестку, я имею в виду экоповестку "здорового человека", в качестве примера — Чистомен и аналогичный движ.
Популяризация внутреннего туризма и активного отдыха.
Заключение
Если вы осилили весь пост и дочитали до этого момента — мой вам поклон и уважение.
Основная задача поста — познакомить сообщество Пикабу с проектом и собрать обратную связь, которую вы, само собой, не обязаны давать. Но в целом даже количество дизлайков на посту — это тоже обратная связь :) Важно понять, насколько проект интересен людям, исходя из этого я буду принимать решение: развивать проект дальше или спокойно его закопать.
Само собой, по вашей обратной связи я также буду принимать решение касательно продолжения серии постов про разработку этого проекта: интересно это читать или нет :)
P.S.: Помимо комментариев под постом, вы можете ставить обратную связь, тыкнув на котика на сайте. Если хотите что-то изменить или дополнить, дайте знать!