[WT] [Архив]  [Поиск] Главная Управление
[Совместно с Ычаном]
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]
Ответ в нить [Последние 50 сообщений]
Имя
Animapcha image [@] [?]
Тема   ( ответ в 18554)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, OGG, PDF, PNG, PSD, RAR, SVG, SWF, TXT, XCF, ZIP размером до 10000 кБ.
  • Ныне 2978 unique user posts. Посмотреть каталог
  • Максимальное количество бампов нити: 500
151568335844.png-(521.18KB, 1920×1052, hc.png)
18554
No. 18554 watch    
Пишу принципиально новый движок для борды. Спрашивайте ваши вопросы.

Тред в /b/ удалили :(
50 сообщений пропущено. Показаны 50 последних сообщений Развернуть все изображения
No. 18733    
151659063444.png-(23.74KB, 500×283, standards.png)
18733
>>18726
>Что тебе мешает, если ты видишь неадекватного ОПа создать свой тред с ханафудой и 2Д няшками.
Пикрелейтед.
>>18715
>современное одностраничное приложение
А оно будет превращать мой проц в кашу, когда я начну крутить за пределы десятой страницы?
No. 18734    
151660204936.jpg-(81.43KB, 600×849, 7f9520aa984b4000aca92b2cec96a6d4.jpg)
18734
>>18733
Ну сейчас не превращает?
No. 18735    
>>18734
А тут сейчас современное одностраничное приложение? Не знал. Пойду Соусу расскажу.
No. 18736    
>>18735
Давай-ка ты откроешь отладчик, посмотришь как все устроено и не будешь выпендриваться? Видал я твоего Соуса.
No. 18737    
>>18736
А давай я не буду пытаться делать работу за тебя, и читать код, в котором ничего не понимаю? По ссылке я не ходил, и увидел её в треде только сейчас.
No. 18738    
>>18737
Давай. А что тогда за комментарии на тему того, чего не понимаешь?

Объясню, все-таки, "современность" подхода: клиентское JS-приложение в браузере + универсальный серверный API. Навигация происходит без обновления страницы, запрашиваются только данные, дальше приложение обновит содержимое страницы, внося минимальные изменения. Следствие - очень быстрая навигация, меньше расход трафика, меньшая нагрузка на сервер.

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

Сорян, чет вызверился
No. 18739    
>>18738
> Следствие - очень быстрая навигация, меньше расход трафика, меньшая нагрузка на сервер.
Заодно эти современные сайты исполняют код, который кроме облегчения ускорения навигации может делать непонятно что, например красть печеньки из соседней вкладки через Spectre.

мимокрокодил
No. 18740    
>>18739
Я не буду красть, я хороший :3
No. 18741    
>>18733
> Пикрелейтед.
Лол, ты сравниваешь комикс-сатиру на современный "рыночек порешал" и борду со свободой даже от вашего рыночка. Не надо так.
No. 18742    
>>18738
>JS-приложение в браузере
Плохо.
>универсальный серверный API
Хорошо. Если оно не будет меняться, можно написать стэндалон клиент. Да, я ненавижу "реалтайм ЖС пинг-понг" между сервером и клиентом настолько сильно.
>Следствие - очень быстрая навигация, меньше расход трафика, меньшая нагрузка на сервер.
>Загружаются 16 тредов по 16 последних постов + ОП
Сэр, плиз. Экономить траф и ресурсы сервера на статичных страницах я тож могу, следи за руками.
>10 тредов на страницу доски
>3 последних поста из треда показаны на странице доски
>бамплимит в 100 постов (вообще длинные треды зло, и читать их полностью становится обузой)
>можно добавить жс-кнопку на подгрузку последних пяти/пятидесяти постов динамически, если уж совсем неймется
Все это можно реализовать на автобусе прямо сейчас, и по-моему, только лучше станет. Старые треды можно отправлять в архив, при этом осуществлять ротацию быстрее. Автобус достаточно медленный, чтобы не было по десятку тредов за день, так что тут я тоже не вижу проблем.
>спойлер
Они, как и я, видимо, тоже ненавидят сайты, где ОБЯЗАТЕЛЬНО включать JS, чтобы хотя бы посмотреть на сайт. В целом, от таких сайтов мы ожидаем
а) Неконтролируемого воровства печенек коннектинга к местам в интернети, о существовании которых мы и не подозревали (параноик вариант)
б) Жуткого тяжелого (опционально: обфусцированного) JS от моднявых фреймворков и в целом сырой технологии динамического рендеринга страниц, которые жрут бесстыдные количества процессорного времени. Даже не на кофеварках этот лаг ощутим, но это, как можно догадаться, уже субъективные предпочтения (кодопурист вариант)
в) комбинации а,б)) и, возможно, с чем-то еще

