{"id":5097,"title":"\u041f\u0440\u0438\u0432\u043b\u0435\u043a\u0438\u0442\u0435 \u0432 \u041c\u043e\u0441\u043a\u0432\u0443 \u0442\u0443\u0440\u0438\u0441\u0442\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043e\u0442 \u0430\u043a\u0441\u0435\u043b\u0435\u0440\u0430\u0442\u043e\u0440\u0430","url":"\/redirect?component=advertising&id=5097&url=https:\/\/vc.ru\/promo\/274398&hash=37380e26d7e18a53827df77f3494106574fc9389fcbf0d03cb47fab2464f807b","isPaidAndBannersEnabled":false}

Как мы создавали Miro и Zoom в одном флаконе

getLocus.io — чему мы научились за четыре месяца после релиза.

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

Пару слов о нашем продукте.

getLocus — интерактивная доска (whiteboard), поверх которой перемещаются аватарки с видеосвязью. Причём пространство доски имитирует комнаты — чем дальше аватарки друг от друга, тем меньше они друг друга слышат.

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

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

  • Мы про коммуникации «каждый с каждым», а не «говорящая голова со всеми». На нашей площадке удобно проводить QA-сессии и нетворкинги: пользователи могут «сбиваться» в пары-тройки-микрогруппы по интересам и быстро пересобираться в других составах.
    К примеру, организаторы DotFest пришли к такому формату — доклад спикера по ВКС, а затем общение и вопросы со спикером на нашей площадке.
Пространство для QA на DotFest CodeFest
  • Мы для удаленных команд. Акцент на интерактивную «доску» или «экран» или «планшет», аля miro. Виртуальная комната это место в котором можно собрать множество визуальных объектов (файлы. img,. png,. jpeg,. gif,. pdf, youtube–видео) и группировать их, например, описывая CJM. Можно шарить экран, можно рисовать схемы и формулы на доске и сохранять их в svg для отдельного редактирования.
Доска на семинаре в МФТИ Nicolas Borisov
  • Мы для психологов/тренеров/педагогов. Собственный аватар с видеосвязью имитирует физическое присутствие и ощущение собственных границ, что делает возможным проведение разных групповых форматов, ранее недоступных для онлайна.
    Преподаватели и студенты старших курсов факультета психологии МГУ имени М.В. Ломоносова сравнили для проведения тренингов «Zoom + Miro», «Minecraft + Discord» и getLocus.

GetLocus удобен для создания и развития на его основе специализированной тренинговой платформы. Совместными усилиями уже ведется работа по запуску spin-off «T-matrix». Проведена первичная интеграция c API getLocus. Формируется сообщество «цифровизаторов тренинговой практики».

Алексей Журавлев
CEO «T-Matrix», к.псх.н

Не обошлось без трудностей

Выявили проблему в коммуникации между CTO и продакт менеджером.
Для поиска решений подготовили парный доклад и выступили на DevOpsLive2020.

Рассказали о сложности фиксации и исправления багов в формате открытой дискуссии с экспертами и участниками. Беседа развивалась вокруг понятия «ошибка» и различении того, что считает ошибкой пользователь и продакт, и как она может быть интерпретирована разработчиками «из-под капота». Из полезного посоветовали почитать и подумать про DoD бага, test requirements, bdd (behavior-driven development).

Планируем написать об этом отдельную статью.

Неудачная архитектура

После релиза, клиенты стали проводить пробы с большим числом участников (от 20 одновременных подключений и больше). Только в этот момент к нам пришло осознание, что стартовая техническая задумка, организовать видеосвязь через p2p — провальна (кто бы мог подумать).
Заявленная мощность браузеров по числу одновременных p2p соединений оказалась в разы меньше заявленной и пользователям не удавалось подключиться сразу ко всем участником доски, а скорость подключения оказалась неприемлемой.

