As a computer hobbyist and tinker, I love making things work, but as an IT professional I just can’t countenance this kind of hacking. The sad truth is, regardless of whether or not something works, product support is usually more important. That’s why I’m singing the support matrix blues: I don’t care if you say it works, just tell me if it’s supported.
“Supported” and “Functional” Are Not Synonyms
I hear it all the time from IT product vendors: our product works great and we support it with Oracle, VMware, Microsoft Windows, and every other application. But what about the opposite? Does VMware support running in this configuration? Will it run in a virtual machine? And can I call all the involved vendors when things fail, or will they just point fingers?
The truth is, interoperability in modern IT environments is tricky enough without the added pressure of production, downtime, and hostile users. Although many of us are clever hackers by nature, we have to set this aside and be as conservative as possible when designing production systems. We just can’t afford to use components that aren’t supported.
The time has come to draw a line for vendors: Stop encouraging buyers to use configurations that aren’t supported by everyone involved, and stop confusing the terms, “supported” and “functional” when discussing your products. If it’s not on the hardware compatibility list (HCL), if not supported regardless of what you say.
The HCL Bill of Rights
Buyers deserve better than empty promises:
- A hardware compatibility list (HCL) or support matrix is a one-way list of approved functionality. In other words, it’s a way for Vendor A to affirm that Vendor B’s product works with their own. Presence on the list is usually initiated by Vendor B, however, who often bears the financial and functional burden of securing a spot.
- A good support matrix should list revisions as well as products, preferably down to point releases of drivers, firmware, and hardware. Often, special versions are produced just to attain certification with some popular vendor, and it’s up to the buyer to ensure that he is using these magical revisions.
- Hardware compatibility lists should be open to the public for browsing, querying, and deep investigation. Take a look at the VMware ESX HCL for a good example. Updated continually, it can be queried interactively or downloaded on demand as a PDF file. Nice!
Vendor support matrices are fallible, of course. Just because the list says it works doesn’t mean it does, and just because it’s not on the list doesn’t mean it doesn’t. But presence on the support matrix lets the end-user (also known as “the buyer”, “the customer”, and “the whole reason for the existence of product vendors in the first place”) get everyone on the phone when something breaks.
Why isn’t everything on the HCL? There are lots of good reasons:
- Some things just don’t work. Not every implementation of iSCSI, NFS, or SMB is equal, and some just don’t interoperate. Obviously, this is a very good reason for product to be absent from the HCL, and one should always assume that things don’t work rather than assuming that they do.
- Some things work reasonably well but fall apart in production or under load. These may or may not appear on the HCL, the listing means that buyers have some recourse when things fail in production. These can be difficult to locate in the lab or proof of concept testing, though both testing and listing are valid considerations when making a purchase.
- Some vendors lack the resources or motivation to get their products listed on all of the various compatibility lists and support matrices. This is fine: if you don’t want to go through the motion of getting on the supported list, I don’t have to buy your product for that application!
- New products often take a while to get on the supported list, and vendors commonly advise customers to buy and implement them anyway. “It will be included next month,” they will claim, “go ahead and buy it now.” This is absolutely irresponsible behavior, and no customer should buy a brand-new product that’s not listed on the empty promise of their sales rep.
“But it’s just a paper certification,” I heard the vendors cry. “It doesn’t matter if things work, all you have to do is fill in the paperwork and pay the money.” This may or may not be true, but it is absolutely an irrelevant argument. Do you really think that VMware, Microsoft, Oracle, or anyone else will decide to support your broken application just because you derive their paper certification requirements?
As an IT professional, I subscribe to a simple rule: I won’t recommend a solution that’s not listed in the support matrix or HCL. “I don’t care if it works, only that it supported,” is really a cynical overstatement of this position. Of course I care whether or not a solution works! But merely claiming that something works is not sufficient for me to recommend it. I need to be able to demonstrate that it’s a supported configuration. Show me the listing, and I’ll start recommending it.