Обобщая мысли: конечно, что-то новое искать надо, но наиболее интересен новый юзер экспириенс (теговая организация, например). Вообще, по-моему, "веб-бизнес", если он не связан с реальным сектором, нацелен на новый опыт прежде всего. И даже если связан, юзеру там должно быть хорошо и понятно. А используемые для этого технологии - вообще детали. А уж если они обладают недостатками, с которыми я не хочу мириться, я просто игнорирую технологию.
No. 18743    
>Все это можно реализовать на автобусе прямо сейчас
Ну, кроме кнопки подгрузки, естественно. Еще забыл указать более безжалостный post trimming, то есть обрезание длинных постов еще короче (на странице доски), если это необходимо, конечно.
No. 18744    
151662790077.jpg-(35.99KB, 400×400, buhanka sempai.jpg)
18744
>>18742
Ты уж извини, но я не понимаю этой JS-паранойи. Братюнь, очнись, матрица уже тебя поимела, когда ты включил компьютер.
>а) Неконтролируемого воровства печенек коннектинга к местам в интернети, о существовании которых мы и не подозревали (параноик вариант)
man CORS

>Сэр, плиз. Экономить траф и ресурсы сервера на статичных страницах я тож могу, следи за руками.
Количество одновременно загружаемого контента надо тюнить. В текущей конфигурации с рендерингом успешно справляются бюджетный планшет и смартфон 4-х летней давности, нужно увеличивать лимиты и тестировать дальше.

>б) Жуткого тяжелого (опционально: обфусцированного) JS от моднявых фреймворков и в целом сырой технологии динамического рендеринга страниц, которые жрут бесстыдные количества процессорного времени.

Фреймворки ушли вперед далеко. Используемый мной React при обновлении данных минимально модифицирует DOM, а это самая затратная операция на клиенте. Технология не сырая, Пейсбуку уже несколько лет как норм.

И в чем "тяжесть", брат? Бандл приложения загружается и кешируется надолго. Если народ попросит - можно отдавать не обфусцированный код. Имеется ввиду тяжесть выполнения? Первоначальная загрузка библиотечного кода и кода приложения выполняется лишь при открытии страницы, для навигации и просмотра не нужно рефрешить и перезапускать всю аппликуху. Есть сценарий "открыто много вкладок", но имея быструю навигацию, закладки в боковой панели и уведомления пользователю их открывать ящитаю не захочется.

Пикрандом
No. 18745    
>>18744
>Братюнь, очнись, матрица уже тебя поимела, когда ты включил компьютер.
Из того, что я, возможно, использую фундаментально небезопасную систему, не следует, что я не должен выкладывать уровни защиты от самых разных типов атак.
>man CORS
Ну, я блочу 3rd party домены с помощью расширения, но следствия от подгрузки скриптов на выполнение более фатальны, нежели. Хотя, чисто в теории можно овнить и через картинки, была бы дыра в либе.
>Количество одновременно загружаемого контента надо тюнить.
Не понял. У нас есть GET от клиента, и если он не задница и не дампит весь твой борд скриптами, тебе надо обслужить только один GET, который можно вообще выдать из кеша клиента, например, если страница не поменялась.
Так-то в потенциале у реалтайма, может, и побольше возможностей к экономии, но тут это уже зависит от того, насколько часто тебя рефрешат.
>Фреймворки ушли вперед далеко. Используемый мной React при обновлении данных минимально модифицирует DOM, а это самая затратная операция на клиенте. Технология не сырая, Пейсбуку уже несколько лет как норм.
Ну, хуже всего с автообновлением. Оно у тебя вообще есть или нет еще? Когда на такой доске будет появляться с пост за десять секунд, я точно захочу куда-то исчезнуть, лол.
Если все будет по сути на кнопках, то есть без действия пользователя тяжелый код просто не исполняется, то все ок с точки зрения юзабилити.
Но теперь это принцип. Если я захожу на сайт и вижу пустую страницу, я просто пройду мимо. I got stuff to do. Кстати, about stuff to do, тебе следует прямо сейчас разрабытывать свой сайт, а не флудить тут со мной. Спасибо за разговор, в итоге я даже открыл твою борду, она все-таки шустрая.
>имея быструю навигацию, закладки в боковой панели и уведомления пользователю их открывать
Возможно, повторяю тред, но считаю уведомления антифичей. Я бы предпочел, чтобы ничто нигде не уведомляло меня ни о чем за исключением случаев, когда я сам попросил об этом. И обычно я не прошу об этом. И конечно, уведомления не должны настраивать себя сами. У меня и так столько гештальтов открыто, что я больше похож на призрак, чем на человека.
No. 18748    
>>18741
>Не надо так.
Мне сходить на форчонг, где треды перекатываются из одного в пять разных?

>>18738
Зашёл я на борду.
>Навигация происходит без обновления страницы, запрашиваются только данные, дальше приложение обновит содержимое страницы, внося минимальные изменения. Следствие - очень быстрая навигация, меньше расход трафика, меньшая нагрузка на сервер.
Следствие - когда я хочу в списке тредов достать тысячный, мне нужно ручками прокрутить 999, и они все будут забивать мне браузер. Это сейчас проблемы нет, потому что даже тредов на 1к+ постов нет. Но если они __принципиально__ не планируются - вопросы отпадают.
No. 18749    
>>18748
>Следствие - когда я хочу в списке тредов достать тысячный, мне нужно ручками прокрутить 999, и они все будут забивать мне браузер
О, кстати да, это еще вопрос. Плюс, как я понял, все это время он будет подгружать треды 16 по 16 постов, то есть трафик будет гоняться мама не горюй в этом варианте?
Олсо, экономия трафика в таком варианте в целом не ясна. Как я предложил для статики, пусть у нас 10 тредов по три поста из каждого, то есть вместе с ОП четыре, забивают одну страницу, то есть у нас в целом 40 постов статики (не знаю, какой пост будет жирнее, из статичного варианта или из приложения - это уже от формы статики/динамики зависеть будет) на один запрос. И если мы хотим еще, мы делаем еще один запрос. Мы можем прыгнуть на какую угодно страницу из разбивки, мы не обязаны просматривать ВСЕ страницы по порядку.
Полагаю, это предлагается решить путем построения кастомных "user bubble"'ов, где мы скроллим только через то, что сами выбрали как-то (ответили или "подписались на тред" или еще что). Но это не решает проблему фундаментально. В целом, ты все еще можешь основательно угадить себе эти самые "replied" или "followed", лол.
No. 18754    
151665185520.jpg-(97.84KB, 1024×578, f1-ng1JO6LI.jpg)
18754
>>18748
999 Тредов? 100 страниц по 10 тредов? Такого даже на 4чане нет. Там 10 по 10 сейчас, если не ошибаюсь. Столько ты отскролить сможешь один раз, дальше добавишь тред в избранное. Пока не вижу проблемы, на крайняк возможно сделать поиск по оп посту.

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

Дальше, я не понимаю юзкейса скакать по страницам доски в произвольном порядке. Зачем? Список тредов постоянно меняется по порядку. Интересные ты добавляешь в избранное и отслеживаешь там.

Добавлю по экономии. Во-первых, экономия не столько ради самих килобайт, сколько ради скорости работы. Я хочу, чтобы все открывалось мгновенно. Во-вторых, с постепенной подгрузкой удобнее читать длинный тред, и картинки не все сразу грузятся. И в-третих, JSON всегда будет по размеру меньше и формироваться будет быстрее, чем HTML.

Парни, статики не будет, это принципиальный момент. И по моему убеждению, одностраничник даст крутой экспириенс в плане скорости работы и динамике общения, и это только начало.
No. 18755    
>>18754
>Такого даже на 4чане нет.
4чан плохой контрпример, потому что он следует весьма краткому количеству страниц на доске как принципу.
Я в принципе тоже скорее солидарен в том, что такое количество страниц хранить не стоит с точки зрения экспириенса. Никому не нужно на борде копаться в куче старья. Но если на твоей доске будет большой лимит для тредов, такая ситуация может запросто случиться.
>16х16 трафик небольшой на самом деле, но в ближайших планах грузить гораздо больше тредов только с оп постом, отзывчивость, похоже, позволяет не кешировать последние 16 постов. Это было сделано, чтобы загруженные в боковике трелы открывались мгновннно.
Ага, ясно, то есть мы выбираем треды для подгрузки.
>Дальше, я не понимаю юзкейса скакать по страницам доски в произвольном порядке. Зачем?
На твоей доске точно незачем, мистер, у тебя же только одна страница!
На статической доске - если хочется сразу посмотреть наиболее старые треды, например. Но тут ты прав, большинство экшна обычно на нулевой.
>Список тредов постоянно меняется по порядку.
Господи, это звучит так, будто, открываю я, значит, твою досочку, там постят И ТРЕДЫ ПРЯМО ПЕРЕДО МНОЙ ДИНАМИЧЕСКИ ПЛАВАЮТ, МЕНЯЯ ПОРЯДОК, И Я ВЫНУЖДЕН ЗА НИМИ ОХОТИТЬСЯ. Скажи мне, что это не так.
>Интересные ты добавляешь в избранное и отслеживаешь там.
В целом, я тоже "не понимаю этого юзкейса". Отслеживать что-то на борде, ну елы-палы. Обычно на досках даже поиск по постам не впиливают.
>Я хочу, чтобы все открывалось мгновенно.
Ну, когда тебе надо что-то подгрузить, типа постов или тредов, лаг на долю секунды присутствует. Этот лаг сопоставим с лагом на статике в целом, хотя твоя борда делает его несколько более приятным.
>И по моему убеждению, одностраничник даст крутой экспириенс в плане скорости работы и динамике общения
Ну, это действительно будет другой экспириенс, но насколько он хорош, мы пока не выяснили. Вон, у кого-то уже есть проблемы с этим. У меня на самом деле меньше проблем, чем я, возможно, обсуждаю, но такой уж я придира.
No. 18758    
>>18754
>Такого даже на 4чане нет
Такое есть на любой доске с автоархивом. И на досках, где принципиально дампают всё подряд. Впрочем, можно сразу прописать, что движок не предназначен для такого в доках. Тогда у меня нет вопросов.
>Дальше, я не понимаю юзкейса скакать по страницам доски в произвольном порядке. Зачем?
Если я хочу найти тред про X, но не знаю ничего, кроме того, что там в итоге обсуждали X, и может дату примерную последнего бампа, угадай, что я буду делать?
>Во-вторых, с постепенной подгрузкой удобнее читать длинный тред
Только первые N-50 постов мало кого волнуют.
>И по моему убеждению, одностраничник даст крутой экспириенс в плане скорости работы и динамике общения, и это только начало.
И я каждый раз проклинаю умников из гугла, когда пытаюсь найти записи из истории ютуба, которым больше полутора лет. Проклинал бы и Санкаку, но там можно включить пагинацию.
No. 18759    
>>18748
> Мне сходить на форчонг, где треды перекатываются из одного в пять разных?
Не знаю я такого там не замечал. По крайней мере в /u/ так точно. В других разделах я думаю, если такое и существует, то это только пока модеры не потрут такую безобразицу.
No. 18760    
>>18759
>/u/
Попробуй /vg/.
>пока модеры не потрут такую безобразицу
В случае с ОП-модераторами это нонсенс.
No. 18763    
151669679482.jpg-(42.68KB, 400×751, 01e000.jpg)
18763
>>18755
>На твоей доске точно незачем, мистер, у тебя же только одна страница!
Азаза. Имелись ввиду страницы списка тредов.

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

>Господи, это звучит так, будто, открываю я, значит, твою досочку, там постят И ТРЕДЫ ПРЯМО ПЕРЕДО МНОЙ ДИНАМИЧЕСКИ ПЛАВАЮТ, МЕНЯЯ ПОРЯДОК, И Я ВЫНУЖДЕН ЗА НИМИ ОХОТИТЬСЯ. Скажи мне, что это не так.
Ну вообще-то ДА. Но это все будет включаться и отключаться галкой внизу страницы, плюс обновление не в реальном времени, а, допустим, каждые 2 минуты.

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

>>18758
>Такое есть на любой доске с автоархивом.
Архив действительно нужен. Но потом.

>Если я хочу найти тред про X, но не знаю ничего, кроме того, что там в итоге обсуждали X, и может дату примерную последнего бампа, угадай, что я буду делать?
Угадываю. Без поиска ты в любом случае будешь страдать. Чтобы не страдать, добавляешь интересные треды в избранное ИЛИ скрываешь весь треш на доске, тогда скроллить будет проще. Это если тред еще в архив не попал.

>Только первые N-50 постов мало кого волнуют.
Согласен, именно поэтому я разделил просмотра последних N постов + более новые или же с самого начала. Опять же, чтобы лишнее не грузить и быстро оценить, интересен ли тебе тред, появилось ли что-то новое в нем.

>И я каждый раз проклинаю умников из гугла, когда пытаюсь найти записи из истории ютуба
Опять же, нужен архив, это ценный момент, что я из этой дискуссии вынес. Надо разделять интерфейс для быстрого общения, грубо говоря чат, и архив ценных тредов.
No. 18765    
>>18730
> древовидную структуру досок, чтоб наследование было и разбиение тематики от общего к частному, от широкого к узкому
Такое ощущение, что чтобы это имело практический смысл, имиджборда должна быть невероятно огромной (гораздо крупнее, чем существующие крупнейшие имиджборды).
No. 18766    
>>18709
> http://hexchan.org/b/
Не работает без джаваскрипта ⇒ борда — говно.
No. 18791    
151697944125.jpg-(580.22KB, 1100×777, ANIME-PICTURES_NET_-_328394-1100x777-touhou-hakure.jpg)
18791
Бамп.
Обновил онлайн-версию. Теперь работает постинг!
В процессе реализация самопальной капчи, масштабный рефакторинг фронтенда и бэкенда, увеличины лимиты на число получаемых за один запрос объектов.

http://hexchan.org/b/
No. 18848    
1. 2018 год, а ссылка без https
2. ссылка не открывается
No. 18849    
>>18848
1) Лень настраивать, до релиза не нужно.
2) Деньги кончились на хостинге.
No. 18851    
>>18849
Все, переподнял сервак.
No. 18895    
151781857619.png-(569.06KB, 1332×968, admin.png)
18895
Видел на сайте реквест скринов админки. Выложу их сюда.

