Quão importante é a degradação graciosa do JavaScript?

87

Os desenvolvedores da Web continuarão gastando esforços aprimorando progressivamente nossos aplicativos da Web com JavaScript, garantindo que os recursos sejam degradados normalmente, garantindo, assim, a acessibilidade? Ou devemos gastar esse tempo focado em 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 desabilitado? Você tem algum projeto com requisitos que exijam especificamente a funcionalidade do JavaScript (quase todos os meus) e esses requisitos também exigem degradação?

Para fazer esta pergunta, eu retirei o programamers.stackexchange.com sem JavaScript habilitado, e fui recebido com esta mensagem: "Programadores - Stack Exchange funciona melhor com o JavaScript habilitado". Era difícil fazer o login, embora o site parecesse funcionar geralmente bem. (Eu não pude votar em nenhuma pergunta.)

Acho que esta é uma abordagem satisfatória para o desenvolvimento. Imagine o esforço envolvido em fazer com que todos os recursos do site funcionem com a lógica simples do HTML e do lado do servidor. Por outro lado, gostaria de saber 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 da web sejam degradados de maneira elegante. Esse aprimoramento progressivo está mijando ou alguns de nossos clientes realmente utilizam determinados serviços da Web sem o JavaScript ativado?

    
por Stephen 10.01.2011 / 21:26
fonte

28 respostas

51

Eu uso NoScript , mas coloque na lista de permissões qualquer site que eu realmente pretendo usar.

When you install NoScript, JavaScript, Java, Flash Silverlight and possibly other executable contents are blocked by default. You will be able to allow JavaScript/Java/... execution... selectively, on the sites you trust. You can allow a site to run scripts temporarily, if you're just surfing randomly, or permanently, when you visit it often and you really trust it. This means that NoScript learns from your own browser habits and tends to disappear in the background after a while, but it promptly comes back to save your day if you stumble upon a malicious web page.

When you browse a site containing blocked scripts a notification, similar to those issued by popup blocker, is shown.
Look at it or at the statusbar icon to know current NoScript permissions...

http://noscript.net/noscript/ss0.png

    
por 30.05.2013 / 09:35
fonte
92

Eu acho que a porcentagem de pessoas sem JavaScript ativadas é insignificante. Mas tenha cuidado com bots de mecanismo de pesquisa! Eles geralmente não usam JavaScript, mas você não gostaria que eles pulassem algum conteúdo importante de vocês por causa disso, certo?

    
por 07.02.2011 / 21:17
fonte
47

Eu sempre navego com JavaScript ativado e desde o surgimento do navegador da web.

Nunca uma vez tive um único problema que valesse a pena degradar minha experiência com o navegador. Talvez alguns pop-ups ou outros aborrecimentos, mas os benefícios superam os riscos na minha opinião.

    
por 03.12.2010 / 21:24
fonte
23

Ao usar o console no Linux, às vezes uso o Lynx quando uma GUI não está disponível. Pelo que sei, o lynx não tem suporte a JavaScript.

Também usei navegadores para dispositivos móveis mais antigos com suporte para JavaScript ruim ou com problemas de desempenho.

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 ser limitada a uma função de referência passiva. O Stack Exchange é um ótimo exemplo disso, você pode procurar respostas, mas não pode votar. Está lá apenas para ser usado como referência.

    
por 07.02.2011 / 21:20
fonte
17

Eu navego regularmente na Web a partir do navegador da Web do meu smartphone quando não estou em casa ou no escritório. Apesar de suportar (pelo menos um subconjunto de) JavaScript, nem sempre lida bem com isso. Eu encontrei muitos sites inutilizáveis porque eles consomem muitos recursos ou simplesmente travam o navegador.

Eu prefiro o navegador interno, mas mantenho dois navegadores alternativos, caso um deles faça um trabalho melhor.

    
por 07.02.2011 / 21:21
fonte
13

Uma coisa que não foi mencionada neste tópico é o que acontece se o seu script falhar. Em muitos casos, a execução adicional do script na página pode ser desativada, necessitando, portanto, de uma maneira de retornar a uma maneira mais simplista de navegar.

Um script pode quebrar por vários motivos, mas os mais óbvios são solicitações incompletas para os arquivos .js, vários addons que podem alterar o DOM ( AdBlock , etc.) ou introduza objetos que não sejam bem conhecidos.

