Как использовать тематические и релевантные облака тегов

27.12.2006

Впервые увидев облако тегов, я прямо-таки влюбился. И судя по тому, что вижу сейчас, идея приглянулась очень и очень многим разработчикам. Я уже говорил о том, что «тематические облака» могут быть интереснее «самых популярных тегов во всем Интернете». Успешно работающий пример — swik.net. Этот ресурс посвящен программному обеспечению с открытым исходным кодом.

Облако тегов, посвященное разработке программного обеспечения на главной странице swik.net

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

Облако тегов, связанных с MVC (Model-View-Controller) на swik.net, обеспечивающее поиск по сочетанию двух тегов

Вместе с результатами поиска в левой колонке появляется небольшое облако, содержащее теги, используемые вместе с «MVC». Одним из самых заметных является «Framework». Если опять перейти по ссылке, в результаты поиска попадут уже материалы, связанные и с MVC, и с фреймворками. То есть вы с большой вероятностью получите материалы, посвященные инструментам разработки ПО, поддерживающим MVC. Так и есть: половина материалов посвящена CakePHP.

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

Комментарии

larin, 23.04.2007 14:27

Да, вот это хороший принцип для облака тегов.
У меня сейчас как раз проблема с разработкой структуры БД для такого облака...
Проблема в "родственных тегах". Ты кстати не писал ничего подобного?

Дмитрий Сергеев, 23.04.2007 14:37

Если не видел, по ссылке http://www.nosolousabilidad.com/hassan/improving_tagclouds.pdf кое-что есть насчет алгоритма вычисления релевантности.

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

Wave, 30.06.2007 00:15

Идиотский вопрос, но что вообще такое это самое облако тегов? Видел примеры, читал несколько описаний, но так до меня и не дошло, как складывать хрен с перцем (теги (в смысле ключевые слова) с облаками), нахрена в беспорядке со шрифтами баловаться (кое-где эксплореровский движок для отображения такого бардака вешается на несколько секунд)? Что изначально задумывалось при изобретении этой штуки, и как её правильно использовать (ну вот не вижу я практической пользы) разработчику и конечному пользователю (end-user'у - в смысле, чем это отличается от навигации по иерархии via меню или любым другим способом)?

Ну, и может пойму лучше, если мне объяснят внутреннюю кухню: как их генерировать, имея некоторый контент с тегами (или отсортированный по категориям)?

Дмитрий Сергеев, 30.06.2007 00:21

У меня тут одно время в шапке была ссылка на тематическую страницу про облака тегов. Она временно забыта. Вот секретная ссылка http://www.dserg.com/tag-clouds.

Идея с разными размерами шрифта заключается вот в чем: массив текстовых данных с какими-то весами можно визуализировать без графиков и диаграмм. Размер шрифта показывает вес элемента относительно других участников множества.

Вообще по ссылке сверху много всего про облака. Там есть и интересные примеры. Рекомендую :)

Wave, 30.06.2007 01:06

Прочёл. Стало немного понятней. Но всё равно, для меня этот вопрос остаётся сродни вопросу "нафига собаке хвост". Как-то вот не могу постичь внутреннее дао этого понятия. Не встречал ещё ситуации (или пояснения), когда сошлись бы концы.

Вот захожу я на сайт, и вижу в одном углу иерархическое меню, а в другом - это облако. В таком случае я лезу в меню - мне в нём проще ориентироваться. Вот приведите, плиз, пример, когда проще и удобней было бы лезть в облако (не считая случаев, когда меню нет совсем)?

Некоторую аналогию вижу, как если в карте сайта, например, разделы верхнего уровня в списке (древовидном, чаще всего) выделены жирным. Или, скажем, жирность в зависимости от количества материала. Но всё равно, зачем то же самое, но не иерархией, а кучей? Для понта?

Дмитрий Сергеев, 30.06.2007 01:37

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

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

Если пропустили ссылку про американских президентов, посмотрите http://chir.ag/phernalia/preztags/. Одно из оригинальных применений облаков.

Wave, 30.06.2007 02:04

Вот оно что! Стало гораздо понятней. Хотя всё равно считаю это неудачным дизайнерским решением (коллега, вы руководство Лебедева читаете? Там много о том, что дизайнер должен делать не только красиво, но и удобно и просто в использовании. А также много чего ещё, что должен учитывать дизайнер.).

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

P.s. Ссылку, что вы дали, никак открыть не могу. Судя по фаерволу, скачался уже мегабайт с лишним, а судя по браузеру, всего четверть страницы. Ну этот пример нафиг. Я через gprs в сети.

Дмитрий Сергеев, 30.06.2007 02:15

Да, там тяжелая штука. Надо было предупредить. А так рассказывать долго и сложно. Ну может представится еще случай посмотреть.

Вообще, моё увлечение облаками тегов как-то прошло. Как-то я сделал сайт и поставил на облака. Потом стал тестировать и заметил, что люди
* бояться этих облаков,
* не понимают, что это за слова такие,
* не представляют себе, что будет, если кликнуть по ссылке из облака.

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

Wave, 30.06.2007 02:28

Просто это не самое удачное, и к тому же не самое обкатанное и привычное решение. А повсеместно где надо и не надо стали применять, поскольку модно (о, эта мода! Тот же аякс грамотно и к месту применяют в одном случае из трёх). Вот когда научатся, обкатают, выявят все плюсы и минусы - тогда...

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

На каких объёмах данных оно оправдано? На каком разбросе тематик? Я поверил, что оно МОЖЕТ БЫТЬ оправдано.

Спасибо за пояснения и примеры!

Дмитрий Сергеев, 30.06.2007 15:47

Нет проблем :) Про неоправданное использование аякса полностью согласен.

Wave, 30.06.2007 02:17

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

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

Дмитрий Сергеев, 30.06.2007 15:51

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