Beyond the macro jockies: Salesforce lures devs with Java juggle
Serious enough in an Amazon world?
Salesforce is growing: just not enough or in the right direction, it seems. The company that started life serving up customer relationship management (CRM) as a service to the suits is now reaching out to real coders.
The company, which claims more than 50,000 customers, saw subscriptions to its hosted apps increase by nearly 40 per cent for its most recent fiscal year.
But, while revenues have grown, so have losses: from a $97m profit in 2011 to $35m loss reported at the end of January.
A key area the company’s now looking at is becoming a host for apps outside of its signature CRM SaaS and the dev platform that made them: Force.com and Salesforce's "Java-like" strongly-typed Apex programming language.
Being "Java-like" is not good enough if Salesforce wants to break out. The executive leading that break-out campaign is Byron Sebastian who serves not just as Salesforce's executive vice president of platform but also as chief executive of Heroku, the start-up that started life hosting Ruby apps atop Amazon’s EC2 and S3, and which has since broadened its appeal to include Python Scala, Node.js and – yes – Java.
Sebastian came to Salesforce though the acquisition of Heroku in 2010 for $212m. Salesforce knew it needed to change, it just wasn’t sure how and speaking to Salesforce at the time it seemed to believe that Heroku would provide that special something that would allow it to break into the developer field. Buying Heroku and then serving up more than 105,000 Ruby apps along with Sebastian appeared to be the "special something" Salesforce had been looking for.
This month sees the latest evidence of Salesforce's attempt to buy into devs. Its upcoming Cloudforce satellite conference in London will see Salesforce host its first hackers' day, which it has dubbed Cloudstock, with sessions to help train coders in building for Salesforce’s Chatter social apps, Sites.com website hosting service, the Force.com and Heroku.
Sebastian told The Reg during a recent interview: “I’m really on a mission to have a strong voice for developers on the Salesforce platform.”
Salesforce likes to paint itself as a champion of the open web, but the truth is that for years it has promoted a proprietary language and development framework – Apex on Force.com - to customise its trademark CRM apps. It was the equivalent of Macros in Excel from Microsoft for line-of-business managers. That’s changed and in recent years Salesforce has decided it is time to reach out to code heads.
Amazon is now the one to emulate and hosting of apps is a potentially tasty prospect. Amazon doesn’t break out AWS revenues, instead the online etailer categorises them under “other”. In the first nine months of 2011 Amazon posted $30.6bn in sales (up 44.2 per cent) while “other” accounted for $1.08bn – up 70.4 per cent.
In this new world Salesforce cannot remain wedded to just Apex or Force. In fact there’s one language and platform Salesforce must embrace: Java. Heroku might have found fame and footing thanks to hipster coders sipping their lattes from behind thick-rimmed specs in San Francisco’s Dog Patch, but its Java where the money lives – on the server farms and in data centres of the world. And thanks to the sheer volume of Java apps already running on servers in the enterprise, the number of Java coders on the planet present a standing army that Salesforce is aching to tap.
This isn’t Salesforce’s first stab at enterprise Java. Several years back, it teamed up with VMware on VMforce. But this was pre-Heroku. Post-Heroku, VMforce seems unnecessary and inappropriate given Salesforce’s chief executive Marc Benioff’s schtick of railing against the "evils" of the kinds of private clouds built using VMware.
The VMware factor
I put this to Sebastian, and he says neatly that the work on VMforce has “concluded”, with Database.com SDK for Java and Spring in August last year.
The problem is that VMware itself has never had a terribly strong developer story – hence VMware’s own purchase of Spring and Zimbra. Also, we have to question the success of Database.com, the ACID-compliant relational database as a service launched in December 2010. Salesforce won’t release the size of its database-as-a-service but says simply there were 45 billion transactions in the latest quarter – a figure devoid of both context and meaning. At the other end of the scale, there’s Amazon’s AWS with 370,000 transactions per second on 566 billion objects.
Salesforce’s focus on Java also comes at what can only be described as a growing renaissance for the language and platform.
The Oracle-led roadmap is to make Java more cloud-friendly and better suited to big data, multi-language interoperability and mobile. I kick-started deliveries with Java 7 in 2011 and has committed to deliveries every two years – Java had stalled with Java 6 in 2006 under Sun, prompting talk of stagnation and comparisons with Cobol.
Next page: Java unjammed
Oh, dear God
"The deployment model (push source to them, with it being built remotely in Heroku land) takes a bit of getting used to"
Not to those of us old enough to remember the horrors of batch processing. Is cloud computing any use for anything *except* reminding us of how awful computing was in the 60's?
It amused me that when Heroku released their Java support a while ago, they trumpeted about how it was going to free us from the tyranny of 'containers'.
They then proceeded to show an example of how to fire up Jetty (a servlet container) on heroku.
I've recently done some Grails dev on heroku, its very nice. The deployment model (push source to them, with it being built remotely in Heroku land) takes a bit of getting used to and needs commercial approval to use, but works well for what we needed.