Salesforce.com has made its mark, in part, with its "No Software" mantra. I'm sure you can picture the word "Software" with a bright red X through it. This tagline has proven very effective in getting their message across (a message that I for one think compelling). But does Salesforce.com really save organizations from the hassles of 'Software'.
Consider the modern US corporation. Nearly every US company has traditionally "Rolled their own IT" because they didn't have an alternative. Corporate IT departments are currently responsible for (among other tasks) the:
- Management of a data center (with a raised floor, reliable power and tight physical security)
- Purchase and configuration of servers and other computing hardware
- Licensing and installation of a myriad of software packages
- Scheduleing of complex upgrades for each of these software packages as new versions are released (for fear of being dropped from support because they're running an older version)
- Continued employment of a small army of system administrators to keep the servers humming
- Continued employee a small army of DBAs to manage the data.
Does it make sense for a company not involved in the production or delivery of technology to do all of these things? Put another way, should General Mills, the cereal company, employee even one computer scientist?
Advocates of cloud computing would argue no. General Mills should focus on making the best cereal it can. It should buy computing power from service providers that offer it, much like it buys electricity and telecommunication services from companies that offer those services.
Still, all companies of any size (including General Mills) have their own unique business processes and they need custom solutions to satisfy their information processing needs. Cloud computing now offers platforms (Platform-as-a-Service) upon which nearly any enterprise class application can be built. In building these applications software will be written. In fact, Salesforce.com is experiencing much success with its PAAS programming language: Apex. Make no mistake, this is software. Even Salesforce.com itself advocates the use of SDLC (software development lifecycle) best practices when developing an application using Apex.
With this in mind, maybe Salesforce.com should change their tag line to "No Infrastructure". This would more accurately describe the benefits of On-Demand computing. I own't hold my breath.