Isso não tem nada a ver com pessoas desabilitando explicitamente o script ou o que for. Como uma nota lateral, muitos roteadores modernos, software de firewall, etc. geralmente têm um recurso para desabilitar / filtrar script, Flash, etc. de sites, por isso pode até ser configurado em uma camada de rede deixando o usuário inconsciente disso (pense cafés públicos, escolas ou outros ambientes onde outras pessoas paranóicas configuraram o acesso à Internet).

Esse é geralmente 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).

    
por 07.02.2011 / 21:25
fonte
12

A única coisa que desabilito o JavaScript é testar meu próprio site. No entanto, você pode estar interessado em um estudo que o Yahoo fez que encontrou entre 1-2% dos usuários têm JavaScript desativado. O público do Yahoo é provavelmente uma boa representação do usuário médio.

Uma citação chave do estudo:

While 2% of U.S. visitors may not seem like a lot, keep in mind that over 300 million users visit the Yahoo! homepage each month. That means 6 million users visit each month without the benefit of JavaScript. So even though it’s worth spending your time on the JavaScript-enabled version of the site, there are still a non-trivial amount of users out there who won’t be able to use it.

    
por 03.12.2010 / 20:52
fonte
7

Eu uso o NoScript juntamente com o AdBlock Plus o tempo todo .

A web hoje é muito hostil (JavaScript intrusivo + anúncios irritantes) para sair desprotegido.

    
por 03.12.2010 / 22:31
fonte
6

Você está, é claro, recebendo uma amostra realmente distorcida aqui, e pode ser melhor fazer sua própria pesquisa em seu próprio site.

Eu, pessoalmente, uso o NoScript. Raramente tenho relutância em colocar um site na lista de permissões, mas é preciso que valha a pena fazê-lo. (Em outras palavras, preciso de uma razão, mas não precisa ser muito convincente.)

    
por 03.12.2010 / 22:00
fonte
5

Or do some of us actually utilize certain web services without JavaScript enabled

Sim.

Minha navegação cai em três categorias.

Navegação normal - no Safari ou no Chrome (Mac OS X)
 - iGoogle, Stack Overflow, alguns blogs

Sites especiais : Firefox, com NoScript, AdBlock Plus e FlashBlock
Sites com JavaScript desnecessariamente pesado. (Alguns sites indianos para filmes / música de Bollywood, se isso for importante. Script desnecessariamente pesado - a própria página é recarregada a cada 5 minutos ou mais)

Navegação em dispositivos móveis:
Eu costumava ter um Nokia 5310. Perdi isso. Agora eu tenho um Sony Ericsson W700i ainda mais antigo. Eu navego usando-o quando estou viajando (o Opera Mini é muito bom). Este é o lugar (a ausência de) JavaScript é uma dor. Eu não quero interagir com o site (principalmente), apenas leia. Ainda a maioria dos sites são impossíveis de serem visualizados.

    
por 07.02.2011 / 21:35
fonte
5

Basta ler Programadores pragmáticos "HTML5 e CSS3" . O autor diz que 5% dos usuários têm o JavaScript desativado.

Veja a fonte dele: Números de índice de desativação de JavaScript da UE e dos EUA + Web Impacto da coleta de dados do Google Analytics .

JavaScript Disabled Index numbers

EU: 1.4%
US: 3.05%

Source: 1.000.000.000 visits across multiple industry web properties using IndexTools.
(VisualRevenue.com/blog – Dennis R. Mortensen)

http://visualrevenue.com/media/uploaded_images/JavaScript-Disabled-735171.JPG

Parece que a porcentagem está caindo também.

    
por 30.05.2013 / 09:39
fonte
4

Eu tenho a tendência de instalar o NoScript e apenas sites whitelist que eu confio. Caso contrário, eu uso o "permitir temporariamente" para domínios específicos quando preciso.

Esta é 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 for sandboxed ... 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 ao maior público. Isso também significa que você separa seus dados do design visual e da lógica de negócios. A maior parte do que você faz com JavaScript no lado do cliente deve ser feito no lado do servidor de qualquer maneira - fazer isso do lado do cliente deve ser apenas uma conveniência dada a um usuário do site.

É claro que existem exceções que exigem JavaScript, mas geralmente há uma expectativa envolvida. Por exemplo, há uma expectativa de ativar o JavaScript para Disaster BioLab , um jogo, mas nenhum para um site como Uma lista Apart , principalmente apenas texto.

