UX-решение для потенциальной активности потокового спама - PullRequest
4 голосов
/ 04 мая 2011

Мое приложение реализует поток действий для различных типов действий.Один из видов деятельности связан с другой виртуальной валютой, которую пользователь может накопить.Например, пользователь может накапливать «Баллы» за публикацию комментария, голосование по теме и т. Д. Если бы я не занимался фильтрацией или агрегацией, вы бы получили много самогенеративного спама в течение всего часа,например:

  • Заработано 5 баллов за комментирование (всего баллов = 505)
  • Заработано 10 баллов за голосование (всего баллов = 515)
  • Заработано 5 баллов закомментирование (всего баллов = 520)
  • заработано 5 баллов за комментирование (всего баллов = 525)
  • заработано 5 баллов за комментирование (всего баллов = 530)
  • заработано 10 балловза голосование (общее количество баллов = 540)
  • заработано 10 баллов за голосование (общее количество баллов = 550)
  • заработано 10 баллов за голосование (общее количество баллов = 560)
  • ...
  • ...
  • ...

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

Ответы [ 3 ]

4 голосов
/ 09 мая 2011

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

  • <Name> сделано <x> комментариев и набрано <x * 5> баллов!
  • <Name> проголосовали за <x> вещей.

Вы можете сделать каждый из этих элементов списка кликабельным, чтобы развернуть и показать детали. Итак, после клика по сводке комментариев пользователь увидит это:

  • <Name> сделал <x> комментариев и набрал <x * 5> баллов!
    • Заработано 5 баллов за комментирование (всего баллов = 505)
    • Заработано 5 баллов за комментирование (всего баллов = 520)
    • Заработано 5 баллов за комментирование (всего баллов = 525)
    • Заработано 5 баллов за комментирование (всего баллов = 530)
  • <Name> проголосовали за <x> вещи.

Вы можете использовать что-то вроде jQuery UI accordion для реализации этого.

Подход Facebook заключается в том, что он использует образец сообщения, а затем сообщает пользователям, что доступно больше элементов, например:

  • Заработано 5 баллов за комментирование (всего баллов = 505)
  • Сделано <x> больше комментариев

Затем, когда пользователь нажимает «Сделано <x> больше комментариев», пользователь может видеть каждый комментарий (в течение определенного промежутка времени).

0 голосов
/ 11 мая 2011

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

Затем, где-то, как в разделе учетной записи, я бы перечислил все действия, используя jQuery DataTables , чтобы их можно было сортировать, разбивать на страницы, фильтровать и доставлять через конвейерный Ajax. Простой, эффективный и удобный!

Интерфейс пользователя - это общность, позволяющая пользователю чувствовать себя комфортно в среде, в которой он еще не был, представляя знакомые взаимодействия. Вы увидите этот же шаблон, используемый на сайтах, таких как StackOverflow, Swagbucks, MyPoints и т. Д.

0 голосов
/ 09 мая 2011

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

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

* 1005 Е.Г. *

  • только что прокомментировал
  • оставил комментарий и голосов за последний час
  • оставил комментарий и проголосовал сегодня
  • сделал комментарии и голоса на этой неделе

И вы покажете только самые последние из них. Так что, если пользователь только что прокомментировал (в течение последних пяти минут), покажите первую строку. Если она была активна в последний час, покажите вторую строку. И так далее ... Это ясно показывает, что пользователь был активным и как давно. Я думаю, что это самое важное.

Вы можете комбинировать это с показом общего балла, показывая, насколько активным был пользователь в целом.

Может быть, что-то вроде:

<name>[<total_score>] has just commented on <x>

или

<name>[<total_score>] has made <x> comments and <y> votes in the last hour.

Мммммм, я хочу, чтобы сообщение было короче:

<name>[<total_score>] has earned <x> points in the last hour.

Это понятнее? Не уверен.

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

Что ты думаешь?

...