-
Notifications
You must be signed in to change notification settings - Fork 34
/series/add: prediction of the category and country #517
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@Shkarin Как насчет этой? |
Давай попробую
|
Т.к. это идея, то нет четкого алгоритма. Поэтому ты смело можешь предлагать что-либо. Сначала сделай прототип (просто добавь ссылку в html файл). Потом реализуй один из алгоритмов (лучше второй). |
Я так понимаю нужно реализовать это для этих списков ссылка.
|
Да, сюда.
Хорошая идея. Но возможно это будет сложно реализовать. Во-первых, мы используем стандартный компонент и я не уверен, что он это поддерживает. А кастомизировать его может быть не так просто. Во-вторых, этот подход порождает другие вопросы. Например, пользователь создал 20 стран. Очевидно, что показывать 20 стран в начале не очень нужно. Вопрос 1: сколько таких стран осмысленно показывать в начале? Допустим мы решим, что максимум 3. Вопрос 2: по какому критерию мы будем их отбирать тогда? Просто возьмем первые 3 из 20 доступных?
Согласен. Это действительно просто, понятно и удобно. Но это не будет работать для тех, кто добавляет страну/категорию впервые. Именно для таких пользователей я думал использовать первый вариант -- попробовать поискать в их коллекции. И поскольку такая кнопка может использовать 2 алгоритма (а в будущем их может стать больше), то я предложил дать ей название "Попробовать угадать". Кстати. Чтобы было меньше магии, мы можем после угадывания заменять ссылку на сообщение о том, что мы подставили -- "Использована последняя созданная категория", "Использована самая многочисленная категория из вашей коллекции". |
// слишком рано отправил комментарий, вот продолжение
Зато очевидное. А на кнопку могут и не обратить внимания и на подсказку не навести. Сужу по себе, так как редко на сайтах прибегаю к подсказкам.
Запрос довольно простой и у нас нет нагрузки, так что можно и в БД сходить. А про какой кэш ты говоришь? На стороне клиента в localStorage? Или на сервере? Если на сервере, то кэш всегда можно будет добавить, если вдруг обращения к БД будут проблемой, пока же проблема это память и лучше лишний раз нагрузить мощности чем отъесть еще больше памяти. Да и этот функционал не станет узким горлышком в производительности. Посуди сам -- это нужно чтобы много пользователей стало добавлять серии и пользоваться этими подсказками. Вдобавок эти подсказки у каждого пользователя свои, т.е. если мы их и закэшируем то только на уровне пользователя. Каков шанс что один пользователь станет добавлять серии в таком количестве и с использованием подсказок? А еще при добавлении кэша появится другая проблема -- его инвалидация :) Я пока не вижу, чтобы плюсы перевешивали минусы, что скажешь?
Да, это отличный вопрос. Он отличный потому что заставляет задуматься :) Значит при рендеринге страницы мы должны уже слазить в БД и посмотреть сможем ли мы пользователю что-нибудь угадать. Зная это при рендеринге мы можем сразу рендерить страницу с ответом и тогда при нажатии на ссылку, мы не будем делать AJAX запрос, а сразу подставим ответ. Это тоже вариант, но не хочется выполнять два запроса к БД при рендеринге страницы. Поэтому мы можем эту штуку вынести в JS -- отдаем страницу пользователю. После ее загрузки выполняется JS код, который лезет на сервер и узнает что мы можем угадать. После этого он добавляет ссылку на страницу, при клике по которой подставляется статический ответ :) При таком подходе мы можем также и текст ссылки делать разным, так как уже знаем ответ. Итого: JS ходит на сервер и получает ответ, на основании которого:
Как тебе такая идея?
Расскажи как ты это видишь. Имей ввиду, что этот функционал с подсказкой это дополнительная и опциональная фишка. Если у пользователя отключен (или не поддерживается) JS, то она просто не должна работать и при этом желательно не выполнять лишней работы на сервере. |
Дополнительные идеи:
И да. Давай в этой задаче сосредоточимся на угадывании страны (потому что на сайте сейчас всего 1 категория и 50 стран). Это позволит уменьшить объем работ и быстрее сделать нечто работающее, что можно будет попробовать. |
Тут я имел ввиду кэш со стороны клиента, но если нагрузка минимальная, то не стоит замарачиваться
Мне нравится.
Самый простой способ это завести счетчик и посмотреть сколько раз нажимают ссылку, естественно придется хранить результат в базе. Второй вариант это провести а/б тестирование. Например, ты считаешь, что ссылка будет лучше, я говорю что кнопка. Можно разделить пользователей на две группы, задав им соответствующий тег и одной группе показывать кнопку, другой ссылку. Затем собираем статистику по кликам и сравниваем на что чаще нажимают на кнопку или на ссылку. Ну это так мысли на будущее. |
Implement country prediction when user adds a series. Addressed to #517
@php-coder 3 puzzles #987, #988, #989 are still not solved. |
Despite that there some issues left, they are minor and will be solved separately and later. Links that suggest category/country have been added and I'm closing this issue. |
To simplify choosing of category/country we can try to guess these values by using simple algorithms:
I think that we can implement it as a link near the fields. For example, we can add a link "Use latest category" or "Try to guess..." and when user is clicking on it, JS code can send request to a server, load the possible category/country and update field accordingly.
The text was updated successfully, but these errors were encountered: