Salesforce Reaches for Apex

Apex, the new application development platform from CRM innovator Salesforce.com, means that the future is here -- or at least that it is on its way.


Companies Mentioned
Posted on Nov 20, 2006

Salesforce.com has a new idea, and the question is whether your company will bite. At stake, Salesforce.com's CEO Marc Benioff claims, is no less than the future of software. The concept is a new platform called Apex. And, despite a couple of gotchas, there's a good chance there will be an Apex, or something much like it, in your future. Here's the pitch: It's not enough that you have on-demand applications like Salesforce.com's CRM system. You need more robust functionality, more customizations, more things that make your business run better than your competitors'. Problem is, that means not only lots of custom code, but all the attendant back-office hardware and software to run it. And more database administrators and programmers to keep all the lights on. So, what if you could do all of your customizations and run them in an on-demand environment on a bona fide relational database, one that gave you programmatic access -- via Web services -- to all the rest of the goodies in Salesforce.com and its partner products? It would, at a minimum, mean you could lighten your total techie load significantly by foisting all that responsibility and cost on your on-demand partner. You could also stop worrying about upgrades and compatibility as versions change, because your on-demand partner would handle those issues, too. And, perhaps best of all, you wouldn't be limited to the kind of CRM applications that have been Salesforce.com's calling card for the last six years: You or an ISV could write any piece of enterprise software to run on Apex, and thereby run in an on-demand environment. Sounds good, and, to a certain extent, it is. The idea that on-demand can and should be an option for a significant share of your enterprise software stack has always been a good one. If an application is providing non-competitive functionality, you can spend less time and money by using an on-demand version than by keeping it on premises. If a viable on-demand development environment would help facilitate that, it could be a great way to expand your innovation without expanding your IT budget. But, here's the gotcha: It's not clear how well Apex is going to work. The first problem is that it requires a new programming language, a hybrid version of SQL that comes with some important limitations. If you're like most companies, you're trying to limit the development languages you use. There are also limits on what you can do with Apex due to the requirements of running in an on-demand, multi-tenant database environment. So, at least at first blush, it looks like you won't be able to do everything you might want to do with Apex. And then there are the activities that Salesforce.com administrators will restrict. If you do something programmatically that threatens to take down the Salesforce.com database, the vendor will understandably try to stop you, and your program, too. The company is even talking about limiting your use of Apex according to some safe programming rules. Those lines, and details like pricing, are still to be determined. So, I applaud the first attempt at a truly open on-demand database development environment, while at the same time I worry that Apex might not be the one that succeeds. But credit Benioff for another good idea, even if his might not be the one that rules the market in the next couple of years.

Top Enterprise Software Planning (ERP) Comparison