6 pontos por GN⁺ 2025-09-10 | 3 comentários | Compartilhar no WhatsApp
  • Este blog recomenda que visitantes instalem um bloqueador de anúncios confiável, como o uBlock Origin, quando nenhum bloqueador de anúncios é detectado
  • Essa mensagem de recomendação foi projetada para não atrapalhar a experiência do usuário e, depois de fechada uma vez, não aparece novamente
  • A implementação usa o script nativeads.js e uma <div> cheia de nomes de classes relacionados a anúncios, de modo que se o bloqueador de anúncios bloquear o elemento ou a requisição de rede, a mensagem deixe de ser exibida
  • A mensagem é lembrada por cookie após ser fechada uma vez, aparece pequena em um canto da tela via CSS, não cobre o conteúdo e não é exibida em navegadores com JavaScript desativado
  • Não há como detectar bloqueio via DNS, então o autor afirma ter implementado isso como uma janela de aviso simples e não intrusiva, fácil de fechar

A necessidade de uma mensagem recomendando bloqueador de anúncios

  • Os anúncios na internet desperdiçam o tempo dos usuários, e a indústria da publicidade exerce um impacto negativo sobre o ambiente da internet como um todo
  • Como a receita dos sites fica muito baixa, muitos sites acabam se tornando páginas de baixa qualidade cheias de anúncios
  • Se você quiser ajudar criadores, apoio direto (mesmo 1 dólar já ajuda) é muito mais eficaz do que assistir a anúncios

Objetivo do design da mensagem recomendando bloqueador de anúncios

  • Como a maioria dos usuários encara anúncios como parte da experiência da internet, o autor exibe uma mensagem diretamente no site
  • A mensagem "No adblocker detected. Consider using an extension like uBlock Origin to save time and bandwidth. Click here to close." é mostrada em tamanho reduzido no canto inferior direito da página
    • Ela não cobre o conteúdo, e depois de fechada não é mais exibida
    • Se a janela for pequena, a mensagem não é exibida
  • O motivo de mencionar apenas uma extensão específica (uBlock Origin) é que muitos usuários acabam conhecendo bloqueadores de anúncios por meio de anúncios, além dos riscos e do caráter enganoso de bloqueadores comerciais
    • Bloqueadores de anúncios promovidos por anúncios acabam monetizando os próprios usuários

Implementação e detalhes técnicos

  • No HTML, existe uma área div para a mensagem do bloqueador de anúncios, com vários nomes de classes relacionados a anúncios
  • A adição da mensagem é responsabilidade de um arquivo JavaScript chamado /nativeads.js
    • Ele garante, com base em cookies, que a mensagem apareça apenas uma vez
    • Ao clicar em "Click here to close.", a div é ocultada e o cookie é atualizado
  • O CSS define a posição visual e o estilo da mensagem
    • Ela fica fixa no canto inferior direito apenas quando há espaço suficiente na tela
  • Se o bloqueador de anúncios bloquear (removendo o elemento ou a requisição) essa div ou o arquivo nativeads.js, a própria mensagem deixa de ser renderizada
    • Os vários nomes de classes relacionados a anúncios induzem a maioria dos bloqueadores a remover a div
  • Em especial, extensões focadas em bloqueio de rede (como adblock lite etc.) também fazem a mensagem desaparecer se bloquearem a requisição de rede do script
  • Há uma limitação: não é possível detectar bloqueio de anúncios baseado em DNS
  • Em navegadores sem suporte a JavaScript, não há necessidade de bloqueador de anúncios, então a mensagem também não é exibida
  • Mesmo sem CSS aplicado, a mensagem continua funcionando em termos funcionais (apenas aparece sem estilo)

3 comentários

 
mango 2025-09-10

