Hacker News new | ask | show | jobs
by drblast 4566 days ago
Wayyyy back in 2007 I half-jokingly made a prediction about the future of computing. The hot topics at the time were AJAX and new multi-core processors targeted at consumers. Everyone was trying to envision which language would win out by making it easy to write massively parallel programs. There were lots of articles published about Haskell and software transactional memory. The demise of C and C++, and their managed Java/C# spawn was imminent. How could you write in a language that couldn't handle multiple cores for you?

The future is here, in 1/4 of the time I thought it would take. I guess I have to go write a new prediction.

  So. . .here's my prediction, taking into account the pace
 of hardware development and the history of software
 development. In 20 years, cheap hardware will be
 ridiculously fast, but it will still look very much like
 Intel hardware today. We'll have many, many CPU cores to
 work with, but nobody will use a parallel programming
 language designed to take advantage of multiple cores.
 Instead, virtualization (i.e. VMware, Xen) will be
 integrated into the operating system, and each process
 will run on its own virtual machine.

  Each web browser will have been expanded into a full blown
 widget toolkit and have merged in something that looks
 like Flash, but there will still be multiple incompatible
 browsers. The latest craze will be a browser compatibility
 layer written in a programming language that compiles
 to "raw Javascript", and it will reduce the performance of
 applications but allow you to use them anywhere.

  People will set about re-writing a version of Photoshop in
 the new compatibility layer, and everyone will wonder why
 they'd do that, when the current version of Photoshop runs
 in Internet Explorer just fine.
Edit: The lesson here is that if you want to predict the future, try to do it by making a prediction so ridiculous it could only be a joke.