Хватит добавлять жанры, надо добавлять теги

Автор: wayerr

Это некоторая заметка про дизайн системы тегов и жанров на литературных сайтах.

Широкой аудитории может быть не понятно, но цели что-то объяснять и нет.

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

Фэнтези - подразумевает наличие каких-то там магических элементов, или антуража. Детектив - подразумевает расследование (в классическом варианте игру с читателем). Фэнтези детектив - фактически подразумевает оба жанра.

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

Вообще внутри сайта, на уровне базы данных, нет никакой сложности пихнуть сей поджанр в оба жанра. Тогда оный будет виден в обоих жанрах разом. Что может смущать пользователя.

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

Потому что это всё теги.

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

Конечно, тегам нужна некоторая модерация, поскольку публика может завести "фентези", "фэнтези", "фентази" и "фэнтази" (и заводит).

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

Вот пример, как я обрабатывал АТ-шные теги:

Тут и исправление фентези на фэнтези, и удаление мусора вроде "разное" и нормализация тегов: "фантастический детектив" дополняется тегами "фантастика" и "детектив".

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

Но для сайта этого не хватит, поскольку в поиске по тегам обязательно нужны две вещи:

- логические операторы AND и OR

- отрицание тегов (исключение тегов)

Без этих примитивных вещей поиск по тегам вовсе не имеет смысла. 

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

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

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

И точно также поиск должен уметь использовать логические операторы. Нам хочется фэнтези детектив или приключения, то мы и пишем, найди: "фэнтези AND (детектив OR приключения)". 

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

И вот если всё это сделано, то возникает ещё проблема несоотвествия тегов. Когда автор ставит тег приключения, но там болтовня и рефлексии. Это решается двумя действиями:

- запрет на определённой книге ставить этот тег (а некоторым авторам и вообще позволять ставить теги только с премодерацией)

- установка неснимаемых тегов модераторами (точнее "тайными рецензентами", которые есть на АТ), или опытными читателями, которым можно выдавать это право за часы чтения. Это же позволит ставить в тегах возрастные ограничения и искать по ним.

Т.е. топчик не сможет поставить тег неформат, или снабдить боевую литропыгу тегом "бытовое фентези".

Как-то так.

+74
427

0 комментариев, по

2 314 425 206
Наверх Вниз