Давно ничего тут не писал, а написать есть о чём - сделано было достаточно много. :)
Попробую немного поменять формат повествования :) Видео в этом посте будут дополнять текст. Они будут короткие и без звука. Просто наглядная демонстрация того, о чём пишу.
1. То, о чём уже писал в новостях https://otvechai.com/blog/news/3831/
Несколько раз поигрался с цветовой схемой сайта. Остановился на том, что Вы можете увидеть на скриншотах в новостях и на видео ниже.
Также переделал дизайн профиля пользователя - теперь он не так похож на дизайн ВК :) (а то с синим заголовком сходство слишком очевидное было :)
Ну и самое главное в этом пункте - сделал темную тему.
2. Переделал "прочие уведомления" (колокольчик).
Где-то в самом начале этого блога я писал о том, что переделал прочие уведомления, а также уведомления о вопросах-ответах-комментах. Но с тех пор концепция сильно поменялась. На текущем сайте были переделаны уведомления блогов и прочие уведомления. Уведомления блогов были перенесены и на новый движок ранее, сейчас я перенёс и колокольчик с текущего сайта.
Внешне эти уведомления не изменились (с прошлого их описания)
3. Пока делал уведомления столкнулся с неприятной штукой...
Вот представьте, открываете уведомления, у вас их там 30 штук, прокручиваете ниже - их ещё 30 подгружается, и ещё и ещё... Новые уведомления добавляются в список, их становится всё больше и больше. React часто "перерисовывает" страницу. У него есть свои способы оптимизации, что не перерисовывать то, что не менялось, но в этом случае ваш браузер начинает сильно напрягаться... И чем больше список уведомлений, тем сильней напрягается браузер.
На компе, после пары сотен загруженных уведомлений становился заметен лаг при прокрутки, телефон же вообще начинал ощутимо греться...
Ну а помимо уведомлений есть ещё списки вопросов, ответов, комментов пользователя (где тоже может быть несколько сот или даже тысяч объектов), а блоги я вообще хочу в бесконечную ленту превратить - вся их суть в прокрутки потока постов...
Эта проблема даже для текущего сайта актуальна - попробуйте зайти в вопросы к какому ни будь Дедушке или в блог "Музыкальный полигон" и покрутить страницу вниз...
Решение проблемы есть, называется windowing - суть его в том, чтобы отображать только то, что вы видите. То, что не видите - не отображать. Инструменты для React тоже нашлись и даже заработали после недели танцев с бубном :)
Теперь те же уведомления можно крутить быстро :)
4. Раз уж о музыкальном полигоне сказал - Яндекс музыка это довольно больная тема. Когда на странице несколько встроенных объектов музыки всё лагать начинает. YouTube в текущей версии сайта так не встраивается - вместо видео встраивается картинка, при нажатии на неё открывается блок с самим видео.
Решил, что и Яндекс музыку нужно встраивать по такому же принципу. Есть некий блок-заглушка (который не грузит систему), при нажатии на него появляется сама встроенная песня.
Youtube оставил по такому же принципу, только видео остаётся на странице, а не всплывает поверх неё, как на текущей версии.
5. Начал делать действия для постов - "удалить", "пожаловаться", "редактировать", "подписаться"/"отписаться". Пока это просто элементы интерфейса, действий они не выполняют.
По поводу "пожаловаться" - давно уже думаю, что модерацию нужно в корне менять. Дать пользователям больше свободы (у нас тут не институт благородных девиц как ни как, да и вообще "в интернете могут послать на йух", и это вполне нормально). Не нужно звать модератора, когда Вы можете обойтись без него (а уж тем более от него что-то требовать, как будто он Вам чем-то обязан). Эту идею я уже пытался донести в новостях, но безрезультатно.
Кто-то пришёл к Вам в вопрос и нахамил? Удалите его ответ, а его добавьте в чс. Всем проще будет, и Вам в первую очередь. Модератор должен в первую очередь следить за вопросами. Ну а если приспичило - всегда можно пойти в профиль и отправить жалобу оттуда (с указанием причины).
В общем первый шаг в этом направлении сделан - теперь нельзя жаловаться на посты, которые Вы можете удалить сами. При попытки пожаловаться будет напоминание, что Вы можете удалить этот пост самостоятельно...
Ну а в дальнейшем планирую сделать обязательным указание причины жалобы, а также причины удаления для модератора.
6. Личка - с ней промучился кажется недели 2, не меньше... Зато теперь на одну сложную задачу меньше :)
Личку сделал с применением вебсокетов, это значит, что доставка сообщения будет мгновенной, реакция на прочтение тоже. Ну и кроме этого реализовал статус "печатает" (это всё демонстрирую в видео - следите за моей мышкой :) ). В общем надеюсь личика будет более адекватной и удобной, чем сейчас, и возможно в будущем реализую функционал групповых чатов (что уже давно порываюсь сделать).
На видео 2 окна 2х "собеседников" (слева я, справа не знаю кто :) )
7. Ну а ещё реализовал реакцию на статусы "Забанен" и "Удалён". Ну и возможность удалить свой профиль. Тут ничего нового, просто немного по-другому выглядит :)
Пока на этом всё. Впереди ещё много дел, но конец очередного этапа уже где-то близко... кажется...
Спасибо за внимание.
Попробую немного поменять формат повествования :) Видео в этом посте будут дополнять текст. Они будут короткие и без звука. Просто наглядная демонстрация того, о чём пишу.
1. То, о чём уже писал в новостях https://otvechai.com/blog/news/3831/
Несколько раз поигрался с цветовой схемой сайта. Остановился на том, что Вы можете увидеть на скриншотах в новостях и на видео ниже.
Также переделал дизайн профиля пользователя - теперь он не так похож на дизайн ВК :) (а то с синим заголовком сходство слишком очевидное было :)
Ну и самое главное в этом пункте - сделал темную тему.
2. Переделал "прочие уведомления" (колокольчик).
Где-то в самом начале этого блога я писал о том, что переделал прочие уведомления, а также уведомления о вопросах-ответах-комментах. Но с тех пор концепция сильно поменялась. На текущем сайте были переделаны уведомления блогов и прочие уведомления. Уведомления блогов были перенесены и на новый движок ранее, сейчас я перенёс и колокольчик с текущего сайта.
Внешне эти уведомления не изменились (с прошлого их описания)
3. Пока делал уведомления столкнулся с неприятной штукой...
Вот представьте, открываете уведомления, у вас их там 30 штук, прокручиваете ниже - их ещё 30 подгружается, и ещё и ещё... Новые уведомления добавляются в список, их становится всё больше и больше. React часто "перерисовывает" страницу. У него есть свои способы оптимизации, что не перерисовывать то, что не менялось, но в этом случае ваш браузер начинает сильно напрягаться... И чем больше список уведомлений, тем сильней напрягается браузер.
На компе, после пары сотен загруженных уведомлений становился заметен лаг при прокрутки, телефон же вообще начинал ощутимо греться...
Ну а помимо уведомлений есть ещё списки вопросов, ответов, комментов пользователя (где тоже может быть несколько сот или даже тысяч объектов), а блоги я вообще хочу в бесконечную ленту превратить - вся их суть в прокрутки потока постов...
Эта проблема даже для текущего сайта актуальна - попробуйте зайти в вопросы к какому ни будь Дедушке или в блог "Музыкальный полигон" и покрутить страницу вниз...
Решение проблемы есть, называется windowing - суть его в том, чтобы отображать только то, что вы видите. То, что не видите - не отображать. Инструменты для React тоже нашлись и даже заработали после недели танцев с бубном :)
Теперь те же уведомления можно крутить быстро :)
4. Раз уж о музыкальном полигоне сказал - Яндекс музыка это довольно больная тема. Когда на странице несколько встроенных объектов музыки всё лагать начинает. YouTube в текущей версии сайта так не встраивается - вместо видео встраивается картинка, при нажатии на неё открывается блок с самим видео.
Решил, что и Яндекс музыку нужно встраивать по такому же принципу. Есть некий блок-заглушка (который не грузит систему), при нажатии на него появляется сама встроенная песня.
Youtube оставил по такому же принципу, только видео остаётся на странице, а не всплывает поверх неё, как на текущей версии.
5. Начал делать действия для постов - "удалить", "пожаловаться", "редактировать", "подписаться"/"отписаться". Пока это просто элементы интерфейса, действий они не выполняют.
По поводу "пожаловаться" - давно уже думаю, что модерацию нужно в корне менять. Дать пользователям больше свободы (у нас тут не институт благородных девиц как ни как, да и вообще "в интернете могут послать на йух", и это вполне нормально). Не нужно звать модератора, когда Вы можете обойтись без него (а уж тем более от него что-то требовать, как будто он Вам чем-то обязан). Эту идею я уже пытался донести в новостях, но безрезультатно.
Кто-то пришёл к Вам в вопрос и нахамил? Удалите его ответ, а его добавьте в чс. Всем проще будет, и Вам в первую очередь. Модератор должен в первую очередь следить за вопросами. Ну а если приспичило - всегда можно пойти в профиль и отправить жалобу оттуда (с указанием причины).
В общем первый шаг в этом направлении сделан - теперь нельзя жаловаться на посты, которые Вы можете удалить сами. При попытки пожаловаться будет напоминание, что Вы можете удалить этот пост самостоятельно...
Ну а в дальнейшем планирую сделать обязательным указание причины жалобы, а также причины удаления для модератора.
6. Личка - с ней промучился кажется недели 2, не меньше... Зато теперь на одну сложную задачу меньше :)
Личку сделал с применением вебсокетов, это значит, что доставка сообщения будет мгновенной, реакция на прочтение тоже. Ну и кроме этого реализовал статус "печатает" (это всё демонстрирую в видео - следите за моей мышкой :) ). В общем надеюсь личика будет более адекватной и удобной, чем сейчас, и возможно в будущем реализую функционал групповых чатов (что уже давно порываюсь сделать).
На видео 2 окна 2х "собеседников" (слева я, справа не знаю кто :) )
7. Ну а ещё реализовал реакцию на статусы "Забанен" и "Удалён". Ну и возможность удалить свой профиль. Тут ничего нового, просто немного по-другому выглядит :)
Пока на этом всё. Впереди ещё много дел, но конец очередного этапа уже где-то близко... кажется...
Спасибо за внимание.