This post is part 1 of a multi-part series called “the computer of the next 200 years”.
You are trapped in a box. You have been for a long time.
—D. R. MacIver
Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can.
—Zawinski's Law of Software Envelopment
switching costs and growth
most tools simultaneously think too small and too big. “i will let you do anything!”, they promise, “as long as you give up your other tools and switch to me!”
this is true of languages too. any new programming language makes an implicit claim that “using this language will give you an advantage over any other language”, at least for your current problem.
once you start using a tool for one purpose, due to switching costs, you want to keep using that tool. so you start using it for things that wasn’t designed for, and as a result, tools tend to grow and grow and grow until they stagnate. in a sense, we have replicated the business boom-and-bust cycle in our own tools.
interoperability
... continue reading