Você provavelmente se deparou com esse elemento de interface. Nos pontos de venda, nas plataformas de discussão, mas em quase todos os lugares, esse elemento é encontrado. Mesmo aqui, no cubo, cubos em forma de árvore.
Trocas freelancers não
são excepção. Os pedidos precisam ser agrupados de alguma forma, para que os executantes não visualizem um enorme feed de pedidos para outras especialidades.

O mecanismo é maravilhoso, se não for um "mas". Para um usuário que encontra essa árvore pela primeira vez ou endereça uma parte desconhecida dessa árvore, isso não é apenas uma árvore, é uma floresta escura inteira. O motivo é simples - a árvore pode ser construída de acordo com princípios diferentes, a colocação dos elementos nessa estrutura geralmente corresponde a alguma lógica, mas o usuário pode não entender por qual princípio tudo isso está organizado, e para descobrir isso, você precisa olhar para essa árvore através dos olhos, frequentemente lendo o nome de quase tudo. itens em busca de um adequado.
Sim, o formulário de pesquisa nessas listas alivia o sofrimento, mas não resolve o problema completamente - o nome dos elementos também pode ser diferente, o usuário pode não encontrar algum elemento não porque não está na lista, mas ele assumiu um nome diferente.
Esse problema é expresso em vários graus, dependendo do cenário. Por exemplo, na loja online, não é necessário usar a árvore de categorias, você pode usar a pesquisa. Ou você acessa a página do produto desejado imediatamente a partir do mecanismo de pesquisa e não encontra uma árvore de categorias.
Outra coisa é quando você definitivamente tem que escolher uma categoria. Isso geralmente acontece quando um novo item é adicionado à lista. Ao adicionar mercadorias, artigos, pedidos de troca freelance ou anúncios no quadro on-line. Não há escolha - para o posicionamento, é necessário especificar uma categoria, seção, geralmente não no singular.
Depois que o vício ocorre, o algoritmo para a construção dessa estrutura fica claro, ou o usuário simplesmente se lembra de onde está localizado, o problema segue o caminho. Mas e se isso não acontecer? Por exemplo, a maioria dos usuários é nova e a árvore nunca viu isso?
Enfrentamos esse problema. A maioria dos freelancers se acostuma. Mas os clientes recém-chegados ou que pedem algo novo enfrentam o problema de escolher em pleno crescimento.
Profundidade de aninhamento
O desejo de sistematização é tentador para investir tudo e resolver o problema. Anos de programação também distorcem a mente e colocar uma na outra parece uma boa idéia. Mas lidar com uma árvore assim é mais difícil, mais níveis nela.
Nós decidimos por duas. Por algum tempo, eles tentaram criar um terceiro nível, seu suporte foi até estabelecido no nível do código, mas não havia nada de bom que pudesse ser adicionado lá. Os freelancers que se ofereceram para fazer isso também não ajudaram.
Embora com três níveis, alguns se dão bem:

Número de itens
Primeiro, tentamos tornar a árvore o mais compacta possível e não aumentar o número de elementos para facilitar a pesquisa. Do outro lado desta solução, há uma diminuição na qualidade da filtragem.
O contratado deseja ser mais preciso, mas isso não apenas aumentará a carga no cliente, mas também aumentará o número de erros na escolha de uma categoria. Como resultado, o contratado corre o risco de não ver o pedido que mais lhe convém e o cliente não recebe ofertas relevantes.
Cortando com força. É necessário preservar a lógica, combinar o que não requer uma categoria separada. A redação também é muito importante.
É claro que reduzir o número de elementos simplifica a pesquisa e reduz a escala do problema, mas não a resolve completamente.
Mas é melhor não fazer isso:

Organização da lista
Inicialmente, ao escolher uma categoria na forma de adição, tínhamos uma longa lista de todas as categorias, onde na categoria do primeiro nível havia todas as categorias do segundo nível. A lista era longa e era difícil pesquisá-la. Ah, sim, havia duas listas desse tipo - a principal e a categoria adicional.
A abordagem antiga permaneceu no fórum, existem poucas seções:

Começamos a colocar duas listas suspensas, a primeira das quais contém categorias do primeiro nível e, quando você seleciona categorias na segunda lista, as subcategorias são carregadas.

Também é importante classificar as categorias em ordem alfabética. Infelizmente, isso não é feito por todos. Em uma lista não classificada, você pode encontrar a correta apenas lendo cada linha. E isso é dor.
As categorias que contêm várias entidades foram nomeadas através de uma barra.
Foi: Áudio / Vídeo / Multimídia, tornou-se: Áudio, Vídeo e Multimídia. Dói levemente o olho. Alguém mais diz "multimídia"?
O nome da nova categoria com uma letra maiúscula. “Poligrafia e Identidade” com letras grandes e em “Design de Sites” a segunda palavra com uma pequena. Tudo isso, em teoria, deve facilitar um pouco a navegação nessa lista.
À esquerda está a aparência das categorias, à direita, a aparência. Os números tiveram que ser devolvidos a pedido dos trabalhadores.

Nenhuma árvore - não há problema! A primeira abordagem para o shell
Se o cliente não tiver a opção de escolher uma categoria, não forçá-lo a procurar a correta, então não há problema, certo? Então nós fizemos. Eles deixaram de exigir uma categoria e, por padrão, o moderador indicou a categoria ao verificar o pedido.
Essa decisão torna o tempo de moderação mais crítico, porque o pedido será publicado somente após a verificação e a especificação da categoria, e isso leva tempo. Let e pequeno, mas, no entanto, é melhor não forçar o usuário a esperar.
Há um problema com isso - ainda não podemos fornecer moderação 24 horas por dia, 7 dias por semana, e tivemos que fazer algo a respeito. Nos fins de semana e à noite, o cliente ainda precisava especificar a categoria de forma independente. Em seguida, poderíamos ignorar automaticamente os pedidos de clientes confiáveis e verificá-los após a publicação.
Outro obstáculo - moderadores pessoas e deixá-lo raramente, mas ainda cometer erros.
Glória aos robôs!

No momento, estamos executando um sistema para determinar automaticamente a categoria de acordo com o conteúdo do pedido.
Novamente, não forçamos o cliente a lidar com a árvore de categorias, gastar tempo e nervosismo nela. Tudo o que é exigido dele é o título e a descrição usuais da tarefa. Esses são todos os campos obrigatórios que permaneceram no formulário de publicação do pedido.
Como nem sempre é possível determinar com certeza onde o pedido está relacionado, em caso de falha, sugerimos que o cliente indique a categoria por conta própria. E, claro, se o cliente quer com as mãos, você pode com as mãos.
Os lucros são óbvios - o novo cliente não precisa lidar com a árvore, os freelancers obtêm as categorias usuais. Os moderadores não são carregados com a definição do pedido, mas em breve verificarão os pedidos após o fato. Os pedidos proibidos também serão determinados automaticamente. Na maioria dos casos, o pedido será publicado instantaneamente.
Das deficiências - até agora, tudo isso foi executado e, em alguns casos, pode não funcionar corretamente. Infelizmente, mesmo uma pessoa nem sempre é capaz de determinar em qual categoria definir uma ordem. A descrição pode conter definições adequadas para várias categorias, ou não adequadas.
Ainda não é possível excluir completamente uma pessoa da cadeia, é preciso cuidar dela, mas uma coisa é colocar todo o trabalho nela (cliente ou moderador) e outra quando os robôs trabalham duro, e não a pessoa
