Promovendo chats a conteúdo de primeira classe: toda atividade de mensagens públicas em uma única visualização

Desde a adição do excelente recurso de Chat ao Discourse, há alguns anos, tenho desejado uma melhor integração entre a atividade que ocorre ali e as funcionalidades principais do Fórum. Agora que os agentes de codificação com IA são tão poderosos, estou começando a experimentar como isso poderia funcionar. Um conceito inicial:

O que você está vendo é uma visão que inclui Tópicos da Categoria atual (“This is a top-level category test”), Subcategorias como “Programming” e Canais de Chat, todos ordenados pelo que foi atualizado mais recentemente. Para Subcategorias e Chats, é mostrada uma pequena prévia da última mensagem; para Tópicos, apenas o Badge da Categoria (ainda não fiz com que o badge da categoria atual não apareça — ainda está em andamento). As Subcategorias podem ser incluídas como uma única linha, como aqui, ou como a visualização plana “mais recentes” existente no Discourse, que mostra todos os Tópicos incluindo Subcategorias, com Badges de Categoria. Mas estou mostrando assim porque me parece inovador. Diferente da visualização de Categorias do Discourse, aqui tudo é intercalado e ordenado por recência. O modo alfabético coloca as Subcategorias no topo e ordena o restante alfabeticamente.

Ainda estou descobrindo a melhor forma de comunicar o contexto de cada atualização/linha e, por exemplo, não tenho certeza se os tópicos também deveriam ser explicitamente rotulados como tal. Mas espero que fique legível depois de olhar por um minuto, e há muito espaço e tempo para melhorias.

Então, por que fazer isso? Bem, os Chats agora são muito completos e capazes, incluindo Threads (adoro isso!) e uma boa interação com o sistema do Fórum (responder em um Tópico). Mas, em termos da experiência padrão do Discourse e até mesmo do que é possível alcançar após uma customização pesada da barra lateral, o Chat ainda parece secundário, no melhor dos casos. É difícil de encontrar para novos usuários, e interagir com os Chats e receber atualizações deles é menos óbvio e menos bem suportado do que o conteúdo do fórum.

Claro, entendo que o Discourse é, antes de tudo, um fórum (fórumo? desculpe, não consegui resistir :smile:). Mas agora ele possui um recurso de Chat robusto o suficiente para ser usado como pelo menos um método de interação equivalente, senão até primário. O extenso sistema de gerenciamento de usuários, grupos e permissões, autenticação robusta, plugin de eventos e muito mais são todos altamente úteis para uma comunidade centrada no Chat. E não tenho conhecimento de nenhuma outra plataforma que ofereça todas essas funcionalidades úteis em um sistema de Chat exclusivo, fácil de auto-hospedar e de código aberto, quanto mais uma que incorpore tanto Chat quanto Fórum.

Na minha opinião, o que realmente impede um melhor equilíbrio aqui e permite que construtores de comunidades escolham a proeminência de diferentes superfícies de interação é a UI e a UX. Uma das coisas que parece mais importante para mim nesse aspecto é permitir que os usuários vejam conteúdo atualizado de todo o sistema, independentemente do contexto (obviamente com filtragem opcional). Melhorias na barra lateral provavelmente também serão necessárias para fazer tudo isso funcionar da melhor forma possível. Mas, por enquanto, os experimentos mais interessantes para mim são como podemos ver todas as atualizações de todo o sistema da maneira mais fácil possível, mantendo a compreensão do contexto dessa atualização, sem tornar nenhuma delas mais “importante” do que as outras.

Tenho curiosidade se alguém mais acha essa ideia promissora! Mesmo que o conceito atual que estou mostrando aqui não seja, adoraria ouvir suas opiniões, críticas, alternativas, etc.

4 curtidas

Aqui está um vídeo rápido mostrando como essa visualização funciona atualmente:

A propósito, ao refletir, percebo que talvez esta seja a categoria errada. Mas é um pouco nebuloso, porque uma grande parte do motivo pelo qual estou fazendo isso é apenas gerar ideias e discussões sobre como o Chat e o Fórum podem ser mais equilibrados no Discourse no futuro. Isso pode se tornar um Plugin, com certeza, mas esse não é o ponto principal. Estou mais interessado na discussão conceitual do que no contexto específico do plugin. Mas, obviamente, se parecer que se encaixa melhor em outro lugar, eu entendo.

2 curtidas

Isso é interessante. Estou curioso para ver isso em ação com mais detalhes, ou seja, como é navegar por cada canal de chat ou tópico.

Como observação lateral, estou um pouco confuso com a inclusão de categorias na lista. Não consigo entender bem uma lista que tenha categorias/tópicos/canais de chat. Os dois últimos fazem sentido, mas não vejo as categorias como parte do mesmo tipo de conteúdo.

1 curtida

Obrigado por dar uma olhada! A navegação nelas é basicamente a mesma do Discourse padrão. Os tópicos abrem exatamente como numa lista de tópicos comum. Pessoalmente, gostaria que os chats abrissem em tela cheia por padrão a partir dessa visualização; parece-me mais lógico, mas atualmente eles abrem conforme seu último estado usado (expandido ou pop-up).

Compreendo perfeitamente a perspectiva de que as categorias (especificamente as subcategorias, neste caso) não são do mesmo tipo de conteúdo e não parecem se encaixar com o restante. Minha ideia era que isso funcione de forma muito semelhante à opção atual “Mostrar lista de subcategorias acima dos tópicos nesta categoria” para Categorias, que sempre gostei, pois também acho que as subcategorias costumam ser menos visíveis do que o desejável em muitos casos. A ordenação por atividade (opcionalmente) apenas faz com que, para mim, tudo pareça mais útil e atual.

Dito isso, também é minha intenção que isso seja totalmente configurável. A ideia é que você possa compor qualquer número de “visualizações” que incluam ou não tipos de “conteúdo”/estrutura. No momento, isso se baseia na hierarquia atual, então você tem tudo que está dentro de uma determinada Categoria, incluindo tópicos, subcategorias e canais de chat. Você poderá ativar/desativar qualquer um desses itens em uma visualização específica. A capacidade de compor visualizações totalmente fora das preocupações hierárquicas também pode ser interessante, por exemplo, uma visualização que contenha tópicos, categorias/subcategorias e chats de qualquer lugar da instância do Discourse.

Acho que tudo isso provavelmente é mais confuso se você está acostumado e confortável com a forma como o Discourse organiza as coisas. Muitos de nós estamos. O desafio com esse tipo de experimento em um espaço como este é que eles quase inerentemente parecerão estranhos para o público aqui. :smile: Mas, muitas vezes, quem é novo em um espaço de discussão se importa menos com a hierarquia do que com a recência. Mais importante ainda, mesmo que eles queiram ver apenas o conteúdo de uma determinada Categoria, os canais de chat são essencialmente invisíveis dentro da categoria no momento! Para mim, isso parece um grave erro de usabilidade/descoberta. Meu objetivo era resolver esse problema e, no caminho, decidi tornar o sistema mais flexível e inclusivo. Mas a intenção central é promover o chat a “conteúdo de primeira classe”.

Obrigado novamente pelo feedback. Estou curioso para saber se algo do que foi dito acima ajudou a tornar tudo mais claro e/ou parecer mais útil!

Vou tentar postar uma demonstração em vídeo mais completa conforme o trabalho avança. É um projeto de segunda ordem, mas o feedback certamente me incentivará a continuar. :slightly_smiling_face:

3 curtidas

Sim, 100%.

Você certamente está no caminho certo aqui. Estou curioso para ver isso em ação e, idealmente, testá-lo em algum lugar. Continue postando, acho que essa é uma ideia fascinante, e você tem toda a razão ao dizer que isso ajuda na descoberta do chat. A questão da categoria da minha parte pode ficar de lado, estou ansioso pela próxima iteração!