O desenvolvedor apreciou a complexidade dos navegadores modernos

Bem conhecido desenvolvedor Linux, co-autor do protocolo gráfico Wayland, ambiente de usuário Sway e cliente de e-mail da Aerc, Drew DeVault analisou as especificações do W3C que os navegadores modernos devem cumprir.

Ele baixou 1217 especificações com a ajuda wgete atualizou as estatísticas com o utilitário wc -w(número de palavras). Descobriu-se que todo o catálogo atual de especificações do W3C é de 114 milhões de palavras . Para comparação, o escopo da especificação C11 é de 208.220 palavras e a duração do romance Guerra e Paz é de 188.088 palavras.

Drew DeVolt conclui que hoje não é mais possível desenvolver um novo navegador a partir do zero, uma vez que é impossível implementar o suporte a padrões da Web nesses números.

Para comparar a verbosidade das especificações do W3C, o desenvolvedor cita o tamanho de outras especificações e textos :

  • Todas as RFCs da IETF (formato de texto), 8.754 unidades: 57.716.641 palavras
  • POSIX (formato HTML): 2 017 056
  • USB 3.2 (PDF): 872 395
  • UEFI (PDF): 659,580
  • C ++ 17 (PDF, último rascunho em aberto): 576 344
  • C11 (PDF, último rascunho aberto): 208.220
  • Intel x86 ISA (PDF): 2.312.414

Mesmo se você adicionar tudo isso a uma lista dos romances literários mais longos do mundo , as especificações do W3C ainda terão mais de 12 milhões de palavras.

Drew DeWolt sugere o motivo pelo qual chegamos a esse estado: “Desde a primeira guerra de navegadores entre o Netscape e o Internet Explorer, os navegadores da Web usaram suas funções como o principal meio de competição entre si. Essa estratégia de escopo ilimitado e fluência perpétua de funções é imprudente e foi autorizada a continuar por muito tempo ”, ele escreve. - A complexidade da web é simplesmente indecente. Criar um novo navegador da Web é comparável em seus esforços ao programa Apollo ou ao projeto Manhattan. ”

Ou seja, não é impossível implementar suporte seguro ou correto para a Web, ele não pode ser implementadoem geral .

Criar seu próprio mecanismo de navegador para competir com o Google ou Mozilla hoje é uma tarefa completamente estúpida. A mais recente tentativa séria de criar um novo navegador, o Servo, tornou-se "parcialmente uma incubadora para refatorar o código do Firefox, parcialmente uma caixa de areia para engenheiros entediados da Mozilla mexer com tecnologia inútil" (WebVR).

“As implicações disso são óbvias. Navegadores são o software mais caro que roda em computadores comuns. Eles são famosos por usar toda a sua RAM, agarrar a linha do processador e a E / S, esgotar a bateria e assim por diante. Os navegadores são responsáveis ​​por mais de 8.000 vulnerabilidades conhecidas ”, escreve Drew DeVolt. As estatísticas do CVE estão disponíveis no site oficial cve.mitre.orgpara consultas de pesquisa "firefox", "chrome", "safari" e "internet explorer", no total.

Criar uma alternativa competitiva tornou-se um desafio intransponível. Por esse motivo, os desenvolvedores de navegadores sentiram impunidade. Os navegadores param de funcionar como "agentes do usuário" e, em vez disso, começam a trabalhar como agentes de seus criadores: "O Firefox é preenchido com anúncios, rastreamento e plug-ins necessários. O Chrome é usado pelo Google como uma ferramenta para rastrear efetivamente o histórico de páginas abertas e promover tecnologias nocivas, como DRM e AMP, no ecossistema. O duopólio dos navegadores também está se fortalecendo, pois a Microsoft perde o Edge e o WebKit fica muito atrás dos concorrentes. ”

Obviamente, os mecanismos do navegador são de código aberto. Infelizmente, até fazer um garfo viável é uma tarefa quase impossível. O fato é que o número de especificações do W3C está aumentando em média 200 novas especificações por ano. São cerca de quatro milhões de novas palavras. Grosso modo, cerca de um POSIX a cada 4-6 meses. “Como é possível que uma nova equipe acompanhe isso, além do volume escandaloso que já existe? - pergunta DeVolt. - Guerras nos navegadores foram autorizadas por muito tempo. Eles deveriam ter se concentrado na competição há muito tempo em termos de desempenho e estabilidade, em vez de novos "recursos". Isso é absolutamente ridículo e deve parar.




All Articles