Over the last few months, something has been sticking me in the left side of my brain as it pertains to computing and the overall feel to where we are in computing.  This came about in some great conversations during the recent MVP Summit and sparked this article.  The stick twisting around in there is: Is computing going the direction we need it to?

Wow, that’s a question that has petabytes worth of responses that can lead to nowhere of a direction or conclusion.  Let me be a little more specific.  Is computing moving in a direction to promote intelligent software, managing realistically advanced to small business sized hardware?

Govern the way a government does

Over the last few years, we’ve seen a vast amount of effort being put into governing software as it pertains to resource utilization.  In SQL Server, we see this directly with Resource Governor.  For anyone not in the SQL Server area – Resource Governor allows us data people, the ability to control or cap __resource consumption for specific actions of events that run amuck on a database server.  So in terms of say a query run by application widget controller – widget controller comes along and given a programmers ability to write T-SQL, it consumes a great deal of CPU on the database server.  That CPU is ideally needed for the other 10 thousand transactions that need to execute as well.  Well, if widget controller is governed, we can in so many words, cut widget controller off at the wrists and allow our database server to continue on, satisfying the world of data needs.

This governance is the point of the question on the direction of computing.  Are we really going down the right path by saying we should stop said widget controller when it does the bad mojo to the engine?  Or should we be writing intelligent logic in which widget controller knows how to write a real request to SQL Server without trashing it?  Take this further – should we be writing engines that have the intelligence to handle this in a logical manner in which it does not starve or promote a lack of response to other data service needs?  Looking at this, we already have yielding, page swapping…the management of resources actually will start to work it out while the OS completely becomes unresponsive, of course.  But are those archaic methods still intelligent enough for one, to keep up with what we need, and two, manage the resource adequately?  Does all this matter or even feasible in a world where we could literally start hardware on fire if we use the real capabilities of that hardware?

The Answer – Like I have one?

There is no answer – this is a conversation piece on our technological capabilities and future.  Truly, we cannot answer or come up with a solution to what we’re discussing in this article.  What we can do is start to think about it in the small pieces of code we write, the applications we create, the engines we install and then push those thoughts to the teams that write things like SQL Server or Oracle (ha! Think Oracle people will listen?)

Governance of resource consumption is a good thing.  Don’t get me wrong, we need it to protect our services.  Even more as data architects come along and promote a design that has a heart beating of data right in the middle of it all.  If the heart has an attack, there is a long hospital stay and maybe even a defibrillator or two involved.  That’s where consultants like me come in 😉

What I’d like everyone to think about is, if we go about the direction of putting so much resources, not the hardware type but the people type, into governance, are we avoiding the true need to make what we create intelligent enough to know better and to handle the resources, now the hardware type, that we have advanced in computing to hand over to software?

It’s a deep conversation and one I have a feeling many of you will sit there thinking about, realizing just how much we govern hardware resource consumption and one that may just get you writing better code, designing better solutions and making better feedback to the creators that drive our technology.  You may not think it is true, but they really do take what we think into consideration.  If we all stop using SQL Server, think they would do as well with it?  Nope.  Now, the cloud is a different story.  We’re stuck with that no matter what we say 😉

Happy Computing, Everyone.  Let’s make sure the future is going to a future we can be proud of.