Quando preencho um formulário, deve haver uma expectativa de que eu tenha o JavaScript habilitado para enviar o formulário? Por quê? Para que o código JavaScript possa verificar se não inseri um número em vez de uma letra?

    
por 07.02.2011 / 21:31
fonte
3

O Javascript está desativado por padrão para aqueles de nós em uma caixa do Windows Server. Nossa política de TI bloqueia tantos sites, a única maneira de ler algum conteúdo é navegar em um servidor, onde o JS é desabilitado por padrão.

Embora não seja minha configuração preferida, é o que tenho que fazer às vezes.

    
por 04.12.2010 / 03:47
fonte
3

Eu uso o Google Chrome + AdBlock Plus e tenho o JavaScript ativado.

EDIT: Eu uso NotScript agora. :)

O Chrome ALONE bloqueia quase todos os pop-ups (eu só encontrei um site [Chess.com] que quebrou uma vez), e o AdBlock se livra de todos os anúncios, então não tenho problemas com eles.

O IMO, JavaScript, oferece uma "experiência melhor" no geral e, desde que você visite sites confiáveis (que não foram hackeados ...), tudo bem. Como "pessoal do computador" / desenvolvedores, acredito que devemos ter um "senso de internet" muito apurado e saber se um site pode ser malicioso.

    
por 06.02.2011 / 03:23
fonte
3

Na minha opinião, acessibilidade supera quase todo o resto. Os usuários que dependem de tecnologia assistencial devem sempre obter a maior parte da funcionalidade de um site, mesmo que isso leve um pouco mais de tempo. Não importa quantos por cento dos usuários dependem dele para importar. Fico feliz em poder codificar para um projeto da Web de código aberto em que a acessibilidade é um dos principais focos e realmente aprendo como posso fazer as coisas acontecerem nos dois sentidos - com e sem JavaScript. (E muitas outras coisas relacionadas à acessibilidade, porque JavaScript ou não é realmente apenas uma pequena parte do problema.)

Há um questionário interessante que tem respostas de usuários do projeto que acabei de mencionar sobre a tecnologia que eles usam aqui . Pode ser de interesse para você.

    
por 06.04.2011 / 00:23
fonte
2

Hmm, agora eu me sinto como o Omega Man . :) Aparentemente eu sou a pessoa última que realmente transforma JavaScript (e cookies) off . (A menos que eu precise de um site específico como, digamos, o Stack Overflow.)

Eu duvido que esteja perdendo muito - geralmente quando eu faço ativar JavaScript para um site, ele faz algo totalmente inútil, como permitir que eu vomite toneladas de informações para total estranhos, ou me mostra alguns anúncios em movimento - apenas o que eu queria, algum movimento aleatório na tela enquanto eu estou tentando se concentrar em ler um artigo ...

    
por 07.02.2011 / 21:37
fonte
2

Acabei de responder uma pergunta no AskUbuntu.com - eu tive que (temporariamente - no momento) ativar o JavaScript no site. Eu uso o NoScript e habilito JavaScript para um site quando penso que está claro - mas não até. Por padrão, o JavaScript está desativado para sites que eu não visitei antes.

    
por 06.04.2011 / 00:26
fonte
2

eu faço. NoScript todo o caminho. Eu sairei quando os navegadores estiverem em sandbox e não antes.

    
por 06.04.2011 / 00:31
fonte
2

As pessoas continuam falando sobre essa decisão como se fosse binária. Você ou se degrada graciosamente ou você não. Em vez disso, por que você não considera os custos versus os benefícios de degradar graciosamente para cada recurso individual? Por exemplo, você pode garantir que o site tenha funcionalidades básicas, mas ainda precisa de Javascript para que alguém use recursos específicos.

Lembre-se também de que muitas pessoas que desativam o Javascript o fazem porque querem usar um site leve e despojado com apenas o essencial. Você pode estar gastando todo esse tempo fazendo seus sinos e assobios trabalharem para os usuários que estão especificamente tentando evitá-los.

As pessoas reclamam que é muito trabalhoso degradar de forma elegante. Se você está reclamando sobre quanto trabalho é, então provavelmente você está trabalhando em um recurso que vale a pena requerer Javascript.

É minha opinião que os usuários sem Javascript devem sempre poder navegar no site, usar a página de contato e ler qualquer artigo ou postagem de seu blog. Para qualquer funcionalidade mais complexa, faça uma avaliação baseada no trabalho versus benefício envolvido.

    
por 16.05.2011 / 04:33
fonte
1

