Узнал про Zulip
Позавчера, сидя на Идеалистах и листая ленту Fediverse, узнал о существовании такого проекта как Zulip. Решил узнать поподробнее, что это такое. И в очередной раз оказалось, что всё уже придумано для нас! Zulip изначально позиционируется как open source аналог Slack. Но в нём реализованы мои идеи мобильного сообщества как сочетания realtime-общения и асинхронного общения в одном месте! Что-то вроде self-hosted стены ВК или канала в Telegram, только ещё с поддержкой деления на разделы (там их называют каналами) и темы, как на форуме . Хотя, на мой взгляд, то, как это деление там устроено, несколько перегружает интерфейс. К тому же я предполагал мобильное сообщество сбалансированным в плане пользователь-центричности (user centrinc) и темо-центричности (topc centric), тогда как Zulip — это типичное темо-центричное сообщество. Там даже отдельной страницы профиля пользователя нет, только карточка, которая показывается при наведении мыши с минимумом информации: имя, аватар, статус в сообществе, и всё. Ни счётчика сообщений, ни поиска всего, написанного автором.
Но есть и недостатки. Во-первых, Zulip сделан на Django+PostreSQL, из-за чего будет весьма прожорлив в плане памяти. Во-вторых, использует client side rendering, и в принципе не будет работать с выключенным JavaScript. Хотя этим страдают многие проекты, сделанные после где-то 2012 года (Zulip появился в 2013), те же Mastodon и Akkoma, например. Но, справедливости ради, следует заметить, что интерфейс там достаточно быстрый и отзывчивый, а на любое сообщение или тему можно поставить внешнюю ссылку, как на полноценном форуме (но реализованы они в формате #/channtel/topic). Правда, не знаю, поддерживается ли возможность читать и писать сообщения в оффлайне. Для Web-версии поддержки PWA нет, но в то же время есть native apps для всех платформ (надеюсь, не на Electron написанные).
В общем, буду изучать Zulip дальше. Но, в любом случае, теперь количество возможных направлений жизни сократилось вообще до четырёх: блоггерство (и сюда же каталог бесплатного софта), инфобезопасность, написание TextCMS 2.0 на базе Preambula, участие в сторонних open source проектах (в первую очередь, HumHub, хотя кто знает, может и в Zulip вклад сделаю).
Гость написал(а):
Не постапокалипсиса, на «VDS для бедных», если так можно выразиться. Т.е. с 0.5 или 1 Гб оперативки. Для связки Python + Postgres этого явно маловато. (Собственно, почему я так с PHP фанатею, да потому что там один процесс имеет RSS всего 20-25 Мб обычно, а при моих нагрузках 3-4 процессов обычно достаточно.) По крайней мере, когда-то запускал что-то другое на Django, так там только один Pyhton около 300 Мб RSS сожрал. Хотя, возможно, это от конкретного скрипта зависит. Нужно будет как-нибудь сделать банальный Hello World на Django и померить, сколько он сожрёт, чтобы иметь более объективные представления о минимальных требованиях.
Гость написал(а):
Почему же? Можно сделать подгрузку готовых кусков HTML, да и всё. Я, когда начинал делать свой проект, так и планировал, даже готовую библиотеку под это нашёл под названием HTMx. (Хех, а ещё вспомнилось, как в 2001 году, когда я про AJAX ещё не знал вовсе, писал чат на IFRAME с обновлением через meta refresh. Но по нынешним временам это всё же перебор, да и с точки зрения траффика не самое лучшее решение.)