Админка пока в зайчаточном состоянии, одна полурабочая страница и несколько скетчей. Вообще, админка для меня менее интересная часть проекта, скорее даже муторная.
No. 18896    
151781871717.png-(82.40KB, 1280×800, posts.png)
18896
Скетч панели картинок с прошлого скрина.
No. 18897    
15178189454.png-(96.17KB, 1280×800, reports.png)
18897
Панель рассмотрения жалоб.
No. 18898    
151781913259.png-(122.88KB, 1280×800, images.png)
18898
>>18896
Тьфу, не та картинка.
No. 18899    
>>18895
Ты сделал только что более-менее нормальный поиск, который можно даже юзеру.
No. 18975    
151799926877.jpg-(200.57KB, 800×800, 013000.jpg)
18975
Бамп. Новинки:

Самописная капча, подключена и работает. Картинок сгенерил немного, но для теста сойдет. Что думаете насчет стойкости к автораспознаванию и удобства для юзера?

Возможность ответа на пост, по клику на его id откроется форма и вставится этот id. После отправки и сохранения он станет зеленой ссылкой на пост, по ней можно кликнуть и проскроллиться к указанному посту.
Цитирование с одной угловой скобкой также работает. По разметке пока все.

По-моему получилось удобно, что форма ответа всегда наверху - не нужно скроллить, когда отвечаешь сразу на насколько постов.

http://hexchan.org/b/
No. 18997    
Прикольно получилось. Мне нравится. Но не логичнее местами поменять ответы со списком тредов? Чтобы по стилю ВК/ ФБ/ Телегу напоминало. Список слева, как только что-то открываешь - оно в середине. Сейчас очень странно всё ощущается.
А так - быстро, приятно, потенциал хороший, кмк.
No. 19000    
151807070617.jpg-(228.29KB, 600×846, 01c000_0.jpg)
19000
>>18997
Спасибо. С лейаутом можно поэкспериментировать.
Мотивация была такая, что поскольку читаешь слева направо, боковик слева будет мешаться. Хотя, с другой стороны, слева он более привычен, как в почтовиках или социалках, да.
No. 19005    
>>19000
Это "выберите тред для просмотра" вводит в ступор. Лучше чтобы по-умолчанию панель справа была бы развернута на полный экран, а при выборе треда отъезжала в сторону.
No. 19007    
151812177015.jpg-(36.63KB, 337×403, 01a068_0.jpg)
19007
>>19005
А как насчет, ну не знаю, выбрать тред для просмотра? :3

Ладно, на самом деле там будет более осмысленная информация, как тут подсказали. Описание доски, правила, прикрепленные треды.

Не все сразу, парни. У меня есть доска с задачами в трелло, их там уже на полсотни, и это еще нет задач по админке. Текущими темпами, боюсь, понадобится еще полгода-год.
No. 19630    
152381214174.png-(250.13KB, 1160×758, Скриншот сделанный 2018-04-15 в .png)
19630
> Прошло 3 месяца
> Дизайн выкинут
> 2/3 кода выкинуто
> Смена парадигмы на обычное Django+Python
> И это после полутреда моих гневных кукареков о расовом превосходстве Single page apps

Ох лол, посаны. Я снова с вами :3

(ПОТРЕБИТЕЛЬ БЫЛ ЗАПРЕЩЁН ДЛЯ ЭТОГО СТОЛБА)
No. 19631    
152387266842.jpg-(50.12KB, 604×465, 7phwvajAS_s.jpg)
19631
Блин, хотел забавненько объявить о своем камбеке, а схлополтал бан. Неловко вышло.
No. 19632    
>>19631
Скорее всего, последняя строка гринтекста была лишней.
No. 19635    
>>19630
ОП, ты хоть объясни нормально, что вообще случилось. Почему вдруг больше не хочешь делать SPA?
No. 19664    
>>19635

Дык он же вроде как забанен. Как он тогда объяснит?
No. 19669    
152420679538.jpg-(460.24KB, 1920×1080, 20161222220906_1.jpg)
19669
>>19664
Ну, это всего на один день было, по статье "троллинг". Троллил, по факту, сам себя, ну да и ладно.
>>19635
Отчасти я просто психанул, из-за огромной кучи мелких проблем ИРЛ и довольно жесткого выгорания на работе, на которой я тоже всем этим дерьмом занимаюсь. Еще в текущей SPA-ветке есть куча недостатков, не все пока придумал, как решить:

