Viz-projects protocol: Концепция

28.04.2020 05:16:57

Здравствуйте. Изначально планировалось сделать viz-projects на базе централизованного сайта, но подумав, решено было сделать протокол на custom операциях.

Для чего

Для того, чтоб можно было смотреть, какие проекты для Viz создали, а также какие новости по ним. Тот-же viz_social_bot и его новости.

Что такое custom операции (для тех, кто не знает)?

Это операция, позволяющая отправлять в блокчейн данные в формате JSON. Они могут содержать всё, что угодно: на control.viz.world/media - это посты, но это может быть структура токена, игровых ресурсов и вообще чего угодно (зависит от проекта). В viz-projects это будет custom операция с некоторым функционалом, касающимся проектов.

Основа

  • Все custom операции viz-projects будут содержать id viz-projects;
  • Структура будет иметь вид:
    {"action",{data}.
    Где action - действие, например, создание проекта, а data - прочие данные.

Список действий

  1. submit_project. В data содержит следующую информацию:
    name - название проекта, description - описание, github - репозиторий, site - сайт, category - категория, version - версия, languages - языки (формат: ru, en, de, fr, cn, jp, kr, tr...), command - команда проекта (список viz логинов);
    Для обновления надо отправить операцию ещё раз, но важно, чтоб название проекта совпадало с прежним, а также обновлял тот, кто отправил проект в каталог первый раз.
    Категория - это название на Английском, например, social, information, for_developers и пр.
  2. submit_news - отправка новости по проекту (название проекта должно совпадать с существующим, новость будет приниматься только от тех, кто состоит в команде проекта). Данные:
    name - название проекта, title - заголовок новости, preface - анонс (предисловие), body - текст новости, lang - язык (ru, en, de, fr, tr и т.д.).
  3. add_category - name, description, russian_name, english_name - названия на Русском и Английском.
    Добавлять смогу только я.

Список категорий

Пока не знаю точный список - его надо продумывать, но вот примерный:
social - социальные (тот-же viz_social_bot или vizonator), blockchain_frontend - пока неточное название, но в этой категории будут сервисы, позволяющие работать с БЧ Viz (my viz+, info viz+, dpos.space), funny - развлечения (игры и пр.).

То, о чём в сомнениях

По поводу системы модерации. Мысли о том, как сделать, чтоб не начали спамить несуществующими проектами ради ссылок.
варианта 2:

  1. Действие moderation. Данные: name - название проекта, approve - true или false - разрешить проект или запретить.
    Плюсы: наиболее просто, нет вероятности манипуляций. Минус: централизовано, т.к. модератор - это я, а если кому-то доверять ещё, появляется человеческий фактор. Да и в целом, централизации меньше не становится...
  2. vote - на протяжении семи дней дать возможность голосовать за или против проекта. Данные:
    name - название, approve - true или false - если за, сумма соц. капитала пойдёт в плюс к проекту, false - в минус. Если сумма итоговая <= 0, проект не добавляется.
    Плюс в децентрализации. Минусы:
    Во-первых, это вероятность, что владельцы стека начнут голосовать за своих любимчиков.
    Во-вторых, могут начаться войны, когда занижают вполне нормальные проекты.
    В-третьих, будут ли активно голосовать владельцы соц. капитала...

Подробности про итоговую сумму

Допустим, добавили проект. За него проголосовал 1 пользователь со стеком 100000, второй на 400000. Суммарное число 500000. Третий проголосовал против проекта, и соц. капитал у него 1000000. Тогда у проекта будет итоговое число -500000 (500000 - 1000000).

Всё

Предлагайте идеи по развитию viz-projects protocol.
Также интересует, считаете ли важным создание именно такого решения, а не централизованного сайта?
С вами был @denis-skripnik - незрячий делегат, разработчик и поклонник Viz.

P. S. Следующий этап - это внедрение данного протокола на сайт:

  1. Парсинг блоков в поисках соответствующих структур,
  2. Формы добавления проектов и новостей.
  3. Вывод из базы данных список проектов и новостей, возможность просмотра текста новости на отдельных страницах.

P.P.S. Почему Альфа версия? Потому что это лишь концепция, к тому-же которая может быть изменена, если сообщество предложит идеи.


3
11 наград
58.591954 Ƶ
Отобразить форму комментирования
Комментарии

28.04.2020 05:36:39

Модерация — нормальная практика, но можно сделать её опциональной. Только стоит описать в протоколе центральный узел, который выносит свои рекомендации.
Статус заявок — прием всех и пост-модерация спама, пре-модерация всех и допуск проверенных заявок. Можно отдельную операцию добавить для черного и белого списка.
Получается некий каталог проектов и их новостей, где модерирование носит рекомендательный характер.

02.05.2020 00:46:15

я так понял комментарии на сайте редактировать нельзя? жаль )) если накосячил с разметкой, то хотелось бы поправить

02.05.2020 00:44:03

У меня по поводу модерации такие мысли:

  • протокол viz-projects децентрализован, т.е. его могут использовать все в любых целях
  • а вот отображение данных из протокола уже НЕдецентрализованное. Поэтому ты, как владелец сайта, вправе решать, что делать с полученными данными. Т.е. ты создаешь сайт, у него в админку парсятся ВСЕ данные о добавлении проектов. И ты из админки одобряешь/отклоняешь проекты, которые ты же и будешь награждать и отображать на сайте. А я хочу создать просто спам-каталог на своем сайте, где будут отображаться все данные из этого протокола, я создаю сайт и он без модерации добавляет всё в каталог. И если мне явно что-то не нравится в каталоге, например, начали размещать там ссылки на порносайты. Тогда я через админку удаляю не нужную информацию.