>Supporting a monoculture is trading future potential in the name of short-term convenience.
By supporting lots of rendering engines to do the exact same thing in various degrees of brokeness we haven't seen any "future potential" and we also lost the short-term convenience.
>Wishing you could wave a magic wand and make everyone use the same tools, language, conventions, or coding style is something every engineer wishes from time to time, but the world would be worse off without diversity.
I'm not sure. I see a lot of examples where diversity has fucked things up:
1) Linux fragmentation for example killed it as a platform for proprietary apps,
2) Gnome/KDE/... fragmentation killed the Linux desktop mass adoption,
3) Tons of C++ compilers make cross platform C++ code more difficult (it's a little better nowadays)
I also see many examples where lack of diversity has made things better:
1) Ruby web frameworks? 99% of the people go with Rails, and it gets all the improvements and stuff (compare with Java/PHP web frameworks).
2) Mobile rendering engine? 99% of companies go with Webkit and free lots of their resources up plus contribute to the betterment of the project.
>But the moment we start treating the Web as a zero-sum game and stop collaborating on the vision of a better online experience, nobody wins.
How about solving the "collaborating" problem by working on the same engine?
By supporting lots of rendering engines to do the exact same thing in various degrees of brokeness we haven't seen any "future potential" and we also lost the short-term convenience.
>Wishing you could wave a magic wand and make everyone use the same tools, language, conventions, or coding style is something every engineer wishes from time to time, but the world would be worse off without diversity.
I'm not sure. I see a lot of examples where diversity has fucked things up:
1) Linux fragmentation for example killed it as a platform for proprietary apps, 2) Gnome/KDE/... fragmentation killed the Linux desktop mass adoption, 3) Tons of C++ compilers make cross platform C++ code more difficult (it's a little better nowadays)
I also see many examples where lack of diversity has made things better:
1) Ruby web frameworks? 99% of the people go with Rails, and it gets all the improvements and stuff (compare with Java/PHP web frameworks).
2) Mobile rendering engine? 99% of companies go with Webkit and free lots of their resources up plus contribute to the betterment of the project.
>But the moment we start treating the Web as a zero-sum game and stop collaborating on the vision of a better online experience, nobody wins.
How about solving the "collaborating" problem by working on the same engine?