Поскольку через несколько дней у нас планировалось коммерческое мероприятие на 100+ человек, мы приняли решение в срочном порядке переписать всю архитектуру. Бессонные ночи и работа в выходные спасли ситуацию и ивент был успешно проведен.
Важно — клиент был предупрежден о рисках и лояльно к ним отнесся. Мы вместе с ним подготовили резервный план на случай неудачи, но к счастью, всё обошлось.

Серьезный трафик

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

Изучив проблему подробнее, пришли к выводу, что с такой проблемой в той или иной мере сталкиваются ~11% наших юзеров. Проблема была вызвана потерей «пакетов», за которым следовала потеря связи на доли секунды. А вот дальнейшее переподключение уже занимало несколько секунд, что негативно сказывалось на пользовательском опыте.

Такое часто случается на старых wi-fi роутерах или когда не очень надежный интернет-провайдер. При этом, скорость интернета может оставаться очень даже высокой. Это напоминает мигание лампочки, при некачественной проводке.

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

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

Ближайшие планы

  • Протестировать удобство getLocus для торжественных мероприятий (торжественные итоги года в компаниях) и их продолжение: «тусовки» и «посиделки».
  • Улучшить доску для рисования, добавить стикеры с надписями, интегрировать офисные программы.
  • Проработать онбординг и UX: разработали много фич, а теперь нужно сделать их понятными и научиться просто рассказывать про функционал.
  • Подготовить бэкенд к highload, сейчас переключение между серверами происходит вручную и через «хард-кодинг», что крайне усложняет жизнь, так как предел одного сервер ~700 одновременно подключенных пользователей.

Спасибо команде за вовлеченность, а пользователям за фидбек, обратная связь помогает нам лучше понять себя:)

{ "author_name": "Владислав Капицын", "author_type": "self", "tags": [], "comments": 44, "likes": 60, "favorites": 100, "is_advertisement": false, "subsite_label": "tribuna", "id": 187970, "is_wide": true, "is_ugc": true, "date": "Thu, 17 Dec 2020 11:43:38 +0300", "is_special": false }
0
44 комментария
Популярные
По порядку
Написать комментарий...
6

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

Ответить
0

Спасибо за теплые слова!
Будем стараться рости быстрее и не превращаться в трудного подростка)

Ответить
0

Проверочное слово Ростикс? Извините ;) 

Ответить
2

Но в Ростикс захотелось, эх...

Ответить
4

Какие вы крутые! Респект за такую интересную идею и работу с универами

Ответить
2

"Респект за такую интересную идею и работу с универами" - а про программистов ни слово :\

Ответить
3

Программистам высшая похвала и респект ;)

Ответить
3

Ну и раз уж я разошелся, еще спрошу: у вас сайт на русском. Вы выбрали РФ как ключевое гео для себя? Почему?

Ответить
1

Попробую ответить на все вопросы одним комментарием)

1. Статья не про рост, а про развитие продукта, причем с точки зрения клиентского опыта, потому цифры и не приводим. В следующем году обязательно будем делать статью о росте и продвижении - там цифры и покажем.
2. То что вы не нашли для себя причин сейчас переходить к нам из miro и zoom - это нормально) Мы стараемся развивать продукт через cust dev, адаптируясь под конкретную деятельность клиентов, например под тех, кто проводит психологические тренинги. Будет круто, если вы попробуете у нас поработать и дадите обратную связь, тогда мы сможем улучшить продукт и найти причины перехода именно для вас, в вашей ситуации.
3. На РФ стартовали из-за опыта и специфики команды, как работать с русскоязычной аудиторией - понимаем, как с западной - пока нет. Про сложности выхода из РФ на мир неоднократно слышали и про нелюбовь инвесторов к таким проектам тоже)

Спасибо, что обращаете на это внимание - вероятно, стратегию по этому вопросу в ближайшее время будем менять

Ответить
1

По РФ: Я регулярно задаю этот вопрос и, почему-то, регулярно получаю такой же ответ. 

Ответить
1

А какой ответ правильный?)

Ответить
0

3. я думаю, что в этом пункте шла речь не про инвесторов и их нелюбовь ко всему не американскому, а про то, что условное CAC в USA раза в 2-3 выше нашего, но средний чек там выше минимум в 10 раз и рынок больше в сотни раз.

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

