LINUX.ORG.RU
ФорумTalks

neboard v1.3

 , ,


1

3

Попиарю свою борду, еще раз.

http://neboard.me/ — обычный интернет.

http://ch2.neboard.me/ — cjdns.

С i2p-версией проблемы, ее автоматом банит по ip (а он там один, тот где i2p крутится) за попытки доступа ботов.

Ключевые особенности:

  • теги вместо разделов
  • прогрессбар бамплимита
  • визуальное отличие тредов в бамплимите
  • няшные превьюшки картинок

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

И для любителей аватарок: http://neboard.me/tag/пони/

Борда написана на python2+django. Лицензия — GNU GPLv3. Переход на python2 вполне вероятен, но пока есть более приоритетные вещи.

Отдельное спасибо за помощь ritsufag, Mystra_x64.

P.S. На новость не тянет, считаю нечестным писать новость о собственном ресурсе.

★★★★★

Хм, в момент публикации тред из черновика не бампается в трекере.

# cast maxcom

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Поправлю. Это я делал чтобы тред не поднимался в трекере при редактировании, и вместе с этим сломал bump при публикации

maxcom ★★★★★ ()

Я-то уж думал, тут open hardware обсуждают.

CYB3R ★★★★★ ()
Ответ на: комментарий от vurdalak

В следующий раз указывай, что это имиджборда.

CYB3R ★★★★★ ()

Добавлено некое подобие юзеров (нужно только для сохранения настроек и синхронизации их между компами, никакого деанона).

Для синхронизации придется хранить state пользователя на стороне сервера. А от этого просто воняет слежкой.

Manhunt ★★★★★ ()
Ответ на: комментарий от vurdalak

В смысле state?

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

Всего этого на сервере быть не должно, по-хорошему.

Manhunt ★★★★★ ()
Ответ на: комментарий от Manhunt

Всего этого на сервере быть не должно, по-хорошему.

Сервер в любом случае знает все это о пользователе. Т.е. как только пользователь зашел на сервер, он добровольно дал возможность серверу получать и обрабатывать эти данные. Единственное в плане анонимности, что может обеспечить сервер, это не раскрывать личность и данные пользователя другим таким же клиентам. Что и происходит.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Единственное в плане анонимности, что может обеспечить сервер, это не раскрывать личность и данные пользователя другим таким же клиентам.

Только до тех пор, пока его не ломанут / не конфискуют.

Сервер в любом случае знает все это о пользователе.

Чем меньше знаешь, тем крепче спишь. Во-всяком случае, если искренне пытаться сделать анонимную i2p-площадку.

Manhunt ★★★★★ ()
Ответ на: комментарий от Manhunt

Только до тех пор, пока его не ломанут / не конфискуют.

И толку? Ну узнают они, что у некоего юзера с id=«gj9jg9034j90yj» такие-то теги в настройках, такая-то тема и такие-то сообщения он написал. Тем более что на бордах сообщения со временем умирают.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

такие-то сообщения он написал

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

у некоего юзера с id=«gj9jg9034j90yj»

Должна быть галочка: «хочу использовать постоянный id». По умолчанию выключенная.

Manhunt ★★★★★ ()
Последнее исправление: Manhunt (всего исправлений: 2)
Ответ на: комментарий от Manhunt

Без галочки не будет настроек, даже списка тегов.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Без галочки не будет настроек

Настройки можно хранить на стороне клиента. Куки разве не работают?

Manhunt ★★★★★ ()

Пару раз посещал эту парашу, увидел ужаснейшие шрифты и свалил в ужасе.

Ах да, разметка - говно.

Deleted ()
Ответ на: комментарий от Manhunt

Ну например список избранных тегов на стороне клиента не так просто сделать. Технически конечно возможно в куки пихать все настройки, кодированные в base64, но это извращение ИМХО.

Хотя я однажды видел, как один человек вместо БД на андроиде пихал все в json и сохранял в преференс (это такое хранилище, ориентированное на хранение маленьких строчек с параметрами).

vurdalak ★★★★★ ()
Ответ на: комментарий от Deleted

Там шрифты берутся из браузера. Так что ССЗБ.

А что с разметкой не так? Высказывай предложения — поправим.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Ну например список избранных тегов на стороне клиента не так просто сделать.

Какая движку разница, откуда прилетает список тегов: от удалённого клиента, или из локального серверного хранилища настроек?

Технически конечно возможно в куки пихать все настройки, кодированные в base64, но это извращение ИМХО.

Да можно и без base64, human-readable.

Manhunt ★★★★★ ()
Ответ на: комментарий от Manhunt

Какая движку разница, откуда прилетает список тегов: от удалённого клиента, или из локального серверного хранилища настроек?

Если все лежит на сервере, я делаю один простенький запрос: user.tags.all()

Если это лежит на клиенте в некой закодированной строке, мне надо достать эту строку, раскодировать, затем в цикле подоставать из базы эти теги. Ну и так далее.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

При чем если ZOG захватило сервер, оно вполне свободно будет читать куки клиентов, как только они зайдут на сайт.

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Да, я помню, мне приводили тот же самый аргумент на самой параше.

Так вот, адекватные люди сами указывают, какие шрифты использует их сайт.

Ах да, там правда нет AJAX-подгрузки поста по наведению на ссылку?

Deleted ()

Борда написана на python2+django. Лицензия — GNU GPLv3. Переход на python2 вполне вероятен

What?! o_O
Вы хотели сказать на Python 3?

IIIypuk ★★ ()
Ответ на: комментарий от vurdalak

Если все лежит на сервере, я делаю один простенький запрос: user.tags.all()

Что мешает реализовать прямой аналог user.tags.all() в случае хранения настроек в кукисах?

Ну и так далее.

Нужно определиться с политикой: это попытка сделать труЪ анонимную i2p хреновину, или это просто «ваяю как бог на душу положит, что получится, то и получится».

Manhunt ★★★★★ ()

Пользуясь случаем задам некоторые вопросы. Тоже думал запилить борду с <10 разделами (чисто классическую, без лишних функций и малоюзабельных фич), на бесплатном хостинге или на .com за 35$ в год. Так вот:
1) Насколько сложно создать движок? (в программировании самую малость разбираюсь, но при желании могу и изучить чего нибудь дополнительно по быстрому) Или уже есть готовые? Твой, например, хорош, но я хотел бы слегка другой.
2) Насколько непыльно всё это содержать?
3) Подводные камни?
Спасибо заранее.

SjZ ★★★★★ ()
Ответ на: комментарий от vurdalak

При чем если ZOG захватило сервер, оно вполне свободно будет читать куки клиентов, как только они зайдут на сайт.

1. ZOG не сможет ничего узнать о том, что было до момента захвата, поскольку на сервере такой информации тупо нет. Это уже само по себе маленькая победа анонимуса.

2. Захватить сервер без вывода его из продакшена и внести в него модификации для выпотрашивания инфы из клиентов — это все-таки сложнее, чем просто захватить сервер. А значит, вероятность этого события ниже.

Manhunt ★★★★★ ()
Последнее исправление: Manhunt (всего исправлений: 1)
Ответ на: комментарий от Deleted

Так вот, адекватные люди сами указывают, какие шрифты использует их сайт.

Так делать нехорошо, потому что у каждого свои предпочтения насчет шрифтов, которые выражены в настройках браузера. Если мне нравится шрифт Droid, а сайт показывает DejaVu (который нравится дизайнеру или админу), я такой сайт смотреть не буду.

Ах да, там правда нет AJAX-подгрузки поста по наведению на ссылку?

Правда. Я плохой джаваскриптер, а рицуфаг не отвечает сейчас.

vurdalak ★★★★★ ()
Ответ на: комментарий от IIIypuk

Нет, python2. На момент созадния проекта мы собирались использовать один модуль, который не поддерживает python3. К тому же я пока не смотрел, поддерживают ли его все текущие модули.

vurdalak ★★★★★ ()
Ответ на: комментарий от Manhunt

Что мешает реализовать прямой аналог user.tags.all() в случае хранения настроек в кукисах?

То, что там не только all, там еще выборки по базе. А реализовать sql на кукисах не так просто.

Нужно определиться с политикой: это попытка сделать труЪ анонимную i2p хреновину, или это просто «ваяю как бог на душу положит, что получится, то и получится».

Это попытка сделать АИБ. Про Ъ-i2p речи небыло, i2p там прибит сбоку скотчем, и то в данном варианте не очень работает.

vurdalak ★★★★★ ()
Ответ на: комментарий от SjZ

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

2) Зависит от количества пользователей. Я почти не пиарился, поэтому людей там сейчас немного и проблем нет. Боты поначалу досаждали, теперь с ними разобрались.

3) Главный камень — выделить свою борду среди остальных мелкоборд, которых тысячи. Для этого нужна хороша пиар-компания. Где ее взять, я и сам пока не придумал.

vurdalak ★★★★★ ()
Ответ на: комментарий от Manhunt

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

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

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

Deleted ()
Ответ на: комментарий от Deleted

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

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

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Никто не говорил о «курсивных а-ля рукописный текст».

Deleted ()
Ответ на: комментарий от Deleted

Кто-то говорил о шрифтах не выбор вебмастера. Мне вот курсив нравится :3

vurdalak ★★★★★ ()

Тема хорошая, хочу на лор такую. И да, со шрифтами все правильно сделали, не слушайте всякие охренительные истории про композицию.

Worron ★★★ ()

Ну, а 5000 запросов в секунду выдаёт?

Mitre ★★ ()
Ответ на: комментарий от fornlr

Когда запрещаться в роскомнадзоре будем?

Когда будем достаточно популярными, чтобы он нас заметил :3

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

Смотря что ты хочешь сделать

Хочу: сбоку разделы (меньше 10), увеличение пикч по клику, скрытие тредов, по кнопке добавление новых постов в тред, без обновления всей страницы, антивайп. Остальное всё дефолт.

ковыряния в чужом быдлокоде

В том то и дело, что опыта ковыряния в чужом коде у меня еще меньше, чем опыта программирования.

Остальное уже дело третье.

SjZ ★★★★★ ()
Ответ на: комментарий от fenris

Sky :3

Настройки на клиенте это хорошо, но этому есть предел к тому же гонять такие куки постоянно как-то не кошерно.

ritsufag ★★★★★ ()
Ответ на: комментарий от SjZ

Хочу: сбоку разделы (меньше 10), увеличение пикч по клику, скрытие тредов, по кнопке добавление новых постов в тред, без обновления всей страницы, антивайп. Остальное всё дефолт.

Не так долго писать.

В том то и дело, что опыта ковыряния в чужом коде у меня еще меньше, чем опыта программирования.

За пару месяцев разберешься. Но чем больше ты будешь менять, тем сложнее это будет делать в дальнейшем. Придется рефакторить почти все.

vurdalak ★★★★★ ()

Лол, какой-то лоровский анонимус пытается вайпать. Вовремя время подобрал, я как раз на улице был :3

vurdalak ★★★★★ ()
Ответ на: комментарий от SjZ

Думаю tinyboard отвечает твоим требованиям, но я бы на твоём месте взял tinyib и допилил до нужного состояния.
В ней просто разобраться, хоть и написана она не в самом лучшем стиле, но потом освоившись сможешь даже что-то написать своё.

Кусабу с вакабой советовать не буду, у них известные проблемы.

ritsufag ★★★★★ ()
Ответ на: комментарий от ritsufag

Кусабу с вакабой советовать не буду, у них известные проблемы.

Какие именно проблемы?

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

vurdalak ★★★★★ ()
Ответ на: комментарий от vurdalak

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

Алсо, кто мне там древовидный режим и превьюшки ответов обещал?

Мне лень пока что-то писать:3 Мб через неделю.

А еще загрузку картинки по урлу.

Это скорее с серверной стороны, я не знаю можно ли сейчас подгрузив картинку картинку на клиенте её отправить и какие это потребует костыли.

ritsufag ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.