Selling big complex products is always a challenge. I recently was asked why not make the product simply available on the cloud for free sign-up and access so that people can try it out for free. Here is my response.
Been There, Done That
In 2010 we launched our cloud based BPM initiative, and we set it up to allow free access to people. We ran this until around 2014. Obviously this was early days, and if we did it again now we might do a much better job. We still have BPM in the cloud and the same thing on premises however you want it. But we don’t offer free trials on the cloud.
We learned a couple of things. The main one is that enterprise application integration and BPM are inherently complex subjects. The problem is not drawing a diagram. The problem is wading through all the myriad networks of existing systems to determine what needs to be called when, and what all the boundary conditions are going to be. Your legacy systems were not designed to be “integrated to” and they lack proper documentation of any kind for use in the next generation technology.
VM Approach Preferred
Instead of offering people a free trial on the cloud, we offer a free trial by downloadable VM. One downloads a 4 to 5 gigabyte file, and in ten minutes you can have it running using VM Player or other such tool. We put it on a freely distributable version of Linux, include the community version of Postgres, and free versions of everything else you would need.
With a free VM, you have everything that you would get from a free cloud trial, except these advantages:
- Enterprise integration is not something you do casually in an hour or two of trying. Even with the powerful tools we offer, it takes a serious effort to even detail a problem in that space, and you can only appreciate the powerful techniques when in the middle of a very sticky problem.
- To put it in terms that most would understand: Oracle making a relational database available on the cloud as a try-before-you-buy service would make no sense because the kinds of things you have to do with a database are not done in a couple of hours of fiddling.
- Downloading a VM is pretty quick and easy. It takes about 10 minutes of work to get it running, but that is honestly not much more than accessing a cloud service.
- With a cloud service, you can’t save versions as you go, and restore to that point like you can with a VM. A VM will allow you to prepare a demo, and save it in that state, so that every demo starts in the same situation. With the cloud, everything you do is final.
- The agile approach means you want to try things out quickly. With a VM you can do this with the confidence that if you decide that is a wrong direction, you can always go back to the last saved copy.
- With the cloud you cannot give a copy to a coworker. Giving a coworker access to your cloud instance means that they will be doing things in there while you are. With a VM you can have as many copies as you want running simultaneously.
- WIth a cloud service it is difficult to work on two independent projects at the same time. If the vendor allows you two copies of the cloud service, then you could do it that way. But with a VM you can have two or more copies, one for each concurrent project if you choose. When one project goes on hiatus, you shut down the VM assured that if it starts back up again you just need to restart the VM. There is essentially no cost in storing the dormant VM — but that is not the case in the free-trial cloud versions.
- You can not access a cloud service from a highly secure location. You might or might not be able to bring a VM into such a situation.
- Typically with a cloud approach, you get a limited time… like one month … after that it is all lost. You might think that is good for sales, but only for sales if very simple software. Learning the details of enterprise integration takes months and the prospect of losing it all after one month is a significant barrier to potential customers.
I don’t mean to say that a “free trial on the cloud” approach is a bad idea. It is great for products that can be learned in a few hours of fiddling. But the above limitations are real when dealing with a system designed to handle big problems. We have opted for a VM approach because it is a better approach for learning the system, teaching the system, doing development, and also for doing demonstrations of solutions built on the system.