Мне и моей команде, как веб-разработчикам, часто приходится сталкиваться с заказчиками, которым ни жить ни быть необходима на сайте та или иная социальная фича:
— Сделайте мне форум на сексшопе
— Зачем?
— Ну пусть народ сидит, общается.
— Они же за покупками пришли, а не общаться. Они пришли себе фалоимитаторы покупать — пришёл-увидел-заказал.
— Пусть будет. Начнем наполнять сами, народ и подтянется.
Мало кто из заказчиков догадывается, зачем действительно ему на сайте нужны подобные вещи: кто-то из них следует интуиции, кто-то примеру, а для кого-то это просто очередная «хотелка». Любой социальный функционал представляет собой именно рейтинг. В том или ином его представлении:
- Лайки
- Добавление в «избранное»
- Комментарии (мало того что кол-во комментариев можно приравнять к оценкам, они служат еще и фидбэком)
- Фунция «поделиться» (в отличии от «лайков» несет в себе больше рейтинговых очков)
Ре́йтинг (англ. rating) — числовой или порядковый показатель, отображающий важность или значимость определенного объекта или явления.
Рейтинги являются важной составляющей социализации интернета. Только подумайте: хостинг мы выбираем опираясь на рейтинги, совершая покупки в интернет-магазинах (особенно зарубежных) — смотрим отзывы, прежде чем прочитать записи в блогах или социальных сетях — обращаем внимание на количество «лайков», а есть еще такие типы рейтингов которые вносят в жизнь пользователя на сайте соперничество, например тот же рейтинг хабралюдей. Мы пользуемся ими каждый день, даже не замечая как прочно они вошли в нашу жизнь.
А как обстоит вопрос разработки рейтинговых систем ?
Как правило, для владельца сайта на разработку рейтинговых систем единожды тратится некая сумма (или количество часов): система разрабатывается, внедряется, и, собственно, работает. Редко когда вносятся изменения или дополнения в рабочую рейтинговую систему, если мы не говорим о действительно крупных проектах.
Работает — не трогай.
В сети полно уже готовых плагинов, библиотек, и просто наработок для рейтинговых систем, но заказчику же всегда нужно нечто «оригинальное», а если говорить об авторском праве на код — писать так или иначе придется своими ручками.
А что если на сайте помимо обычного рейтинга той или иной сущности понадобятся некие достижения или статусы? В этом случае помимо дополнительного чека на доработку выкатится чек на дизайн и креатив, а у разработчика случится :facepalm:, потому что все придется перепиливать. Или же придется разрабатывать гибкую систему с нуля, а ведь на все это дело надо еще написать админку! Естественно всё должно быстро работать, и правильно считаться, а это значит к вышеуказанным пунктам добавится тестирование, оптимизация, рефакторинг.
В связи с этим нам пришла в голову идея: а почему бы не вынести все эти вычисления в облако? Единовременно построить достаточно гибкую систему, организовать API и внедрять на проекты. Некоторые из читателей на этом моменте подумают: «кто бы сомневался, очередной стартап». Отвечу — да, это «очередной» стартап.
Название стартапа — Rangg — сложилось из словосочетания Rank Aggregation. Сейчас сервис находится в разработке и «пощупать» его, к сожалению, хабражителям не получится. Мы обязательно выкатим бету в течении месяца, и первым кто об этом узнает будет именно Хабр.
Как вы уже догадались, суть проекта — построение облачного сервиса рейтинга и достижений, который можно было бы с минимальными трудозатратами внедрить на проект, дать возможность разработчикам и владельцам сайтов строить свои системы рейтингов с достижениями, званиями и статусами. Мы составили краткий список функционала который будет доступен на запуске проекта (может быть изменен):
- Рейтинг сущности (более чем очевидно)
- Присвоение «статуса» в зависимости от рейтинга
- Загрузка собственных изображений статусов и достижений (помимо стандартных, которые предоставим мы)
- JS уведомления (например, о получении некоего достижения)
- Статистика и лог активности
На данный момент разрабатывается RESTful API (не без помощи постов хабра) и сам сервис предоставления доступа, настройки и статистики. Технологии которые мы используем на нашем проекте достаточно популярны: PHP + MySQL — сервис, NodeJS + MongoDB — API. Следующая статья расскажет об архитектуре проекта и объединении этих достаточно устоявшихся связок.
В заключении хотелось бы от всей души поблагодарить администрацию за предоставление блога, с вашей стороны это огромный шаг в поддержку стартапов.
Обращаясь к хабрачитателям, хочется попросить конструктивной критики идеи проекта.
P.S. Если ошибся с хабами — подскажите в какие именно данная статья подошла бы лучше, исправим (хотел уронить в «Анализ и проектирование систем — нехватило кармы).
ссылка на оригинал статьи http://habrahabr.ru/company/rangg/blog/202566/
Добавить комментарий