> No, that was not what I was talking about. In this browser discussion,
> I am not interested in ways to understand complexity as your proposed
> solution. I think the fact that the browser needs to be this huge is a
> signal that things are very, very wrong, and a new solution for
> application distribution needs to come.
I'm still struggling to communicate this idea (everywhere, not just
here). The browser is complex because it relies on eighteen layers of
dependencies rather than just one. And the layers of dependencies are
caused by wanting some fuzzy sense of backwards compatibility rather
than digging into exactly what services one requires. That is my
candidate answer to your question of what is "very, very wrong" and
what the new solution to distribution needs to be. I hope that
white-box tests will allow more fine-grained code sharing without
worrying about compatibility. That will eliminate compounding drag
across many layers of dependencies.
This may be more radical than you expect. But the truth is often not reassuring.
"A prematurely frozen library doesn't just force people to live with
it. People react to it by wrapping it in a cleaner interface. But then
they prematurely freeze the new interface, and it starts accumulating
warts and bolt-on features just like the old one. Now you have two
interfaces. Was forking the existing interface really so much worse an
alternative? How much smaller might each codebase in the world be
without all the combinatorial explosion of interfaces wrapping other
interfaces" --
http://akkartik.name/post/libraries2
Received on Sat Oct 25 2014 - 21:44:24 CEST