Depois de ver esta postagem sobre guerras de navegador, eu queria escrever uma observação alternativa de como chegamos a essa vida. Mas Drew DeVolt já disse tudo para mim.
Desde as primeiras guerras entre o Netscape e o IE, a funcionalidade se tornou a principal ferramenta na competição de navegadores . Mas a estratégia de crescimento e expansão ilimitados é completamente insana. Por muito tempo nós deixamos isso continuar.
Eu usei o wget para baixar todas as 1217 especificações W3C publicadas até o momento 1 . Uma parte significativa deles deve ser implementada no navegador para que a web moderna funcione. Calculei o escopo dessas especificações. Quão complexa você acha que a web moderna é?
[1] A partir de 2020-03-18. Excluindo as especificações WebGL pelas quais Khronos é responsável.
No total, até o momento, o catálogo de especificações do W3C contém 114 milhões de palavras. Se você pegar os padrões C11, C ++ 17, UEFI, USB 3.2 e POSIX, adicione a eles todos os 8.754 RFCs publicados, bem como tudo da lista de obras literárias mais longas na Wikipedia - o W3C ainda tem 12 milhões de palavras a mais de 2 .
[2] O espaço restante pode ser facilmente preenchido usando as páginas 5038 do Manual de arquitetura Intel x86. Você só precisa copiá-lo cerca de seis vezes.
Minha conclusão: não é possível criar um novo navegador da web . A complexidade simplesmente sai da escala . A laboriosidade de criar um novo navegador é comparável a enviar uma pessoa à lua ou criar uma bomba nuclear do zero.
É impossível implementar a web corretamente.
É impossível implementar a web com segurança.
.
, ? , , . — Servo — , , . ? ? , WebVR! , ? ?
. — , . , , , , . . 8000 3.
[3] CVE cve.mitre.org «firefox», «chrome», «safari», «internet explorer».
- , , . , , . , DRM AMP. Microsoft Edge, WebKit .
. open-source - , , . , . W3C 200 — 4 — POSIX 4-6 . , — , .
. , . . !