Os desenvolvedores da Web devem continuar gastando esforços aprimorando progressivamente nossos aplicativos da Web com JavaScript, garantindo que os recursos sejam degradados normalmente, garantindo a acessibilidade? Ou devemos dedicar esse tempo a novos recursos ou outras áreas de desenvolvimento?
O subtexto dessa pergunta seria: Quantos de nossos clientes / clientes / usuários utilizam nossos sites ou aplicativos com o JavaScript desativado? Você tem algum projeto com requisitos que exigem especificamente a funcionalidade JavaScript (quase todos os meus) e esses requisitos também exigem degradação graciosa?
Para fazer essa pergunta, puxei programmers.stackexchange.com sem o JavaScript ativado e fui recebido com esta mensagem: "Programadores - o Exchange Exchange funciona melhor com o JavaScript ativado". Foi difícil fazer login, embora o site parecesse geralmente funcionar bem. (Não consegui votar em nenhuma pergunta.)
Eu acho que essa é uma abordagem satisfatória para o desenvolvimento. Imagine o esforço envolvido em fazer com que todos os recursos do site funcionem com HTML antigo simples e lógica do lado do servidor. Por outro lado, pergunto-me quantos usuários foram alienados por essa abordagem.
Todos nós fomos treinados (pelo menos os bons desenvolvedores entre nós) para usar o aprimoramento progressivo e garantir que os recursos dinâmicos de nossos aplicativos Web se degradem normalmente. Esse aprimoramento progressivo está mijando no vento ou alguns de nossos clientes realmente utilizam determinados serviços da Web sem o JavaScript ativado?
fonte
Respostas:
Eu uso o NoScript, mas coloque na lista branca qualquer site que realmente pretenda usar.
fonte
Eu acho que a porcentagem de pessoas sem o JavaScript ativado é insignificante. Mas tenha cuidado com os robôs de mecanismos de pesquisa! Eles geralmente não usam JavaScript, mas você não gostaria que eles pulassem algum conteúdo importante por causa disso, certo?
fonte
Eu sempre navego com o JavaScript ativado e tenho desde o início do navegador da web.
Nunca tive um único problema que valesse a pena degradar minha experiência no navegador. Talvez alguns pop-ups ou outros aborrecimentos, mas os benefícios superam os riscos na minha opinião.
fonte
Ao usar o console no Linux, às vezes uso o Lynx quando uma GUI não está disponível. Que eu saiba, o lynx não tem suporte a JavaScript.
Também usei navegadores móveis mais antigos, com suporte a JavaScript ruim, se houver.
No entanto, nessas circunstâncias, não espero obter total usabilidade do site. Normalmente, estou apenas usando a Internet para procurar algo rapidamente (por exemplo, obter um número de telefone). Portanto, acho que a interface não JavaScript do seu site deve se limitar a uma função de referência passiva. O Stack Exchange é um ótimo exemplo disso, você pode procurar respostas, mas não pode votar. É apenas para ser usado como referência.
fonte
Navego regularmente na Web a partir do navegador do meu smartphone quando não estou em casa ou no escritório. Embora ele suporte (pelo menos um subconjunto de) JavaScript, nem sempre ele é compatível. Eu encontrei muitos sites inutilizáveis porque consomem muitos recursos ou simplesmente travam o navegador.
Prefiro o navegador interno, mas mantenho dois navegadores alternativos, caso um deles faça um trabalho melhor.
fonte
Uma coisa que não foi mencionada nesta discussão é o que acontece se o seu script for interrompido. Em muitos casos, a execução adicional de script na página pode estar desativada, necessitando, portanto, de uma maneira de retornar a uma maneira mais simplista de navegação.
Um script pode ser interrompido por vários motivos, mas os mais óbvios são solicitações incompletas para os arquivos .js, vários complementos que podem alterar o DOM ( AdBlock etc.) ou introduzir objetos que não estão bem espaçados no nome.
Isso não tem nada a ver com pessoas que desabilitam explicitamente o script ou o que seja. Como uma observação lateral, muitos roteadores modernos, software de firewall etc. geralmente possuem um recurso para desativar / filtrar scripts, Flash etc. de sites, portanto, pode até ser configurado em uma camada de rede, deixando o usuário inconsciente disso (pense cafés públicos, escolas ou outros ambientes em que outras pessoas paranóicas configuraram o acesso à Internet).
Esse geralmente é o meu principal argumento para o desenvolvimento de sites que se degradam normalmente, pelo menos com a funcionalidade básica do site (layout e navegação).
fonte
A única coisa para a qual desabilito o JavaScript é testar meu próprio site. No entanto, você pode estar interessado em um estudo realizado pelo Yahoo que descobriu que entre 1 a 2% dos usuários têm o JavaScript desativado. O público do Yahoo é provavelmente uma representação muito boa do usuário médio.
Uma citação-chave do estudo:
fonte
Eu uso o NoScript junto com o AdBlock Plus o tempo todo.
Hoje, a web é muito hostil (JavaScript intrusivo + anúncios irritantes) para ficar desprotegida.
fonte
Obviamente, você está obtendo uma amostra realmente distorcida aqui e é melhor fazer sua própria pesquisa em seu próprio site.
Eu, pessoalmente, uso o NoScript. Raramente reluto em colocar um site na lista de permissões, mas ele parece valer a pena. (Em outras palavras, preciso de um motivo, mas não precisa ser muito convincente.)
fonte
Sim.
Minha navegação se divide em três categorias.
Navegação normal - No Safari ou Chrome (Mac OS X)
- iGoogle, Stack Overflow, alguns blogs
Sites especiais : - Firefox, com sites NoScript, AdBlock Plus e FlashBlock
com JavaScript desnecessariamente pesado. (Alguns sites indianos para filmes / música de Bollywood, se isso for importante. Script desnecessariamente pesado - a página é recarregada a cada 5 minutos)
Navegação móvel:
Eu costumava ter um Nokia 5310. Perdi. Agora eu tenho um Sony Ericsson W700i ainda mais antigo. Navego usando-o quando estou viajando (o Opera Mini é muito bom). Este é o lugar (a ausência de) JavaScript é uma dor. Não quero interagir com o site (principalmente), basta ler. Ainda é impossível visualizar a maioria dos sites .
fonte
Basta ler os programadores pragmáticos "HTML5 e CSS3" . O autor diz que 5% dos usuários têm o JavaScript desativado.
Aqui está sua fonte: números de Índice de Desativado JavaScript da UE e dos EUA + impacto da coleta de dados do Web Analytics .
Parece que a porcentagem também está caindo.
fonte
Costumo instalar o NoScript e apenas sites da lista de permissões confiáveis. Caso contrário, eu uso o "permitir temporariamente" para domínios específicos quando preciso.
Isso é apenas uma boa segurança. Caso contrário, você está permitindo que uma quantidade arbitrária de código seja executada em sua máquina! Mesmo se estiver em área restrita ... sempre há vulnerabilidades.
Além dos meus próprios hábitos, mesmo que a maioria das pessoas navegue com JavaScript, ainda é útil desenvolver sites com aprimoramento progressivo em mente. Se o seu site estiver funcional na linha de base, ele poderá atender o maior público. Isso também significa que você separa seus dados do design visual e da lógica de negócios. De qualquer forma, a maior parte do que você faz com JavaScript no lado do cliente deve ser feito no lado do servidor - fazê-lo no lado do cliente deve ser apenas uma conveniência dada ao usuário do site.
Claro que existem exceções que requerem JavaScript, mas geralmente há uma expectativa envolvida. Por exemplo, há uma expectativa de ativar o JavaScript para o BioLab Disaster , um jogo, mas nenhum para um site como A List Apart , principalmente apenas texto.
Quando estou preenchendo um formulário, deve haver realmente uma expectativa de que o JavaScript esteja ativado para enviar o formulário? Por quê? Para que o código JavaScript possa verificar para garantir que eu não inseri um número em vez de uma letra?
fonte
Javascript está desativado por padrão para nós em uma caixa do Windows Server. Nossa política de TI bloqueia muitos sites, a única maneira de ler algum conteúdo é navegar em um servidor, onde o JS está desativado por padrão.
Embora não seja minha configuração preferida, é o que tenho que fazer às vezes.
fonte
Eu uso o Google Chrome + AdBlock Plus e tenho o JavaScript ativado.
EDIT: Eu uso o NotScript agora. :)
O Chrome ALONE bloqueia quase todos os pop-ups (encontrei apenas um site [Chess.com] que abriu uma vez), e o AdBlock se livra de todos os anúncios, então não tenho problemas com eles.Na IMO, o JavaScript oferece uma "melhor experiência" geral e, desde que você visite sites confiáveis (que não foram invadidos ...), você estará bem. Como desenvolvedores / desenvolvedores de computadores, acredito que devemos ter um "senso da Internet" muito agudo e poder saber se um site pode ser malicioso.fonte
Na minha opinião, a acessibilidade supera quase todo o resto. Os usuários que confiam na tecnologia assistiva sempre devem conseguir a maioria das funcionalidades de um site, mesmo que demore um pouco mais. Não importa quantos por cento dos usuários confiam nele. Estou feliz por ter codificado para um projeto da Web de código aberto em que a acessibilidade é um dos principais focos e, na verdade, aprendo como posso fazer as coisas acontecerem nos dois sentidos - com e sem JavaScript. (E muitas outras coisas relacionadas à acessibilidade, porque o JavaScript ou não é realmente apenas uma pequena parte do problema.)
Existe um questionário interessante com respostas dos usuários do projeto que acabei de mencionar sobre a tecnologia que eles usam aqui . Pode ser do seu interesse.
fonte
Hmm, agora eu me sinto como o Omega Man . :) Aparentemente, sou a última pessoa que realmente desativa o JavaScript (e os cookies) . (A menos que eu precise dele para um site específico, como, por exemplo, Stack Overflow.)
Duvido que eu estou sentindo falta muito - geralmente quando eu não ativar o JavaScript para um site, ele faz algo totalmente inútil, como permitir-me a vomitar toneladas de informações pessoais a estranhos, ou me mostra alguns anúncios móveis - exatamente o que eu queria, algum movimento aleatório na tela enquanto estou tentando me concentrar na leitura de um artigo ...
fonte
Acabei de responder uma pergunta no AskUbuntu.com - tive que (temporariamente - no momento) ativar o JavaScript no site. Uso NoScript e habilito o JavaScript para um site quando penso que é claro - mas não até. Por padrão, o JavaScript está desativado para sites que eu não visitei antes.
fonte
Eu faço. NoScript todo o caminho. Sairei quando os navegadores estiverem na área restrita, e não antes.
fonte
As pessoas continuam falando sobre essa decisão como se fosse binária. Você degrada normalmente ou não. Em vez disso, por que você não considera os custos x benefícios da degradação normal de cada recurso individual? Por exemplo, você pode garantir que o site tenha funcionalidade básica, mas ainda requer Javascript para alguém usar recursos específicos.
Lembre-se também de que muitas pessoas que desabilitam o Javascript o fazem porque desejam usar um site leve e simples, com apenas o essencial. Você pode gastar todo esse tempo fazendo seus sinos e assobios funcionarem para os usuários que estão especificamente tentando evitá-los.
As pessoas reclamam que é muito trabalho degradar graciosamente. Se você está reclamando de quanto trabalho é, provavelmente está trabalhando em um recurso para o qual vale a pena exigir Javascript.
É minha opinião que usuários sem Javascript sempre devem poder navegar no site, usar a página de contato e ler todos os artigos ou postagens de blog que você possui. Para qualquer funcionalidade mais complexa, faça um julgamento com base no trabalho versus benefício envolvido.
fonte
Eu apenas o desligo para navegar pelo Pr0n (bairro ruim!) ;-)
Desisti de tentar desativá-lo para a navegação regular, porque as coisas quebraram demais. E às vezes nem sei que ele estava quebrado até ligá-lo novamente.
fonte
Se seu site puder ser usado por pessoas com deficiência, é uma boa idéia garantir que haja um backup para JavaScript.
fonte
A estratégia e o planejamento do site são específicos para cada caso . Ou seja, um site pode não ter nenhuma necessidade de oferecer suporte ao navegador IE, muito menos pensar em problemas menores, como suporte ao raio de borda do CSS3. Mas outros sites podem precisar ser compatíveis com versões anteriores até o IE6.
Como podemos entender o que temos para planejar um site? Em parte pela nossa experiência. Sites direcionados a programadores e desenvolvedores podem ter certeza de que seus usuários usam navegadores bastante novos e atualizados com quase todos os recursos ativados. No entanto, os sites de notícias devem pensar que alguém de um ponto desconhecido da Terra pode se conectar ao site para ver o que está passando por dentro de seu país.
Mas, além de nossa experiência e intuição, também precisamos instalar algum tipo de serviço de análise em nosso site, para que nossas decisões futuras sejam mais robustas, com base em dados estatísticos. Por exemplo, o Google Analytics é uma ferramenta muito boa. A partir daí, é possível ver se você realmente precisa oferecer suporte a navegadores mais antigos ou não.
No entanto, se quisermos seguir as Diretrizes de acessibilidade da Web do W3C, definitivamente devemos dar suporte a muitas coisas, sem considerar as circunstâncias específicas do site.
No seu caso especial, eu digo que não . Podemos esquecer com segurança o não script em sites de pequeno e médio nível. Mas para projetos maiores, não é uma má idéia incluir um pouco mais de marcação em suas páginas.
fonte
Não consigo decidir se algumas respostas neste tópico são hilárias ou sérias: cookies são mais perigosos que o javascript? ri muito
Qualquer site deve ser testado com js e cookies desativados, no entanto, é um imho mínimo.
fonte
Não se esqueça de cookies. Considero os cookies mais perigosos que o JavaScript. Eu costumava ser um usuário NoScript, mas o desativei em favor de sites de cookies na lista de permissões.
fonte
Somente se o cliente solicitar explicitamente
A menos que você tenha um número significativo de usuários que serão afetados, é simplesmente um esforço extra.
fonte
Eu sempre tenho o JavaScript ativado. Eu também sempre tenho meu kit de restauração mínimo, ao meu lado.
Precisamos desabilitar o veto de linha do JavaScript, para que eu possa dizer "sem alertas, sem redirecionamentos, sem websockets". A funcionalidade está no WebKit, pelo menos, a julgar pelo console e por vários inspetores.
Mas sim, sempre JavaScript ativado. Principalmente porque muito em breve as pessoas usarão os soquetes da web para causar todo tipo de mal, exatamente como aconteceu quando o Flash conseguiu a VM "legal". Então eu vou desligar o JavaScript. Se eles me deixarem, é claro.
Quero aproveitar o melhor que posso. Então, eu tenho algumas lembranças agradáveis desta época. Eu quero ficar impressionado, quero rir das loucuras do JavaScript, porque realmente sinto falta do que tínhamos em 2007, fluxo de informações doce e gratuito, como água de nascente, fontes abertas em todos os lugares.
Eu não vou desligá-lo até que eu precise.
fonte
A inicialização a partir de um CD / DVD ao vivo (fisicamente ou em uma VM) me faz sentir muito melhor em permitir que o Flash e o JavaScript façam suas coisas. Se bem me lembro, o Linux Mint tem suporte a Flash pronto para uso.
Quanto ao desenvolvimento do site, geralmente faço uma quantidade razoável de troca de div e menus em JavaScript, mas tento fazer com que tudo pareça certo e basicamente funcione com CSS.
fonte
Em vez de me concentrar em garantir que uma página inteira seja degradada normalmente, tento garantir que cerca de 75% (ou mais, se for fácil ou rapidamente) da página é degradada normalmente (ou funciona sem JavaScript ). Também tento garantir que esses 75% completem uma parte inteira da funcionalidade da página.
Por exemplo, eu uso JavaScript para carregar comentários de postagens no meu blog; Isso me proporcionou flexibilidade, consistência na renderização de comentários e me ajudou a manter um limite único de consulta / solicitação auto-imposto. No entanto, a principal razão pela qual você está acessando meu blog - lendo mensagens - permanece gerada pelo servidor e funcionará com qualquer navegador. Os comentários são completamente independentes em um
.js
arquivo limpo .TL; DR A chave aqui é o que degrada normalmente, não o quanto degrada normalmente.
fonte