October 28, 2013

What exactly is a Service?

ServicebuttonWith the advancement in cloud technologies more and more companies are getting on the Anything-as-a-Service train but over the years the term services became so overloaded that people are having hard time understanding what it means. As any other technology term you hear lately some clarification may be required to understand what the person in front of you meant with "I sell services".

According to Wikipedia's definition of service (as a system architecture component) it is a set of related software functionalities that can be reused for different purposes, together with the policies that should control its usage. In today's cloud environment I would add two more things to the services definition:

  • Those functionalities must be exposed either through interoperable APIs or accessible via browser (i.e. must not be bound to a particular implementation platform)
  • And they must be accessible over the network (i.e. can be accessed remotely)
Although those characteristics should be enough to define what a service is, we really complicate the matter by thinking that everything that can be accessed over the network is a service. Well, for decades we've been accessing databases over the network - is it true to say that traditional databases are services? Comparing with the definition above the answer is "yes": it can be used for storing data for different purposes, one can use ODBC to access it from various platforms and languages and it is accessible over the network. Does that mean that by running my single instance DB on my home computer makes me Database-as-a-Service (DBaaS) provider? Not really! Here are few more things that we need to consider when we talk about services:
  • Services are normally exposed to the "external" world. What this means is that you offer the services outside your organization. Whether this is outside your team, your department or your company it is up to you but you should consider services the offering that generates business value for your organization.
  • There are also multi-tenant - this means that the services you offer can be consumed by multiple external entities at the same time without any modifications.
  • They are always up - third party businesses will depend on your services and you cannot afford to fail them hence avoiding single point of failure is crucial for the success of services
  • Last but not least services must be adopted - if you do not drive adoption through evangelizing, partnerships, good documentation, SDKs etc. the services you offer will not add value for your organization

Transitioning from a traditional software product organization to a services organization requires lot of effort and cultural change, and the best way to approach it is to clearly define the basics from the beginning. 

August 07, 2013

How IT Pros Are Destroying Their Own Jobs

Win-Lose-DiceNot surprising to me my yesterday's post Why Shutting Down TechNet is Not a Problem for IT Pros sparked quite passioned comments from IT Pros. I have to admit - I was wrong! Shutting down TechNet is a problem for IT Pros! But not because they will lose the ability to install software for free but because the hater that this event sparked among them hinders their abilities to look beyond this immediate issue and consider the change they need to make.

From the comments 30% contained rage against the cloud, 30% against the developer and 30% described how much IT Pros' job is to install, maintain and troubleshoot servers and environments or plainly said how much they love to hug their machines. The remaining 10% were valid concerns that can be summarized under 1.) cloud environments are hard to configure and 2.) Microsoft is acting rude.

Let me first address the 10%!

Cloud computing as a concept is not new except maybe the name. However the software automation that cloud environments achieve was not available several years ago. Bringing up a full application stack required several hours if not days for the IT Pro in the past while now it is available with the click of a button. Whether the cloud will live to its promise or not only the time will show but one thing is for sure - more and more automation will be added, which will require less and less need to perform the current admin tasks.

Regarding Microsoft and whether they've been acting rude this should not surprise anybody. They (still) have power and they decided to exercise it. I will emphasize once again though - I don't think shutting down TechNet is such a big problem! There are other ways to get Microsoft software for evaluation (note: not production usage) and I truly believe that if Microsoft wants to stay relevant and if they are true to their "devices and services" strategy they need to make their software affordable for evaluation. If not, as one of the comments said - there is always Linux.

The remaining 90% though are the ones that worry me about the IT Pros. For people who will always be on the liabilities side of the balance sheet they should pioneer the cloud and not blindly claim its uselessness. Throughout the comments I noticed that certain professionals do not even clearly understand the basic cloud concepts (like public and private) and what scenarios those can enable. There are numerous examples where IT organizations embrace the cloud and not only keep their jobs but become the Achilles heel of the enterprise.

Which brings me to the second point - the hate against developers and in this capacity the Lines of Business (LOBs). Everybody who works in a company that has at least one IT guy is aware of the tensions between IT and the "others". And being realistic if the IT Pro needs to serve several masters (developers, users and maybe customers) and if it takes weeks if not months to gets servers provisioned neither him nor the "others" will be happy. The solution for the IT Pro guy is to become more nimble, more agile. Partnering up with the business groups and development teams instead complaining will bring them more success and fame.

For the remaining 30%, the people who want to hug their servers my only advice is to let it go. Unless you feel weird satisfaction by installing the same software again and again you need to move on and start bringing value to the table in the form of fast and flexible solutions.

As I mentioned in my previous article - it is time for IT Pros to change unless they want to become extinct.

August 06, 2013

Why Shutting Down TechNet is Not a Problem for IT Pros?

Change-sameWhile reading the news yesterday I stumbled upon the following article in Puget Sound Business Journal - Why is Microsoft alienating its biggest customers? IT pros want TechNet back. Everybody has the right to complain and sign a petition but more important is to understand the message Microsoft sends. Some think of it as "Microsoft doesn't care about IT Pros anymore", and they may be right; but the message sounds to me more like "Hey, IT Pros - the world is changing!" Although I think Microsoft could be a little bit more responsive to the complaints, I don't think IT Pros should be so worried. Here is why.

The Problem With The Downloads


While $349 annually for the whole collection of Microsoft software is a very attractive price I think free software is a better option. Although slow, Microsoft showed its commitment to change in the last few years. Although I don't think that Microsoft will ever release Windows (client or server) under Apache license they will continue to provide Beta versions for evaluation for free. 
Next, the price Microsoft charges for software will continue to get lower. Just compare how much you paid for Windows 7 license and how much you paid for Windows 8 license - quite significant difference. I do expect the same to happen to other products that are in the consumer category (Office at least).
Last, if you still insist to have unlimited downloads of everything Microsoft then you can subscribe for MSDN. Yes, it is a few hundred dollars more annually but you also get more value from it and… wait! you can now claim yourself as a developer!

The Problem With The Installations


I will admit that I do install software for evaluation quite often. And I have to admit that I hate it! Installing and configuring of software is a huge waste of time if your end goal is to see whether it will work or not. I would rather click a button and have everything I need running in few minutes without the need to download/install/configure. And this is one of the promises of the cloud - you can get the software you need up and running in minutes, do your testing and move on. Well, it may cost few bucks to run it for a day but it is not such a big deal. And, who knows - Microsoft may decide to offer free compute time for evaluation purposes. 

The Problem With The IT Pros


The biggest problem I think though is the IT Pros themselves. They still look at their jobs and responsibilities as the people who install software. It is time for IT Pros to understand that in is near the day when software will install the software, and they need to think how to position themselves in this environment. The best option for them is to work closely with the Business Groups and provide the IT services needed to support the business or to transition to a DevOps role that again will provide value for the business.

It is clear that Microsoft understands that the world is changing and the IT as it used to be is nearing its end. It is time also for the IT Pros to understand that just installing software is not a value proposition in the enterprise.