Skip to main content

On Gartner's 2011 Top Technologies

A coworker stumbled across Gartner's top 10 technologies for 2011 and decided to share it with everyone in the office via email. Overlooking the need for a cluebat, and resisting the urge to similarly spam everyone with The Oatmeal's take on email etiquette, I think Gartner missed the mark on some things.

Let's be honest for a moment. Cloud computing has been hyped since '08 when Eucalyptus and Amazon's EC2 Services came out. Social media has been on the radar since since blogs became popular (though admittedly Twitter and Facebook upped the ante). Mobile computing has been slowly making inroads but I think it's still too soon to claim "The PC era is over." All the technologies have been around for years in one form or another; they just happen to be "hot" right now... and by the time someone starts touting them they've probably peaked.

In the next 12 months I predict there'll be a lot of potential for things like IPv4/6 networking, JavaScript, Flash, and whatever comes out of the Facebook v. Google storm that's brewing. I may be wrong... but hindsight is 20/20 so I guess I'll just have to make a few of my own predictions here and see how on the mark I was come next November.

IPv6 hasn't seen widespread adoption despite being standardized for over 10 years. Supposedly Europe is running thin on the IPv4 front with something like 4% of the address-space left, and getting down to around 1-1.5% might be enough to force the ISPs and TELCOs to start investing more in their infrastructure. Either that, or perhaps someone will devise a creative way to prolong the inevitable either with some new NAT/routing extensions, or a new backwards-compatible protocol obsoleting IPv6 that would overlay nicely on IPv4 to allow backwards compatibility and future growth (along the lines of how 64-bit processor registers extended their 32-bit registers, which in turn extended their 16-bit registers, etc).

Developers are finally starting to fully explore JavaScript's capabilities, are becoming more comfortable with duck-typing, and Google's V8 engine has done pretty well in speeding up JavaScript's execution, to the point where I can see more and more programmers attempting serious server-side programming in JavaScript. Server-Side JavaScript is nothing new, but if one or two start-ups can make it big within the next year or so using a technology stack focused on server-side JavaScript, it may make others in the market comfortable enough to take the plunge themselves... if not in 2011, then possibly 2012. This would be thanks in no small part to ECMA-262's strict mode in an attempt to clean some cruft from the language, and projects like CommonJS and node.js. I only hope it doesn't get bastardized with Java-like public/private syntax in the process.

I think HTML5 is a lot of fluff-- the standard isn't expected to be completed until 2020ish, and technology moves so fast now that by then it'll be irrelevant. Browsers and developers are trying to be early adopters so they can be the cool kids on the block, but let's face it... the multimedia developer is going to prefer something like Flash to create their website experiences in than programing JavaScript code in an IDE; synchronizing timers to manipulate objects and sounds is easier with a click/drag-and-drop interface. JavaScript will be big with programmers/back-end developers, but if Adobe can re-align the Flash product and address some of the memory usage concerns, they can come out on top with the front-end/multimedia folks. Apple won't suffer, but people will see through their arguments for what they are-- self-preservation and vendor lock-in efforts.

Social Media
There's a turf war simmering between Facebook and Google that could have interesting repercussions for the rest of us. Facebook is rolling out new a new email-type feature to make communication with non-facebookers easier and to consolidate/streamline the social media experience, which looks similar to Google's failed Facebook-killer Wave product with a less-crappy interface. Google is suddenly concerned with defending our rights when it comes to our own content. I can imagine a spirited debate on privacy, ownership, and copyrights in the 21st century.

Then there's the question of how can a CEO take advantage of these changes in technology and the tech/social landscape to increase their company's profits. Since we're being honest with one another, I can say I don't know and not feel too bad about it. If I did know, I wouldn't be blogging about it here; I'd be out positioning myself to be the next Gates, Page, or Zuckerberg. Maybe there will be some new startup mash-up type service providers (like only not as annoying?) that will spring up which will eventually turn to targeted advertising for their revenue. Or, wouldn't it be nice if someone came up with a product/service to make parents be responsible and not raise douche-bag children, for it to be cool for kids to put down their cell phones and mp3 players and eat dinner at the table as a family, and maybe spread a little inter-office email etiquette just for good measure?

Just my thoughts...


  1. Forget Flash until Adobe gets a clue about security. An Adobe product, (most likely Flash, possibly AIR) will have the first true cross-platform vulnerability that gets maassively exploited IMO.

  2. That's a very good point, Mike. Adobe will have to address security in Flash in addition to resource-usage. But HTML5 isn't security conscious either with its client-side storage and cross-domain communication.


Post a Comment

Popular posts from this blog

Geolocation Search

Services that allow users to identify nearby points of interest continue to grow in popularity. I'm sure we're all familiar with social websites that let you search for the profiles of people near a postal code, or mobile applications that use geolocation to identify Thai restaurants within walking distance. It's surprisingly simple to implement such functionality, and in this post I will discuss how to do so.

The first step is to obtain the latitude and longitude coordinates of any locations you want to make searchable. In the restaurant scenario, you'd want the latitude and longitude of each eatery. In the social website scenario, you'd want to obtain a list of postal codes with their centroid latitude and longitude.

In general, postal code-based geolocation is a bad idea; their boundaries rarely form simple polygons, the area they cover vary in size, and are subject to change based on the whims of the postal service. But many times we find ourselves stuck on a c…

Composing Music with PHP

I’m not an expert on probability theory, artificial intelligence, and machine learning. And even my Music 201 class from years ago has been long forgotten. But if you’ll indulge me for the next 10 minutes, I think you’ll find that even just a little knowledge can yield impressive results if creatively woven together. I’d like to share with you how to teach PHP to compose music. Here’s an example: You’re looking at a melody generated by PHP. It’s not the most memorable, but it’s not unpleasant either. And surprisingly, the code to generate such sequences is rather brief. So what’s going on? The script calculates a probability map of melodic intervals and applies a Markov process to generate a new sequence. In friendlier terms, musical data is analyzed by a script to learn which intervals make up pleasing melodies. It then creates a new composition by selecting pitches based on the possibilities it’s observed. . Standing on ShouldersComposition doesn’t happen in a vacuum. Bach was f…

Creepy JavaScript Tracking

I recently began allergy shots so my new Monday morning routine includes me sitting in a doctor's office for 30 minutes (I must wait after receiving the shots and be checked by a nurse to make sure there was no reaction). With nothing else better to do while I waited last week, I started playing around with some JavaScript. This is what I came up with:
<html> <head> <title>Test</title> <script type="text/javascript"> window.onload = function () { var mX = 0,  mY = 0, sX = 0,  sY = 0, queue = [], interval = 200, recIntv = null, playIntv = null, b = document.body, de = document.documentElement, cursor = document.getElementById("cursor"), record = document.getElementById("record"), play = document.getElementById("play"); window.onmousemove = function (e) { e = e || window.event; if (e.pageX || e.pageY) { …