@david talvez desativemos todos os cliques enquanto a nova página está carregando e estamos exibindo o conteúdo antigo? Parece um caso de borda, mas razoável
@awesomerobot você está satisfeito com a espessura do controle deslizante no desktop? No meu departamento, a decisão ainda não foi tomada; vamos conviver com isso por alguns dias. No mobile, sinto que temos o equilíbrio certo.
Acho que depende do que você está buscando. Se um dos seus principais objetivos é “funcionar (quase) idêntico ao resto da internet”, talvez você não queira fazer isso. Em sites “comuns”, se eu clicar muito rapidamente em um segundo link logo após clicar no primeiro, o conteúdo do segundo link será carregado.
Gosto muito dessa mudança, especialmente com os ajustes posteriores… Gosto tanto que estou ansioso para que ela seja lançada em uma versão beta para obter ainda mais feedback.
Parece OK para mim na espessura atual. Acho que, se recebermos reclamações de que não é perceptível o suficiente, talvez possamos aumentá-la em mais 1px. Mal posso esperar para vê-la no núcleo!
Parece ótimo! Ainda há alguns bugs de renderização para resolver (por exemplo, este aqui), mas assim que eu os corrigir, poderíamos adicioná-lo ao núcleo. Acredito que ainda prefira testá-lo por um pouco mais de tempo no Meta, no entanto. A implementação atual está ativa há apenas 24 horas.
Dando uma olhada em algumas outras PWAs populares:
Serviço
Mudança imediata da página inteira
Slider
Spinner
Placeholder personalizado
Facebook
Twitter
LinkedIn
(em algumas páginas)
YouTube
GitHub
Discourse antigo
Discourse com Slider
Então, essa mudança nos deixaria mais parecidos com o YouTube e o GitHub, que, na minha opinião, parecem mais sites do que aplicativos. É essa a direção que queremos seguir?
Acho que sim, isso se alinha com uma filosofia de tema padrão minimalista, semelhante à web. Podemos sempre fornecer um componente de tema para o spinner ou um marcador de posição personalizado se tivermos vontade de experimentar.
Gosto muito de que essa mudança reduza a quantidade de pixels que mudam na tela.
Acho que o Gmail também usa um padrão semelhante (ele renderiza o carregamento em um quadrado e depois alterna o conteúdo).
Nosso slider está configurado da seguinte forma (abaixo). É uma questão de gosto, mas acho que 4px no mobile fica melhor do que 3px; embora 3px seja aceitável e certamente OK. No entanto, em telas grandes de desktop, ele parece melhor, subjetivamente falando, com 6px; mas eu pessoalmente prefiro 7px, porque quero que as pessoas vejam o slider e o progresso relativo ao carregar a página, independentemente das cores de fundo do tema. Porém, se reduzirmos para 6px em telas grandes de desktop, também está muito OK. Menos de 6px em telas grandes de desktop o torna quase imperceptível em monitores de 27 e 34 polegadas (contra algumas cores de fundo do tema); e como o slider indica “carregando”, na minha opinião, é melhor pecar pelo lado de ser mais perceptível; mas, novamente, é muito subjetivo, claro.
height: 4px;
@media only screen and (min-width: 960px) {
height: 7px;
}
Adoro este componente, mas encontrei um bug (achei que houvesse um conflito no meu tema, mas posso vê-lo aqui também). Ao clicar no elemento .navigation-toogle, o menu suspenso permanece aberto:
Obrigado @cosdesign e @seanblue — ainda está na minha lista para corrigir. Comecei uma lista de ‘problemas conhecidos’ no OP aqui para que possamos acompanhar o que ainda está pendente.
Adoro muito este componente, tive que instalá-lo também no meu fórum Discourse. Obrigado!
Uma sugestão: seria possível exibir um esqueleto enquanto a página está carregando? Em casos onde a página pode demorar um pouco para carregar, isso ajuda a indicar que o clique foi registrado. É apenas um detalhe pequeno que notei: às vezes, clico duas vezes no título de um tópico porque não vi a barra de carregamento de imediato, ao passo que o spinner aparecia diretamente.
Foi um compromisso que fizemos aqui: optamos por nunca alterar o que está na tela a menos que tenhamos passado 2 segundos sem ter conteúdo para mostrar.
Acho que poderíamos fornecer algum tipo de interruptor para reduzir esses 2 segundos para 1, mas sinto que encontramos o equilíbrio certo aqui.
Acabei de voltar após vários dias ausente e a primeira coisa que notei foi como tudo parece mais lento aqui agora.
Percebo que o Google Groups introduziu algo semelhante, mas não acho que precisemos imitar o que eles estão fazendo. O spinner era uma opção muito mais adequada para o Discourse, na minha opinião; era ágil e até ajudou a dissipar o mito de que aplicações Ruby são sempre lentas. Eu adorava e amava o quão rápido o Discourse parecia. Infelizmente, sinto que esse slider é um grande retrocesso (peço desculpas a todos que trabalharam nisso; sei que provavelmente não é isso que querem ouvir, mas acho que todos queremos o melhor para o Discourse, então espero que não se importem com minha opinião sobre isso).
Quando lançarmos isso no núcleo, forneceremos um componente que permite o modo de transição antigo.
Ouvimos seu feedback, mas você está em uma minoria extrema; a maioria dos usuários prefere o novo estilo de transição. O novo estilo significa que menos coisas mudam na tela.
Antigo
Clique → tela branca → conteúdo
Novo
Clique → conteúdo
Entendo que algumas pessoas possam amar uma tela branca com um carregador, mas essa é uma visão minoritária.
Não se trata de amar ou não uma tela branca, Sam, mas sim da sensação de velocidade.
Na verdade, sempre achei que a velocidade (e a sensação) do Discourse fosse uma de suas características mais impressionantes, e sei que até mesmo aqueles que eram bastante contrários ao Ruby ficaram impressionados com o que você fez com o Discourse.
Também acho que essa sensação de velocidade é mais importante agora do que nunca, porque estamos constantemente competindo com grandes sites como Twitter e Discord, e acredito que até mesmo uma leve sensação de lentidão pode ter impacto — mesmo que seja subconsciente.
É ótimo que haverá um componente para o modo de transição antigo, mas minha preocupação é que ele possa adicionar uma sobrecarga que leve a uma lentidão (mesmo que pequena), anulando assim os benefícios da maneira antiga/spinner. Se não for esse o caso, ficarei feliz com isso… mas ainda acho que essa mudança será prejudicial para todos os outros sites do Discourse por aí.
Concordo plenamente com a percepção sobre a velocidade.
Se o spinner permanecesse na tela por muito tempo, isso indicaria um problema (embora o spinner não fosse o problema em si) e talvez fosse menos informativo do que uma barra de progresso.
As barras de progresso indicam lentidão subjacente. Elas me lembram aquelas barras de progresso antigas do Windows (tempo restante estimado: 6 dias e 23 horas). Quando as vejo, penso que deve haver um problema de velocidade e que elas estão ali para reduzir minha impaciência. Esta sempre parece pausar ligeiramente em torno de 80%, o que me faz pensar que algo deu errado, toda vez.
Se o fórum for rápido, a barra de progresso não é uma boa ideia.
Quanto mais uso o Meta, mais penso que prefiro o antigo spinner. O slider simplesmente não é suficientemente perceptível, o que faz o site parecer não responsivo.