This. This is why we can have nice things.<p>I've been thinking about the old programming saying, "There is no problem that cannot be solved by adding a layer of abstraction, except for having too many layers of abstraction." How many layers is too many? The trends I see are (1) computers keep getting faster; (2) compilers keep getting smarter; and (3) we keep learning how to better design and manage and debug abstraction layers. Which means the number of abstraction layers that is "too many" to solve any given problem is much higher than it used to be. I think a lot of the "check out this neat thing" posts on HN are a product of that -- we can now stand on the shoulders of shoulders of shoulders of shoulders of shoulders of shoulders of shoulders of shoulders of shoulders of giants without things getting too tippy.<p>What did "var world = tQuery.createWorld().boilerplate().start()" look like back in 1997, when this Quake 2 model was first released? What will it look like in another 15 years?