As Christmas is approaching I was thinking about my year in review and, more importantly, putting some thought into what is likely to happen over the next few years in the Technology space. Why? Because having a view of the future helps you chart your current course to take as much advantage as possible of that vision.

"Talent hits a target no one else can hit; Genius hits a target no one else can see.” ...Arthur Schopenhauer (1788- 1860)

In case you're interested here's my predictions for 2011-2012 (in no particular order):

  1. Because of economics, cloud computing will become pervasive, radically disrupting the way software is delivered and sold; and will enable much more computationally-challenging problems to be addressed by innovative companies

  2. Developers will eventually morph their application designs to fit the scale-out model that is on offer via cloud computing, which invariable means horizontally-scalable databases (think NoSQL) and divide-and-conquer parallel processing libraries like MapReduce and Hadoop

  3. Ubiquitous, high-speed wireless will allow us to become an "always-connected Planet" making issues like data portability, and multi-device support more important

  4. Because of their lower price point, and greater household density, mobile phones / tablets will be the dominant "connected device" in the marketplace

  5. Open mobile ecosystems based on Linux, like Android, will overtake closed ecosystems like iOS/iPhone

  6. Desktop applications will become even more dis-intermediated via advances in web standards, like HTML5, and supporting tools

  7. There will be some convergence in the "rich vs reach" argument as desktop apps push their data to the cloud, and web apps add features to mimic common desktop patterns

  8. The "real-time web" (communication, search, analytics) will continue its rise in prominence with technologies like XMPP, Reverse-AJAX, node.js, Operational Transformation, etc being joined by lots of new innovations in this area

  9. Social-transactions (getting recommendations from your friends rather than strangers) will become more prevalent due to the increase of online social networking

  10. Data volumes hoovered up by companies will grow enormously putting a premium on extracting value from the data, moreso than the technical challenge of storing it

  11. Helped by Metcalf's Law, the online games industry will continue to grow dwarfing the movie business and representing a large percentage of younger peoples time on computers and phones

  12. With multi-core machines become the norm and GPU video cards offering additional processing power, developers will turn to languages with functional elements to simplify concurrency issues. Existing languages like C/C++, Java, C# have capability to create and manage threads but there is a lot of onus on the developer to perform synchronization and lock management that is avoided with Erlang, F#, and Scala.

  13. The fight for the loungeroom has only just begun. All the major players, Google /Microsoft /Apple, want to own your set-top box. Watch out for fierce rivalry in that space as more media companies and content-providers partner with distribution providers like YouTube who in turn need to augment their user-generated content repositories with some "hits" to go with the "long tail".