Ответить
0

Вот это Хороший вопрос :) с мощным приколом :)

Ответить
3

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

А Google Meet (и не только)  как справляется, ведь он только в браузере?

Вроде бы есть исследования по WebRTC and packet loss - https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/41611.pdf 

Ответить
1

Спасибо за вопрос!

Дело в том, что нам необходимо синхронизировать не только видео/аудио, а саму доску, её объекты и перемещение юзеров по ней (причем как друг с другом, так и с сервером).
Причем важно это делать непрерывно и с высокой скоростью, поэтому мы всё прогоняли через TCP (отчасти решение было сделано по неопытности + у всей команды оказался стабильный интернет и проблема не сразу была замечена). 
Теперь разделяем - видеосвязь и процесс подключения на webRTC (исключительно через UDP с допустимой потерей пакетов) будет "жить" отдельно от state остальной части приложения, которое уже по TCP передается (при обрыве соединения state просто будет подвисать не надолго - что уже совсем некритично).

Если у вас ест опыт в работе с webRTC и вы готовы обменяться с нами экспертизой было бы круто 🙂

Ответить

Полицейский ключ

1

Интересно, кем именно велась (и в каких условиях шла) разработка, если ни изначально, ни даже в процессе, не были предусмотрены решения для двух «базовых» проблем любого сетевого приложения: большого количества пользователей и плохого качества связи? 🤔

Ответить
4

Так первая версия была MVP судя по статье) Для MVP то что оно полностью работает при положительных сценариях уже, имхо, достижение

Ответить
1

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

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

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

Ответить
2

Если не секрет на какую технологию перешли с p2p ?

Ответить
3

Технология называется SFU - Selective Forward Unit.

Ответить
1

Централизованное решение с mediasoup. Его сейчас учимся автоматически балансировать.

Ответить
1

Почему нет входа по Oauth2/OIDC/Соц.сети?
Регистрация - в 2020, когда система уже вышла в пром и уже есть платная подписка, это какой-то зашквар :)

Ответить
1

И не поспоришь
Исправим)

Ответить
0

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

Ответить
3

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

Ответить
1

Подскажи название, плз, оч интересно на них глянуть

Ответить
0

Таким образом, вы сделали spatial.chat.
Или это ваш же проект? 

Ответить
3

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

Для прозрачности стоит ещё упомянуть Remo.co, Wonder.me и Branch.gg - на которые мы чем-то тоже похожи.

Ответить
1

При беглом осмотре сервис бомбический, но пока очень и очень сырой, хотя я бы с радостью его купил для своего направления онлайн обучения, так как как раз пользуемся связкой Zoom+Miro

1) И самая важная проблема, ваш сервис не грузитcя. Или вообще никакой реакции или грузит через секунд 30, на моем гигабитном интернете. Что же будет у клиентов, многие из которых сидят на мобильном интернете?
2) У альтернативы доски МИРО просто нулевой функционал. Там даже нет банального текстового поля!

Желаю вам успехов, но пользоваться пока вашим сервисом нельзя(

Ответить
0

Большое вам спасибо, за обратную связь!

1) Прерывание соединения исправляем, собственно об этом в статье и писали. Скорость интернета к сожалению, не показатель - есть коллеги которые с телефонов и через 3G сидят, а есть те у кого гигабитный кабель и у них прерывания. В понедельник уже всё у всех заработает)
2) Да, с доской предстоит ещё много работы, первые обновления случатся уже в этом году - в том числе появится работа с текстом.

Ответить
0

А вот, скажем, потянет ли сервис движуху на 120+ человек? 

Ответить
1

Да, потянет, если сгруппировать по разным комнатам по 30-60 человек.
Браузерам пока тяжело переваривать большие объемы видео-трафика - отсюда ограничения.

Ответить
0

Может быть только у меня такое искажение? Как можно делиться результатами роста без цифр? Вы их не считаете или скрываете?

Ответить
0

