Nowa funkcjonalność 4p – dynamiczne ładowanie postów, komentarzy i wpisów

2

Rozmyślałem dziś sobie podczas podróży o 4p i wpadł mi do głowy pewien pomysł. Prywatne wiadomości zostały niedawno dostosowane do bycia więcej "live-friendly"; działają teraz jak czat – bez przeładowania strony, dynamicznie. A gdyby tak dostosować całe forum pod tym względem?

Idea

Już tłumaczę, jak ja to widzę. Chodzi mi o to, że zarówno posty, jak i komentarze na 4p mogłyby być ładowane dynamicznie. Nie usuwałoby to obecnej funkcjonalności ładowania ich po odświeżeniu strony – spokojnie. Byłby to natomiast dodatkowy sposób na ich ładowanie bez konieczności odświeżania danej strony.

Wyglądałoby to tak, że na górze lub na dole listy postów/wpisów/komentarzy pojawiałby się pasek z informacją, że są nowe posty/wpisy/komentarze. Tekst byłby interaktywny – po wciśnięciu go pasek z informacją znikałby, a w jego miejscu pojawiałyby się posty/wpisy/komentarze.

Tu mała uwaga: napisałem o wciśnięciu, ale możliwe jest jeszcze, żeby działo się to automatycznie, w czasie rzeczywistym – np. tak, jak ładują się nowe pytania na StackExchange na tej stronie: https://stackexchange.com/questions?tab=realtime Jednak to już w mojej ocenie duża ingerencja w UI i dlatego nie proponuję tej wersji. Ale może inni będą chcieć?

Całe dostosowywanie tyczyłoby się jedynie komentarzy oraz postów/wpisów. Na 4p mamy trzy – ja wiem – "główne moduły", które zawierają komentarze lub posty: (1) forum – posty i komentarze, (2) mikroblogi – wpisy i komentarze oraz (3) Kompendium – komentarze.

Tu mała uwaga: generalnie wolałbym, żeby całe forum było dostosowane pod tym względem jednolicie i spójnie – czyli również oferty pracy, pytania i odpowiedzi do nich oraz komentarze do artykułów w Kompendium. Jednak rozumiem, że może to być trudne; więc prośba do @Adam Boduch: jeśli da się to zrobić również dla tych dodatkowych miejsc, to niech to będzie zrobione. Jeśli nie da się, to w porządku.

Szczegóły

W szczegółach wyglądałoby to tak (będę podawać przykłady dla przeglądarki desktopowej):

  1. Moduł forum – dla każdej karty z otwartym wątkiem (niezależnie, czy jest otwarty w kilku kartach, czy nie):
  • jeśli w tym wątku dojdą nowe posty, to na dole listy postów będzie pojawiać się informacja o nowych postach; na przykład 1 nowy post lub 5 nowych postów;
  • jeśli w którymś z postów tego wątku dojdą nowe komentarze, to na dole listy komentarzy (niezależnie, czy w wersji zwiniętej, czy rozwiniętej) będzie pojawiać się informacja o nowych komentarzach; na przykład 1 nowy komentarz lub 5 nowych komentarzy.
  1. Moduł mikroblogów – dla każdej karty z otwartą stroną z mikroblogami lub stroną główną (tylko jeśli się da na stronie głównej; niezależnie, czy te strony są otwarte w kilku kartach, czy nie):
  • jeśli dojdą nowe wpisy, to na górze listy wpisów (raczej nie na dole?) będzie pojawiać się informacja o nowych wpisach; na przykład 1 nowy wpis lub 5 nowych wpisów;
  • jeśli pod którymś wpisem dojdą nowe komentarze, to na dole listy komentarzy (niezależnie, czy w wersji zwiniętej, czy rozwiniętej) będzie pojawiać się informacja o nowych komentarzach; taka sama, jak dla komentarzy pod postami na forum.
  1. Moduł Kompendium – dla każdej karty z otwartym artykułem (niezależnie, czy jest otwarty w kilku kartach, czy nie):
  • jeśli dojdą nowe komentarze, to na dole listy komentarzy (one chyba się nie zwijają? czy też zwijają?) będzie pojawiać się informacja o nowych komentarzach; taka sama, jak dla komentarzy pod postami oraz pod wpisami na mikroblogu.

Moim zdaniem dla dobrego UX jest istotne, żeby informacja o nowych postach oraz komentarzach (zarówno na forum, jak i na mikroblogu) pojawiała się na dole listy postów/komentarzy; z drugiej strony informacja o nowych wpisach na mikroblogu powinna pojawiać się na górze listy. Dlaczego tak? Ponieważ powinna ona pojawiać się po tej "stronie" listy, po której pojawiają się nowe komentarze. Jeżeli więc nowe posty/komentarze pojawiają się zawsze na dole listy, to informacja o nich powinna pojawiać się również na dole. Z drugiej strony, jeżeli nowe wpisy pojawiają się zawsze na górze listy, to informacja o nich powinna pojawiać się również na górze. Dzięki temu będzie bardziej intuicyjnie – przynajmniej moim zdaniem.

Przykłady podobnej funkcjonalności na innych portalach?

UPDATE:

Zauważyłem podobną funkcjonalność choćby na stronie https://unix.stackexchange.com/questions/ (nie wiem, czy inne strony StackExchange to mają).

Czy to jest rzeczywiście potrzebne?