Recomendo o navegador Brave

 
GN⁺ 2025-09-10
Comentários no Hacker News
  • Graças aos bloqueadores de anúncios, vivo há quase 10 anos completamente isolado da publicidade online. Quando às vezes uso a web em dispositivos onde não dá para bloquear anúncios ou nem instalar bloqueador, a experiência de ver sites focados em SEO e cheios de anúncios parece entrar em uma boca de fumo. É triste que isso seja o cotidiano da maioria das pessoas
    • Toda vez que abro a Google Play Store no Android, parece que entrei num shopping distópico. Resolvo quase tudo que preciso com o F-Droid e só uso a Play Store para apps oficiais. Por isso, a Play Store parece ter um design hostil ao usuário e estar cheia de ruído visual. Fico com a sensação de que a realidade da maioria das pessoas é ser constantemente atormentada por anúncios. Tenho medo de que um dia até o uBlock Origin seja bloqueado e a gente fique sem proteção alguma
    • Estou numa situação parecida. Não é só na web: também não tenho TV, não escuto rádio com anúncios, então quase não vejo publicidade. Por isso, simplesmente não entendo como as pessoas conseguem aguentar isso
    • Em casa eu uso tanto bloqueio de anúncios por DNS no roteador quanto extensão bloqueadora no navegador. Sempre que navego usando dados 5G ou Wi‑Fi público, a experiência é desagradável, e eu ativo imediatamente uma VPN com bloqueio de anúncios
    • Até as grandes plataformas de anúncios têm um controle de qualidade péssimo. No YouTube, por exemplo, já recebi anúncios com deepfake do primeiro-ministro do Canadá promovendo golpe de criptomoeda. Ao clicar, eu era levado a um site de phishing fingindo ser a Receita canadense
    • Uso Brave em todos os dispositivos. Quando mostro um vídeo do YouTube em outro aparelho e aparecem três anúncios, ou quando carrego a página de notícias locais e ela vem entupida de publicidade, penso: "nossa, eles realmente estão despejando anúncios pesados por causa de freeloaders como nós!"
  • “Bloqueador de anúncios não detectado. Use extensões como o uBlock Origin para economizar tempo e tráfego.”<br> Também ajuda a proteger sua atenção e sua privacidade. Esse tipo de aviso é uma boa ideia. Pessoalmente, eu tiraria o termo “como” do aviso. O uBlock Origin é excelente, mas outros bloqueadores podem ser malware ou problemáticos. Aliás, o ublockorigin.com linkado no aviso não pertence ao verdadeiro desenvolvedor do uBlock Origin, Raymond Hill. À primeira vista, a intenção parece boa e a UI também é razoável, mas não parece estar sob controle do Hill e pode virar um ponto de risco para ameaças como malware. Os canais oficiais do Hill são https://github.com/gorhill/uBlock. Como referências úteis, há o README.md e a Wiki
    • Depois do recente caso de domain squatting do PuTTY, fiquei ainda mais desconfiado desses sites parecidos. De fato, o dono do ublockorigin.com está anunciando outros produtos completamente sem relação na seção “my other tools”
    • A maioria dos usuários comuns da internet não faz a menor ideia do que fazer ao receber um link do GitHub. É uma pena que o site oficial não ofereça instruções fáceis de instalação. Mas concordo que é preciso cuidado ao linkar um site que não seja administrado diretamente pelo desenvolvedor
    • Parece que este comentário não está sendo devidamente valorizado. Até o README tem cabeçalhos demais do GitHub, o que é incômodo. O UBO realmente precisa de uma landing page oficial
  • Até o FBI afirma que bloqueadores de anúncios ajudam a impedir que as pessoas sejam levadas a sites maliciosos<br> Veja a matéria do TechCrunch e o arquivo oficial
    • Já faz tempo que eu considero bloqueador de anúncios o melhor antivírus da atualidade
  • Eu não sou um grande fã de anúncios, nem respeito muito as redes de publicidade, mas também me incomoda um pouco a cultura de bloquear anúncios e rastreamento enquanto se usa de graça os dados dos sites. Acho que existe um contrato social implícito. Os sites fornecem e organizam uma enorme quantidade de conteúdo gratuitamente porque podem lucrar com anúncios. Se muita gente rejeita e bloqueia publicidade, esses serviços acabam deixando de distribuir esse conteúdo, e nesse processo o bloqueio vira uma espécie de carona no sistema. (Se o objetivo for destruir o serviço, pelo menos seria uma postura coerente.) Se você não quer cumprir esse acordo, paciência, mas se não gosta da estratégia por trás dele, então não deveria usar o serviço em primeiro lugar; deveria buscar alternativas por conta própria ou pensar em novas plataformas
    • Eu até achava essa estrutura aceitável, mas houve muitos casos em que os anunciantes romperam o contrato primeiro. Por exemplo:
      • Vídeos com autoplay consumindo meu tráfego sem permissão
      • Áudio surgindo do nada e sequestrando os alto-falantes
      • Pop-ups que atrapalham o controle da janela ou da aba
      • Vigilância que rastreia e agrega todos os meus hábitos de navegação
      • Uma fonte recorrente de malware e phishing sem ninguém realmente responsável
      • A experiência de ter uma página totalmente destruída porque misturaram três vezes mais anúncios do que conteúdo Acho errado tratar a visualização de anúncios como se fosse algo meramente inofensivo ou puro, porque na prática não é
    • Eu já não concordo mais com essa lógica. Os anúncios ficaram tão absurdos que um dia apareceu uma propaganda animada enorme ocupando 20% de cada lado da tela, com som altíssimo, e isso já foi irritante por si só. Mas assim que a página carregou, abriram-se 3 ou 4 pop-ups com alertas de vírus e anúncios de conteúdo estranho berrando no volume máximo. Isso aconteceu mesmo com o bloqueador de pop-up já ativado. Foi nesse dia que descobri o que era “self-click ads” e instalei um bloqueador de anúncios na hora. No fim, quem quebrou o contrato social foram eles. Já não confio mais em anúncios nem em todo esse sistema. Também ainda lembro da época da internet discada, quando sites enganosos faziam a conta telefônica disparar
    • É preciso ampliar um pouco a perspectiva. Recentemente, um tribunal decidiu que o Google cometeu dois atos ilegais de monopólio no mercado de publicidade online artigo relacionado, e ainda não houve uma solução efetiva. O DoJ também moveu uma ação parecida contra a Meta, e o caso continua em andamento wiki relacionada. Para mim, se a outra parte quebra o contrato, ele deixa de valer. O mesmo vale para o contrato social. Se as empresas cometeram grandes ilegalidades, não há motivo para que a gente continue preso a esse acordo. É legítimo rejeitar totalmente a publicidade online até que esses abusos ilegais sejam resolvidos. Se gigantes como Google e Meta violaram a lei, o certo seria proibir imediatamente a ad tech. E como os sites (publishers) também estão sendo prejudicados nessa situação, imagino que eles mesmos queiram uma solução real
    • Não concordo nem um pouco com a ideia de que “bloquear anúncios e rastreamento enquanto consome dados seria uma cultura imoral de carona”. Hoje existem vários sites gratuitos, como Wordpress, Blogger, Wix e Weebly, que funcionam sem scripts pesados de anúncios além dos próprios banners. Também dá para manter um site com Neocities ou Digital Ocean por US$ 5 por mês, com o domínio e o tema que você quiser. Veículos como Buzzfeed, The Verge e Gizmodo em geral só embutem conteúdo de terceiros, como YouTube e Vimeo, sem sequer hospedar muita coisa por conta própria, e tendem a acrescentar apenas anúncios e reviews de afiliados a notícias simplesmente recicladas. Essa web no estilo “dropshipping” destruiu a antiga cultura dos sites gratuitos
    • Acho aceitável quando pequenos blogueiros ou criadores independentes compartilham suas ideias e usam anúncios para cobrir ao menos parte do custo do servidor. Mas esse contrato social simplesmente não existe com corporações gigantescas que lucram coletando e vendendo dados pessoais. Elas apenas vendem meus dados. Se você sabe o que está acontecendo, sabe como bloquear, e ainda assim permite passivamente anúncios e rastreamento, então está colaborando para tornar o mundo pior. Não há razão para respeitar grandes empresas como se fossem indivíduos
  • As big techs estão aos poucos nos fazendo sentir que ser invadido é algo normal. Fingem nos dar muitos serviços de graça, mas tiram muita coisa de nós sem consentimento. Elas nos manipulam, erguem barreiras à informação e até pioram a condição humana. Não há motivo para sentir culpa por agir contra esse tipo de empresa. Aliás, ontem apareceu para mim no Chromium que o uBlock Origin não era mais suportado. Por isso eu já não usava Chromium para quase nada além do MS365, e isso me parece uma decisão ainda melhor agora. No Firefox, ele continua funcionando bem
  • Sobre o problema de que “bloqueio de anúncios por DNS não tem como ser detectado sem realmente carregar um anúncio”, acho que seria possível registrar um domínio com chance de entrar em listas de bloqueio e testar o recurso por meio dele, o que permitiria verificar tanto bloqueio por extensão quanto por domínio. Claro, haveria falsos positivos inevitáveis se o domínio saísse do ar ou houvesse problema de rede, mas é pedir demais esperar que qualquer teste seja perfeito. Se alguém souber uma forma fácil de fazer meu domínio entrar em listas de bloqueio, gostaria de ajuda. Eu toparia gastar algumas libras por ano com isso, e o volume de requisições não seria problema. Além disso, em vez de simplesmente alternar entre display:none e display:block, eu deixaria o espaço reservado com o mesmo tamanho e exibiria a mensagem correta, ou deixaria inicialmente só um espaço vazio para evitar mensagens erradas em caso de falha
    • Acho que criar um domínio novo vale muito a pena. Tenho certeza de que, se você configurar o domínio e escrever só um post curto no blog, a comunidade do HN vai ajudar a colocá-lo nas blocklists. E já que vai criar isso mesmo, seria bom adicionar também um botão de doação
  • Até o CERN recomenda bloqueadores de anúncios para uma navegação mais segura para todos<br> Veja a matéria relacionada<br> Quando a web surgiu, provavelmente ninguém imaginava que ela acabaria tão infestada de anúncios
    • Hoje em dia, provavelmente o clima é de recomendar Firefox ou outros navegadores menos restritivos para todo mundo. Recentemente fui ajudar no computador da minha esposa e vi tudo tomado por anúncios; no passado eu já tinha instalado o uBlock para ela. Ao abrir a página de gerenciamento de extensões do Chrome, vi que o Google tinha desativado automaticamente o uBlock e o marcado como extensão sem suporte. Toda vez que o navegador reinicia, é preciso ativar o uBlock de novo. Parece que o Chrome está deliberadamente expulsando bloqueadores de anúncios
  • Talvez, para combinar com o clima atual da internet, essa mensagem também devesse ser um pop-up hostil ao usuário. O botão X teria que ser minúsculo e de uma cor quase igual à do fundo, colocado no ponto menos acessível da tela. Em dispositivos touch, a área de toque também deveria ser pequena e desalinhada. No iPad, o pop-up deveria cobrir tudo e nem ter como fechar
  • Eu gostaria que os navegadores oferecessem uma forma fácil de desativar a execução de JavaScript após o onload da página, ou de só ativar JS quando o usuário clicar
    • Se você usa o navegador Brave, dá para desativar JS por padrão e ativá-lo manualmente para cada site quando necessário
    • Também concordo 100% com isso. Eu achava que o botão Stop do antigo IE servia para isso
    • O botão do uBO de “desligar JavaScript com um clique” é muito útil
    • No Opera antigo (antes da base Chromium), era fácil ligar e desligar JS pelo menu, embora eu não me lembre bem qual era o escopo da configuração
    • Antigamente, muitos scripts de anúncios usavam document.write() e executavam imediatamente, o que deixava tudo lento. Fico curioso se isso ainda acontece hoje
  • Não concordo com a afirmação de que “se você quer apoiar um autor de que gosta, mande dinheiro diretamente em vez de ver anúncios; US$ 1 ajuda muito mais do que a receita publicitária”. No passado eu tinha um pequeno banner só no topo do meu site pessoal, e a receita de anúncios cobria uma parte considerável do meu aluguel mensal. Menos de 0,01% das pessoas me enviaram dinheiro diretamente. Eu não gosto de ver anúncios, mas é fato que criadores ganham dinheiro com publicidade
    • Ainda assim, pensando melhor, vale reconsiderar se uma única pessoa vendo anúncios realmente gera mais receita do que US$ 1
 
tribela 2025-09-10

No meu blog também, há algum tempo, aparecia uma mensagem recomendando instalar um bloqueador de anúncios quando era detectado que não havia um, então fico feliz em saber que não era só eu.