Working for Visual Studio I’ve become convinced that, in reality, the ultimate mission of my team is to put developers out of business.  On the Visual Studio web site you won’t find that exact statement.  The closest vision you get is “Rapidly build applications for Microsoft Windows, the Web, and mobile devices” or maybe you’ll stumble on a presentation entitled “Tools to Power Your Vision”.  I can’t exactly tell what Ari means by “Powering” your vision.  I would adjust it to “Tools to turn your visions into reality.” Where am I going with this?

In X years there will no longer be a need for programming languages.  Instead the tools will speak the language of the person who has the software vision rather than simply that of the person who knows how to translate that vision.  This is not to say I haven’t met developers that wouldn’t be capable of designing great end user software, but generally speaking, the talents required for this goal are not the same talents required to write the most efficient algorithms.  I’ve run these comments by a few people who looked at me a little odd, maybe the same way you’re looking at me now.  Think about it. 

First machines spoke 1 and 0, then they spoke assembly, then high level languages like C came along (complete with their own automated “translators”), and more recently the rise of “interpreted” languages such as Java, VB, have been all the rage.  Interpreted really just means that the language is close to the language we would use to describe what something is doing so it has to be translated an extra time before the machine knows what we are talking about.  Sometimes you could interpret the goal of Visual Basic as “Remove the barrier of coding from the developer.” I think Microsoft called it RAD.  I see all this progress and it makes me realize that what we are really doing is enabling more people to, as the commercials say, “realize their potential” without having to speak a low level language.  

Don’t ask me which version of Visual Studio will first have the option to remove what we would currently call code completely, but its coming and IMO that’s what our true vision is.  It’s not a bad thing by time it’s here I’ll probably have either found something else to do or I’ll be retired. 

What led me to write down my wacky prediction?  2 frustrating hours spent writing a 1 page SQL query on a poorly designed database in an attempt to save 10 minutes a day of my time.  It had been a while since I “spoke” SQL and the computer didn’t yet understand my explanation of “But all I want is to cross reference these ID numbers with string information stored in several tables across two databases”.  It also didn’t respond to pounding or my threats to turn it off.  In the end I was triumphant and was able to watch the results of my query fly by only to realize that the database I was going against was not ‘live’ enough data to save me my 10 minutes a day.   I’ll be happy when there is no need to learn new languages. 

Thanks for reading,