Nie mam przykładu, który by bezapelacyjnie potwierdzał, że to jest potrzebne obecnie i obecnym użytkownikom 4p. Niemniej uważam, że taka funkcjonalność dawałaby między innymi następujące korzyści:

  1. wprowadzałaby ułatwienie dla tych, którzy nie chcą musieć odświeżać strony po otrzymaniu powiadomienia, jeśli akurat prowadzą dyskusję w danym wątku/pod danym postem/pod danym wpisem na mikroblogu;
  2. byłaby krokiem ku większej interaktywności portalu, a interaktywność – moim zdaniem – jest przyszłościowa w internecie.

Być może też taka funkcjonalność zmniejszałaby rozmiar odpowiedzi od serwera. Nie mogę tego jednak stwierdzić z pewnością, gdyż nie jestem pewien, jak konkretnie działa cache u nas. Być może obecnie, dzięki cache, odpowiedzi mają tak mały rozmiar, że zysk byłby żaden.

Zaraz, zaraz, czy to nie było już proponowane u nas…

Jeśli już wątek o tym był, prosiłbym o link.


UPDATE2: Nie napisałem nic o powiadomieniach. Powiadomienia otrzymywałoby się tak samo jak obecnie. Natomiast po naciśnięciu interaktywnego tekstu o nowych postach/wpisach/komentarzach wszystkie powiadomienia dotyczące danej grupy postów/komentarzy/wpisów byłyby oznaczane jako przeczytane.

1

Ciekawy pomysł. Czasem siedzi się w jednym wątku, pisze i czeka na reakcję OP (czyli odpowiedź) – fajnie by było, gdyby posty ”same się” pojawiały, a także aby było wiadomo że ktoś zaraz coś napisze, mały napis (tak jak w przypadku peemek), że ”ten i ten pisze posta…” (komentarze w sumie też). :)

0

@furious programming:

(…) a także aby było wiadomo że ktoś zaraz coś napisze, mały napis (tak jak w przypadku peemek), że ”ten i ten pisze posta…” (komentarze w sumie też). :)

No nie… o tym nie pomyślałem… to by dopiero było "na żywo". :D Choć, oczywiście, rozwiązanie godne rozpatrzenia.

Jeśli chodzi o moje zdanie, to ja bym wolał aż w taką dynamiczność nie iść – przynajmniej na razie. Może jakiś czas po wdrożeniu mojego pomysłu… jak użytkownicy przyzwyczailiby się.


UPDATE: W sumie mnie się ten pomysł podoba; nie przeszkadzałaby mi informacja, że ktoś pisze… choć w sumie nie wiem. Musiałaby być jakoś sprytnie umieszczona – żeby nie robić chaosu.


UPDATE2:

Ale zauważ, @furious programming, że to byłoby problematyczne. W niektórych miejscach ruch jest mały, przyznaję – ale jak w innych naraz pisałoby kilka osób? To trzeba by jakoś te powiadomienia wyświetlać jedne zamiast innych…

W sumie – to jest myśl! Jedno wyświetlałoby się przez 2 sekundy. Jeśli nie byłoby innych osób piszących, to byłoby wciąż to samo. A jeśli byłyby, to zmieniałoby się na powiadomienie o innej osobie piszącej. I tak w kółko. I całość zajmowałaby tylko jedną linijkę, więc razem z moim pomysłem (jeśli zostanie wdrożony) te dwa komunikaty zajmowałyby tyko dwie linijki tekstu (plus oczywiście padding i margines).

2

Tak, jest to do zrobienia. Też o tym myślałem. Wymaga to jednak przepisania dużej części kodu (szczególnie front endu), pozbycie się jQuery i zastąpienie Vue.js. Myślę, że prędzej czy później tak właśnie się stanie. Strona główna forum jest już przepisana pod Vue, jak tylko będzie serwer testowy to wystawie do testów.

0

@Adam Boduch: znasz może jakieś inne forum, które działa w taki sposób? Ciekaw jestem czy – jeśli zostanie to zaimplementowane – będzie to unikalna cecha 4p, czy może gdzieś już się taki mechanizm stosuje.

1

Zostało to dziś wdrożone na mikroblogach. Nowe komentarze, edycje komentarzy czy wpisów są prezentowane na żywo, bez konieczności przeładowywania strony.

Mikroblogi to taki poligon doświadczalny przed wdrożeniem tego na forum, gdyż na mikroblogach nie ma kategorii o różnym poziomie dostępu i jest zwyczajnie prościej takie coś zaimplementować.

1

@Adam Boduch: Na stronie głównej forum czy tylko w sekcji mikroblogów?

1

Na mikroblogach - nie na forum.

Na stronie głównej póki co też nie, ale nie ma przeciwwskazań aby zaimplementować jak się spodoba ta funkcjonalność :)

0

Widzę, @Adam Boduch, że wprowadzona jest wersja bardziej ingerująca w UI. Zobaczymy, jak działa. :)

Jak napisałem w komentarzu pod wpisem na mikroblogu dot. tego tematu (tutu), można być zrobić, by po najechaniu myszą obramowanie znikało (tj. by komentarze były oznaczane jako przeczytane). Czy też – tak teraz myślę – nawet jedynie po ruchu myszą; podobnie jest na forum z postami i komentarzami, gdy przechodzi się do nich z powiadomień.


PS. Ale się rozpisałem w pierwszym poście tego wątku – aż mi się samemu nie chce czytać teraz (dla przypomnienia). :P


PS2. Oczywiście zmiana mi się podoba. :) Ale jeszcze jej nie przetestowałem w żadnej "gorącej" dyskusji, więc trudno mi się do niej bardziej emocjonalnie odnieść. (Wątpię, by się to stało na dniach, bo ostatnio mnie tu mało).

0

UPDATE: Kolejna cegiełka została dziś dodana do uczynienia całego portalu 4p dynamicznym: W ten niedzielny poranek mam... :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1