The Hundred-Year Language: Here’s a phenomenal eassy on the evolution of programming languages from Paul Graham. Graham is an old-school programmer — he designed Arc and has written a couple of textbooks on Lisp.
Here, he theorizes on what programming languages will look like one hundred years from now. Along the way, he touches on a lot of things that seem like gospel to those of us programming for the last decade, and explains that they’re not the be-all and end-all of programming, just evolutions that will someday be replaced like everything else.
I don’t predict the demise of object-oriented programming, by the way. Though I don’t think it has much to offer good programmers, except in certain specialized domains, it is irresistible to large organizations. Object-oriented programming offers a sustainable way to write spaghetti code. It lets you accrete programs as a series of patches. Large organizations always tend to develop software this way, and I expect this to be as true in a hundred years as it is today.
This is a perfect example of a complicated subject approached in an incredibly easy-to-understand manner.