А как продукт звучит здорово.

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

Ответить
0

да их просто нет )))

Ответить
0

*удалено*

Ответить
0

А еще, как я понял, вы полный аналог вот этих чуваков https://remo.co/

Ответить
0

Неправильно понял)) В remo.co реализована видеосвязь как в zoom и самостоятельный переход между столами. Важно понимать, что их столы это не пространства - юзер не может сесть поближе к столу (подальше от стола), разместить презу рядом со столом, нарисовать на вайтборде схему.

Ответить
0

Да, в целом теперь отличие понятно. Хотя ребятам из реалтаймборда было бы круто как раз добавить фичу с коммуникациями с удалением/приближением. Если ваш продукт станет "стабильным", быстрее чем это сделают ребята из реалтаймборда обязательно попробую )) успехов

Ответить
0

Спасибо)) в miro уже появилась фича с видеочатом, не все пользователи знают об этом)
Попробуй у них поработать и у нас - оч интересен фидбек!

Ответить
0

Классная идея и сам продукт. Однако, стоит сделать в Miro похожую фичу, и к сожалению, ваш сервис уйдёт на втрой план. Вам только удачи, верю я в сервис.

Ответить
0

круто!

Ответить
Читать все 44 комментария
Как успешно пройти испытательный срок?

Свершилось – вы получили работу мечты! Но впереди еще три месяца испытательного срока. Это время дается вам и работодателю, чтобы определиться, насколько вы друг другу подходите. Как использовать это время с максимальной для себя пользой? Рассказывает главный специалист отдела подбора персонала Ольга Шабалина. Как всегда, упаковали полезные…

Я задолбался искать один и тот же запрос в Яндекс и Google и создал Мультипоиск

Теперь можно искать в разных поисковиках в 1 клик

Как подготовиться к жизни без cookies: рекомендации маркетологам

О технологии Federated Learning of Cohorts (FLoC), которая заменит cookies, Google объявил еще в начале года. Недавно компания анонсировала перенос запуска технологии на 2023 год, и теперь у рынка интернет-маркетинга есть 2 года, чтобы найти альтернативу работе с данными. Как выглядит ситуация сейчас и что делать маркетологам — в обзоре от AiData.

Как устроен механизм сна — и что в нём может сломаться? Статьи редакции

Разбираемся, из каких слагаемых состоит здоровый сон. Материал издания Reminder.

Unsplash
«Участвовали банки из топ-30»: The Bell рассказал о финансовой системе нелегальных онлайн-казино и букмекеров в России Статьи редакции

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

Пункт выдачи Ozon отказался принимать товар, хотя поддержка Ozon настаивала на приеме

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

31 июля завершается приём заявок в 1-й этап отбора программы B2C Future Solutions
Придумал ТВ на спинках кресел и электронные системы бронирования: это «главный новатор авиарынка» Дэвид Нилеман Статьи редакции

За 30 лет он успел основать пять авиакомпаний, одну из которых запустил в пандемию, несколько раз прогорел и даже был уволен из собственной фирмы. В 2021 году он развивает Breeze, лоукостера с высококлассным обслуживанием, а как он это делает — в пересказе Inc.

Дэвид Нилеман Business Insider
Невыполнение Альфа-банком условий проводимых акций

1 мая 2021 оформила дебетовую карту в рамках акции "приведи друга." Выполнила все условия для получения кешбека, но кешбек банк не выплачивает. Игнорирует мои обращения и так продолжается 2 месяца. Хотя все мои друзья уже получили кешбек в рамках этой акции.Моё впечатление о банке,самое отвратительное. Никогда не пользовалась этим Банком из-за…

Как малому бизнесу понять свою «зону смерти»

Риск-менеджмент традиционно считается уделом крупных компаний. Кроме них просчитывают риски разве что стартапы, и те по требованию инвесторов. Малый и средний бизнес (МСБ) работает без подобной аналитики — ему не до этого. Предпринимателей можно понять, когда ты поднимаешься с нуля или масштабируешь проект, мысль идет в векторе достижения…

null