The only cure is a from-bare-silicon reboot of all of computing.
I don't think that can practically happen. If you're using some not-too-powerful language to do it, it will take too long and you'll never catch up. If you're using a language powerful enough to actually accomplish it, you'll never develop a community or a culture of libraries, because the number of people who feel they can just build what they need faster than learning and using someone else's library will be high enough that libraries never get enough attention, and you'll end up with an archipelago instead of a continent of libraries. That's pretty much what happened to the lisps.
have you seen Alan Kay and company's "STEPS Toward The Reinvention of Programming" ? They're doing almost exactly that -- making small, powerful programming languages that make it easier to re-describe the fundamentals of computing. There's a pdf: http://www.vpri.org/pdf/tr2007008_steps.pdf
I don't think that can practically happen. If you're using some not-too-powerful language to do it, it will take too long and you'll never catch up. If you're using a language powerful enough to actually accomplish it, you'll never develop a community or a culture of libraries, because the number of people who feel they can just build what they need faster than learning and using someone else's library will be high enough that libraries never get enough attention, and you'll end up with an archipelago instead of a continent of libraries. That's pretty much what happened to the lisps.