Форум — Про новый сайт
Создатель: Resure Resure
Дата: 19:31 27.09.2020
Сообщений: 1
Про новый сайт
Resure Resure 19:31 27.09.2020

Вопрос «что там с новым сайтом» не теряет популярности (что хорошо), но при этом сам процесс окутан туманом (что плохо) — в этой теме я попробую описать, на какой стадии мы сейчас находимся, что нас ждет впереди и как этому делу можно помочь.

Прежде всего, информация для случайных читателей: Wikidot находится в конце своего жизненного цикла, его будущее туманно, а стабильность работы оставляет желать лучшего. Простой drop-in замены для викидота не существует, как и возможности сколько-нибудь простым образом забрать отсюда наши данные. Разные ветви Фонда продумывают разные варианты действий: от попытки реанимации открытой но очень древней версии викидота (он когда-то был в opensource) до подходов приспособить MediaWiki (движок Википедии) под нужды Фонда. Мы же сейчас следуем другому пути — разрабатываем свою платформу с нуля. Похожий проект был у коллег из английской вики, однако они свернули его до начала реальной разработки. Мы продвинулись гораздо дальше.

Зачем мы это делаем? Сайты Фонда по своей сути это не совсем классические вики: мы используем не все их возможности, но при этом заметно больше нуждаемся в дополнительных функциях (заявки, голосования, форум/комментарии, динамические страницы, etc.). В MediaWiki многое из этого реализуется плагинами сбоку и все это еще и выглядит всегда как MediaWiki (сколько её не украшивай), что немного ломает покружение в контент :)

Если наш проект по какой-то причине провалится, ситуация будет не хуже, чем у остальных филиалов, но если все получится — мы перейдем на быструю и надежную платформу, которую полностью будем контролировать и сможем дальше развивать её под свои нужды.

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

Все происходящее в этом году IRL значительно замедлило дальнейший прогресс, но с тех пор мы успели практически полностью переработать приложение под капотом — теперь это не просто зеркало, а полноценная readonly-копия содержимого нашей вики. Мы забираем данные из викидота и не просто складываем их в кучу, как раньше, а раскладываем по своей базе, догружая необходимые данные (такие как профили пользователей). Это очень скучное, но необходимое занятие, т.к. мы хотим сохранить весь контент, голоса и авторство страниц. Несколько примеров проблем, с которыми приходилось разбираться по ходу дела:

  • Викидот отдает через официальное API только очень ограниченный набор информации. Например, можно узнать, какой у страницы рейтинг, но нельзя узнать, кто за нее голосовал и как. Нам пришлось научиться работать и в обход официального API и доставать нужные данные, притворяясь браузером. Таким образом сейчас мы достаем почти все, кроме самого контента страниц.
  • Викидот сам везде использует ID пользователей, но "наружу" (в API) отдает только логины, поэтому с профилями пользователей разбирались отдельно.
  • Викикдот не реализует никаких механизмов для использования его учетных записей вне самого викидота, а нам важно понимать, что пользователь на нашем сайте (на котором мы пока поддержали вход через Google) это какой-то конкретный пользователь с викидота — нам пришлось на коленке реализовать механизм связывания учетных записей.
  • И так далее

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

А вот тут про место, с которым нам сейчас можно помочь:

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

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

На этой оптимистичной ноте прощаюсь с вами до следующего апдейта.

версия страницы: 2, Последняя правка: 20 Сен. 2023, 00:24 (459 дней назад)
Пока не указано иное, содержимое этой страницы распространяется по лицензии Creative Commons Attribution-ShareAlike 3.0 License.