Isolamento por categoria

Como acompanhamento, veja como imagino que melhor atenderei às suas necessidades com os recursos prontos do Discourse. Pode não ser exatamente o que você tem em mente, mas acho que vale a pena considerar como ponto de partida para discussão.

Primeiro, estou fazendo algumas suposições, que podem ou não ser válidas. Por favor, me diga onde estou errando:

  1. Haverá muitos cursos (dezenas, possivelmente centenas)
  2. A configuração dos cursos ocorrerá periodicamente, em lotes consideráveis, no início de cada semestre (2-4 vezes por ano)
  3. Os cursos terão um fim de vida
  4. As pessoas que gerenciam cursos precisam ter alguma capacidade de configurá-los por conta própria
  5. As pessoas que gerenciam cursos terão pouca ou nenhuma experiência em gerenciar um site Discourse.
  6. As pessoas que gerenciam cursos realmente só precisam ver os seus. Elas podem querer ver outros ocasionalmente como exemplos, mas não precisam de participação contínua neles.
  7. ^ o mesmo para as pessoas que fazem os cursos
  8. Existe uma equipe muito pequena gerenciando o sistema como um todo
  9. Os cursos não precisam realmente de subcategorias; usar tags para organizar o conteúdo dentro dos cursos seria suficiente

Considerando que essas premissas estejam próximas, aqui está o que eu sugeriria, primeiro em um nível geral:

  1. Crie um pequeno número de categorias de nível superior: uma para “Cursos Atuais”, uma para “Cursos Passados”, uma para “Cursos Futuros” e uma ou mais para coisas mais gerais sobre o próprio sistema (por exemplo, como usar o site)
  2. Defina o estilo da página inicial como “caixas com categorias” para que elas sejam exibidas de forma proeminente
  3. Use subcategorias para cada curso
  4. Crie-as em “Cursos Futuros”
  5. Mova-as para “Cursos Atuais” quando o semestre começar
  6. Quando um curso for concluído, mova-o de “Cursos Atuais” para “Cursos Passados”
  7. Controle o acesso aos Cursos usando Grupos (mais detalhes abaixo)

Controle de acesso:

  1. Para cada curso, crie um conjunto de grupos a seguir, por exemplo: foo_interessado, foo_inscrito, foo_admin
  2. Crie dois grupos adicionais: “navegar_cursos” e “navegar_cursos_passados”
  3. Defina as categorias em “Cursos Futuros” e “Cursos Atuais” para serem acessíveis apenas para pessoas nos grupos do curso específico e pessoas no grupo “navegar_cursos”.
  4. Defina as categorias em “Cursos Passados” para serem acessíveis apenas para pessoas nos grupos do curso específico e pessoas no grupo “navegar_cursos_passados”.

Experiência do usuário para grupos e cursos

  1. Tenha um tópico fixado na categoria de nível superior para “Cursos Futuros” que explique como navegar pelos cursos, com um meio fácil para as pessoas entrarem no grupo “navegar_cursos”.
  2. ^ o mesmo para “Cursos Atuais”
  3. ^ o mesmo para “Cursos Passados”

Para cursos individuais, tenha um tópico fixado na categoria explicando como ingressar no Curso:

  1. Entre no grupo “foo_interessado” e/ou “foo_inscrito”
  2. Adicione o curso à sua barra lateral

A administração será um pouco trabalhosa no início, pois para cada novo curso alguém com privilégios apropriados precisará:

  1. Criar a categoria
  2. Criar os grupos
  3. Criar o tópico fixado
  4. Adicionar as pessoas ao grupo _admins
  5. Fornecer a documentação necessária para gerenciar seu próprio curso

Parte disso poderia ser automatizada com algumas ferramentas leves. Dependendo de quem é a equipe principal de administração, pode fazer sentido começar com algo fora da banda que apenas acesse a API. Ou talvez você precise de algo mais baseado em UI que seja integrado ao Discourse como um componente de tema ou plugin. Mas eu sugiro começar de forma enxuta aqui, e focar primeiro em definir um processo que funcione, e depois projetar as ferramentas em torno disso.

A escalabilidade de categorias é uma preocupação possível aqui. O Discourse tem algumas arestas de desempenho e UX quando o número de categorias fica muito grande (centenas ou milhares). Usuários com acesso a mais categorias sentirão o impacto disso, enquanto aqueles com acesso limitado não sentirão. Essa é parte da motivação para limitar o acesso às categorias, como descrevi.

Estou muito interessado em ouvir todos os comentários ou perguntas que você tiver sobre o acima.

1 curtida