Eu só o giro para navegar pelo Pr0n (bairro ruim!) ;-)

Eu desisti de tentar desativá-lo para navegação normal porque as coisas quebraram demais. E às vezes nem sei que foi quebrado até que eu liguei novamente.

    
por 04.12.2010 / 03:23
fonte
1

Se o seu site puder ser usado por pessoas com deficiências, é uma boa ideia garantir que haja um backup para JavaScript.

    
por 06.04.2011 / 00:24
fonte
1

A estratégia e o planejamento do website são específicos para casos . Ou seja, um site pode não ter nenhuma necessidade de suportar o navegador IE, quanto mais pensar em questões menores, como o suporte a border-radius de CSS3. Mas outros sites podem precisar de compatibilidade retroativa até o IE6.

Como podemos entender o que temos para planejar um website? Em parte da nossa experiência. Sites que visam 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, sites de notícias devem pensar que alguém de um ponto desconhecido da Terra pode se conectar ao seu site para ver o que está passando por seu país.

Mas além de nossa experiência e intuição, também precisamos instalar algum tipo de serviço analytics 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í, você pode ver se realmente precisa ou não suportar navegadores mais antigos.

No entanto, se quisermos seguir as Diretrizes de Acessibilidade da Web do W3C, devemos definitivamente 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 porte. Mas, para projetos maiores, não é uma má ideia incluir um pouco mais de marcação nas suas páginas.

    
por 29.08.2011 / 20:11
fonte
0

Não consigo decidir se algumas respostas neste tópico são hilárias ou sérias: os cookies são mais perigosos que o javascript? LOL

Qualquer site deve ser testado com js e cookies desativados, mas é um imho mínimo.

    
por 04.12.2010 / 00:53
fonte
0

Não esqueça de cookies. Eu considero os cookies mais perigosos que o JavaScript. Eu costumava ser um usuário NoScript, mas eu o desativei em favor de sites de cookies de lista branca.

    
por 07.02.2011 / 21:38
fonte
0

Apenas 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.

    
por 07.02.2011 / 21:39
fonte
0

Eu sempre tenho JavaScript. Eu também sempre tenho meu kit de restauração mínimo, ao meu lado.

Precisamos desativar o veto de linha do JavaScript, para que eu possa dizer "sem alertas, sem redirecionamentos, sem websockets". A funcionalidade está em WebKit pelo menos, a julgar pelo console e vários inspetores.

Mas sim, sempre JavaScript ativado. Principalmente porque muito em breve as pessoas usarão sockets web para causar todos os tipos de mal, exatamente como aconteceu quando o Flash conseguiu a VM "legal". Então eu vou desligar o JavaScript. Se eles me deixarem claro.

Eu quero aproveitar o melhor que puder. Então eu tenho algumas lembranças agradáveis desta época. Eu quero ficar impressionado, eu quero rir das loucuras do JavaScript, porque eu realmente sinto falta do que tivemos em 2007, livre fluxo de informações como água de nascente, fontes abertas em todos os lugares.

Não vou desligá-lo até que seja necessário.

    
por 06.04.2011 / 00:26
fonte
0

Iniciar a partir de um live CD / DVD (fisicamente ou em uma VM) faz com que eu me sinta 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.

No que diz respeito ao desenvolvimento de sites, geralmente faço uma quantidade razoável de troca de div e menus em JavaScript, mas tento fazer tudo parecer correto e basicamente trabalhar com CSS.

    
por 06.04.2011 / 00:31
fonte
-1

Em vez de se concentrar em garantir que uma página inteira seja degradada de maneira elegante, tento garantir 75% (ou mais, se for fácil ou rapidamente) da página degrada graciosamente (ou funciona sem JavaScript ). Eu também tento me certificar de que este 75% completa toda uma parte da funcionalidade da página.

Por exemplo, eu uso JavaScript para carregar comentários para postagens no meu blog; Isso me deu flexibilidade, consistência na renderização de comentários, e isso me ajuda a manter um limite de consulta / solicitação único auto-imposto. No entanto, a principal razão pela qual você está indo para o meu blog - lendo postagens - permanece gerada pelo servidor e funcionará com o qualquer navegador. Os comentários são completamente autocontidos em um arquivo .js limpo.

TL; DR A chave aqui é o que degrada graciosamente, e não quanto se degrada graciosamente.

    
por 22.08.2015 / 00:15
fonte