1) Во-первых и главных - начало бесить, что для простого, в общем-то, проекта нужно столько кода. Уйма логики дублируется между клиентом и сервером, нужны сложные JS-подпрыгивания, организовывать хранилища данных и там, и там (Redux на клиенте, БД на сервере), синхронизировать их. А в статике - выборку из БД сделал, шаблон с ней отрендерил и збс.

2) Я допустил большой архитектурный проеб в бэкенде. Есть в БД четыре базовые сущности: Доска, Тред, Пост, Картинка, в соответствующей иерархии. Сделал для каждой из них "красивый" REST API. Так вот, пример проблемы. Когда первый раз открываешь сайт, начинают грузиться: отдельно борды, отдельно открытый тред со своими постами, отдельно список тредов для боковой панели. Потом начинаешь ходить по тредам, грузится только открытый тред, боковик не обновляется. Экономия трафика все быстро, простые запросы к бд, все разбито по сущностям, красота.

Только, блядь, состояние может между запросами рассинхронизироваться! Ты открываещь тред, в нем последний пост появился только что, в боковике у него дата обновления - позавчера. Если активная переписка идет в треде, он за пять минут может еще 10 постов набрать, а ты еще в боковике видишь что там целых ноль ответов, и по списку он во второй десятке. Или ты подгружаешь "еще тредов", и хотя я сделал так, что порядок при подгрузках будет сохраняться, но число постов и дата обновления снова вызовет недоумение.

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

Выход я вижу только делать так, как для полностью статичного варианта - за один запрос API выдавать всю пачку данных для отрисовки страницы. Опять же, а с подгрузками что делать?..

3) Боковая панель. Как бы я не отбрехивался ранее, она красива (наверно), но не удобна. При автообновлении списка тредов их порядок будет меняться, мельтешить будут перед глазами, тред дальше второй страницы тяжело будет найти. Тут решения взаимоисключающие. Отсортировать треды по дате создания - не будут мельтешить, да, но зато активную дискуссию в поднятом с третьей страницы треде ты просто пропустишь.
No. 19670    
152420790950.png-(120.67KB, 1920×885, admin.png)
19670
Так я и пришел к текущему положению дел. Пока пилил статичную версию - наслаждался тем, как все быстро и просто получается. Никакой возни с состоянием приложения, понятно как сделать кеширование, не нужна "сборка" фронтенда.

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

В ближайших планах - убрать шероховатости интерфейса (сейчас даже в тред не сразу попасть можно, если постов мало), восстановить паритет по фичам со старой версией (скрытие тредов и постов, по-просто).

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

Потом будут нужны механизмы репортов и банов, переноса тредов между досками. Кеширование. Масштабирование для маленьких экранов. Подсветка постов юзера и ответов на них в треде. Автообновление треда. Вроде как и все.

Было на самом деле тяжело признать, что задумка, на которую угробил больше полугода не взлетает.
No. 19671    
Такой вопрос, а почему ты не использовал сокеты на SPA?
No. 19672    
>>19671
Я бы наверно мог, но зачем? Real-time обновления здесь не сильно нужны, плюс нужен сервер помощнее, плюс бэкенд на Django с веб-сокетами не дружит.
No. 19673    
Как и на новом нульче, кукла работать не будет?
No. 19674    
>>19672
Я всегда думал, что со SPA неразрывно связаны веб-сокеты, особенно в тех местах где используются чаты и нужно вовремя реагировать появление новой информации.
В твоём случае это была, как минимум, боковая панель.
No. 19675    
>>19673
Нет и не нужно.
>>19674
Нет, достаточно старого доброго AJAX. Алсо, имиджборд концептуально не чат, другой формат общения. Текст длиннее, немедленного ответа никто не ждет.
No. 19676    
>>19675
Движок не нужен? Тогда зачем ты его пилишь и ведешь по нему тред?
Удалить сообщение []
Пароль  
[Mod]