I would like to welcome everyone to this developer site and community.  We have come a long way to meet at this point.  I thought it would be good to give a bit of history of how we got here. 

Storage Management, on a large scale, has been difficult to reach.  There have been so many attempts in the past starting with network management (SNMP) and the like, and trying to apply that to storage was less than robust.  Other attempts by using certain standards seemed the right thing to do, but they tend to grow out of control, get too big and slow (CIM/SMI-S).

Doing management over the internet or web seems to be the direction we're headed since the cloud and web applications are taking the stage front-and-center.  So Web Services seems to be a good fit, however, we geeky engineers decided that we should broker objects around on top of that infrastructure either because it's cool, or because we were afraid there wasn't enough power in the infrastructure to handle it (SOAP-based Web Services). 

In the midst of all this, we forgot to look at things in a simple yet scalable manner. In my research to find a thinner SOAP-based Web Service, I found that there is a web service architecture style called REST (Representational State Transfer) that has been around since the invention of HTTP.  Because of all the pushing and shoving around having to connect in an RPC/service endpoint manner, with strict contracts, etc., we missed the boat on what has been there all along.

Eureka! HTTP + URIs = RESTful Web Services.  AND it scales to the internet.  All managed resources are addressable and discoverable.

Using REST replaces our 264 vendor-unique SOAP Methods with 6 industry standard HTTP Methods (and not to mention using the HTTP Response codes instead as well).

It took me about an hour to prototype a RESTful Web Service call using HTTP GET to respond with an XML packet full of interesting data from our ISE storage device.  The next day, I was creating volumes (HTTP POST) on the same device.  The simplicity and speed of the transactions convinced me that this is the way to go.

In just a few weeks, I had completely come to parity with our other management interfaces (SNMP, SSH CLI, Web UI). In fact, I'm able to do more with our new RESTful Web Service (named CorteX) than the others.  It took me only a day to develop the firware update model to push (POST) FW updates to our device. AND in only 3 lines of C#/.NET, I can push the file to the device to start the process (I'll publish those 3 lines in this forum eventually).

Now the goal is fo CorteX to be generic enough to apply to other storage devices and services.  I like to think of CorteX as the "plumbing among storage services".  If we apply CorteX to other storage devices and appliances, the future of true "application-based storage management" could become a reality.

Again, welcome to this forum.  Please feel free to ask questions, give testimonies, publish code snippets, etc. We're here to have fun too!

Jeff