if your system doesn't encourage remixing, it's ultimately doomed to failure.
However, never forget that the market for IT can stay irrational longer than you can stay patient. Cobol is more than fifty years old. People are still emailing Word files to each other. And the post popular gaming systems are still closed consoles.
C was first and foremost designed to be a very portable language (for the early 70s). I think its endurance is largely attributable to this fact, that C was the first relatively easy to configure and deploy widespread throughout the world. It's difficult to imagine anything like Unix happening without C.
But COBOL on the other hand is written essentially in a vacuum. It's written in relatively closed environments, for closed systems, for closed purposes. You don't share COBOL code because, well, for the most part there isn't anything worth sharing, it's all to purpose specific.
And I think we see this in other places. Arduino is not the best, or cheapest, MCU hardware. But it's the easiest for which users can share code with each other. The "sketch" mentality for Arduino code has led to an explosion of copy-pasta examples across the net, and they are easy to integrate into one's own sketches on one's own hardware. Compare that to the TI MSP430 (which I personally think is every bit as good as the Arduino Uno, at a quarter of the price), pre-Energia, and it's a night and day difference.
Did the Web take off because it was fundamentally great, or was it because you could "view source" on any page? I spent hours in highschool, looking at other people's HTML and JS (but not CSS! It didn't exist yet!) on their sites. Saving their sites, hacking at the code (hacking as in "what one does with a machete"). Compare that to AOL and its keyword system.
So perhaps the lesson is: if your system doesn't encourage remixing, it's ultimately doomed to failure.