Category Archives: salesforce.com

Quick thoughts on Salesforce and Google Cloud Platform alliance

image

Yesterday Salesforce and Google announced a strategic partnership:

1. Salesforce named Google Cloud as “a preferred public cloud provider”. Salesforce says it “continues to invest in its own data centers”. However it will use public cloud infrastructure “for its core services” as well, especially in “select international markets.” Why is Google Cloud Platform (GCP) just a preferred partner and not the? Well, “AWS is a great partner”, as the release also notes.

2. New integrations will be introduced between Salesforce and G Suite (Gmail, Docs, Google Drive and Calendar for business), and there is a promotional offer of one year’s free G Suite for Salesforce customers. Note that the release also says “restrictions apply, see here”, with the see here link currently inactive.

3. Salesforce will integrate with Google Analytics.

Google has also posted about the partnership but adds little of substance to the above.

Why this alliance? On Google’s side, it is keen to build momentum for its cloud platform and to catch up a little with AWS and Microsoft Azure. Getting public support from a major cloud player like Salesforce is helpful. On the Salesforce side, it is an obvious alliance following the public love-in between Adobe and Microsoft Azure. Adobe competes with Salesforce in marketing tools, and Microsoft competes with Salesforce in CRM.

Google will also hope to win customers from Microsoft Exchange, Office and Office 365. However Salesforce knows it has to integrate nicely with Microsoft’s email and productivity tools as well as with G Suite. The analytics integration is a bigger deal here, thanks to the huge reach of Google’s cloud data and tools.

Microsoft and Salesforce: Office 365 integration in Salesforce 1

Salesforce has posted a video showing Microsoft Office 365 integration in the forthcoming version of Salesforce 1, its cloud platform and mobile app.

The demo is not in the least elaborate. It shows how a user opens the Salesforce 1 app on an iPhone:

image

searches for a document on Office 365 and previews in in the app:

image

taps the Word icon to edit in Word on the iPhone:

image

and shares the document with a colleague:

image

Not much too it; but it is the kind of workflow that makes sense to a busy executive.

This interests me for several reasons. One is that, historically, Salesforce and Microsoft are not natural partners. Salesforce CEO Marc Benioff loves poking fun at the Redmond company. I remember how he spoke to the press about “Microsoft Azoon” soon after the launch of Azure. He did not believe that Microsoft grasped what cloud computing was. Of course his product also competes with Microsoft’s Dynamics CRM.

That said, Salesforce always tied in with Microsoft products like Active Directory and Outlook, because it needed to. It could be the same today, as Office 365 has grown too big to ignore, but I am sensing a little more warmth from Benioff in Microsoft’s Nadella era:

image

It is also worth noting that the workflow above needs iOS Office to work well. The example edit could have been done in Office Web Apps, I guess, but the native app is a much better experience. Microsoft’s decision was: do we keep Office as a selling point for Windows, or do we try to keep Office as the document standard in cloud and mobile, as it has been on the desktop? It chose the latter path, and this kind of partnership shows the wisdom of that strategy.

Making sense of Salesforce 1 (it’s all about mobile)

At its Dreamforce conference in San Francisco, Salesforce has been hyping up its newly announced Salesforce 1. The keynote left us in do doubt: it is fantastic, it does mobile, it does cloud, it does “internet of things”.

image

Co-founder Parker Harris describes Salesforce 1 at Dreamforce

But what is Salesforce 1? For those of us who like fluff-free facts, it has been difficult to discern. The APIs that make up the Salesforce 1 platform seemed on the face of it to be the same ones Salesforce has always had; yet the company says it has multiplied the number of APIs by 10 to create Salesforce 1 (a figure I still find hard to understand).

It is beginning to make sense to me. Salesforce 1 is a brand, a platform and an app.

As a brand, Salesforce 1 encompasses all the APIs that form the Salesforce platform. The best place to understand the current state of Salesforce 1 is here, where you can see links to all the APIs, including Force.com, Heroku, ExactTarget, Radian6 (social media listening), Pardot (sales automation), Desk.com (service cloud) and GoInstant (build real-time multi-user apps). Those individual APIs still exist in their own right, but Salesforce 1 is a new brand that encompasses all of them.

There is also a Salesforce 1 app for iOS and Android. This is mainly an HTML5 app, which makes it odd that it is iOS and Android only. As I understand it, you can also use a mobile browser and get a similar experience, so it might not be too bad for Windows Phone users after all.

The Salesforce 1 app is actually an evolution of the Chatter mobile app. As I understand it, it is built with the Aura framework, for creating a responsive user interface, with strong support for touch control. The Chatter app was renamed Salesforce 1 at the start of Dreamforce.

The Salesforce 1 app is built around a feed, and Salesforce describes it as a feed-first approach. Chatter has support for Publisher Actions, which now in Salesforce 1 have a more prominent role, making the feed capable of initiating tasks and being a mobile-friendly centre of operations. Some vendors I have spoken to, such as FinancialForce (wholly owned by Salesforce), see this feed-first approach as being the core of what Salesforce 1 is about. 

When Salesforce talks about creating Salesforce 1 apps, that might refer to either of two things.

One is to create custom apps for your Salesforce users, which you can do without needing much code in some cases, which will be viewed through the Salesforce 1 app.

The other is to use the Mobile SDK for iOS or Android to create a native app. This does not have to be an HTML5 app, but could be if you want the quickest route to something that works.

According to CEO Marc Benioff, speaking to the press, much of the effort behind Salesforce 1 was in making the Salesforce browser UI properly mobile-friendly. He said that this includes mobile client libraries as well as the server APIs. Salesforce has an rapid visual builder for browser apps running on its platform, called VisualForce, and apparently getting these apps working nicely on mobile took huge effort.

Benioff gave the impression that VisualForce now works perfectly on mobile, but the booklet given to developers expresses reservations:

Only VisualForce pages enabled for Salesforce Mobile Apps and attached to a tab can be added to the Salesforce 1 navigation menu. Note that you may have to optimize these pages to work and/or display correctly on a mobile device.

Nevertheless, you can see the intent here, that anything running on Salesforce will work well on a mobile device. Benioff says that he only takes a smartphone with him when travelling, no laptop or even tablet, and he expects to be able to do all his work through it.

You could therefore call Salesforce 1 the optimisation of the Salesforce platform for mobile, subject to the iOS/Android limitation.

According to Salesforce then, the new mobile-enabled platform is more productive than other app-building tools. The idea is that many corporate apps can be implemented to run in the existing Salesforce 1 app, which perhaps more correctly should be called a client, while apps that need to be deployed more broadly, such as to consumers, can be built using the Mobile SDK and deployed to the App Store or Google Play.

Developers of course are used to these kinds of claims and will be sceptical. Still, if you have adopted Salesforce to the extent that all your users are on the system, then it might make sense to build apps with Salesforce 1 and have a lot done for you, including user management and authentication.

There is talk at Dreamforce of the “app gap”, the fact that typical enterprises currently have most of their apps designed for the desktop, but are planning for most of their apps to be mobile. That gap is an opportunity for Salesforce 1.

Against that, note that apps built with Salesforce 1 are not portable to other platform, and there are the usual questions about the extent to which businesses are willing to entrust their business to a third-party cloud platform, and if so, which cloud platform is the best choice.

Is Salesforce 1 the same old stuff repackaged, or something new? It is a bit of each.

As an aside, the focus here on iOS and Android will not be helpful to Microsoft/Nokia trying to sell Windows Phone in the enterprise. You can also understand why Microsoft is partnering with Xamarin to enable its .NET, C# libraries to work on iOS/Android. If enterprises are going mobile and largely not using Windows Phone to do so, Microsoft has no choice but to give full support to those rival mobile platforms.

Salesforce 1 and the cloud platform wars

Salesforce has announced Salesforce 1, but what it is? Something new, or the same old stuff repackaged?

image

Even if it is something new, the ingredients are familiar. Salesforce 1, I have been told,  is a new brand over the Salesforce platform, though it does not replace individual components like Force.com or Heroku.

At heart, Salesforce is a multi-tenant cloud database and web services API, designed originally for CRM but easily adapted for other purposes, and easily extended by third-party partners with their own apps. If you review the components of Salesforce 1 you will find the same core platform and services as before.

If you want a quick overview of what makes up Salesforce 1, I recommend this list of platform services, including quick app development using browser-based tools, Heroku for code-centric development using Ruby, Java, Node.js or Python, web site development with site.com, a mobile SDK for iOS, Android or HTML5,  role-based user access management, private app portal, translation services, custom databases, social and collaboration services, reporting and analytics.

There is a new Salesforce 1 mobile app announced which you can customize. It only runs on iOS or Android; no support for Windows Phone.   

The Salesforce 1 proposition is that user identities are managed in the Salesforce database and that you build your cloud applications around them. Therefore the minimal Salesforce 1 product is One Enterprise App, at $25 per user/month, which gives you identity services (and a few others) and the app platform.

I would imagine that most Salesforce 1 customers will also use other Salesforce 1 products such as CRM or the Service Cloud. CRM, for example, runs from $5.00 per user/month for contact management to $300 per user/month for the Performance Edition, including the Service Cloud, workflow approval and unlimited custom apps. There is feature overlap between the various Salesforce products which may explain why the company encourages you to ask for a custom quote.

My immediate reflection on the Salesforce 1 announcement is that it is a cloud platform play. If you agree that the future of business IT is in cloud and mobile, then it follows that the future competitive landscape will be largely formed around the companies that offer cloud platforms. Large scale tends to win in the cloud, so for better or worse only a few companies will be able to compete effectively. Hence the cloud platform wars.

In this context, Amazon is strong on the app platform and cloud infrastructure side, but does not offer a complete enterprise platform, though recent announcements seem to me a move in that direction.

Google has immense scale and Android, but its strong focus on advertising and consumers perhaps hold back its enterprise offerings. If you run Android you are already hooked into Google’s identity platform.

Microsoft, perhaps oddly given its vast desktop legacy, seems to me a close competitor to Salesforce. Where Salesforce has CRM, Microsoft has Office 365, and where Salesforce has its own identity platform, Microsoft has Azure Active Directory. Apps for Office hook into SharePoint and Azure Active Directory in the same way Salesforce 1 apps hook into the Salesforce platform. There is no love between Salesforce and Microsoft, and constant sniping from Microsoft’s Dynamics CRM team. At the same time, there must be many businesses attracted to Office 365 for email and Office, and to Salesforce for CRM, which may lead to some difficult choices down the road. No wonder Salesforce is ignoring Windows Phone.

Interview: Salesforce.com exec Parker Harris on the technology behind the platform

A couple of months ago, I attended Cloudforce in London, where I spoke to Salesforce.com co-founder Parker Harris, Executive Vice President, Technology.

The Salesforce.com platform is interesting for all sorts of reasons. The company has been a powerful advocate of cloud computing from before its adoption by other industry giants, and its service is as far as I can tell well liked by its customers. The technology is interesting as well. The CRM (Customer Relationship Management) application that is the core of the Salesforce.com offering is both a web application and a web service API, with more transactions conducted programmatically than through the browser. The Force.com platform is multi-tenanted, and the company believes that only this type of platform delivers the full benefits of cloud computing. In December 2010 the company acquired Heroku, at the time a company dedicated to running Ruby applications in the cloud, though it now has a broader offering. Salesforce.com was also where I first heard the term “Social Enterprise”, a phrase now taken up by others such as IBM and Microsoft; in fact, Social Enterprise was the dominant theme at Cloudforce.

image

I asked Harris how the company copes with scaling its platform as demand grows.

“We’ve gone through a few changes. We came up years ago with a concept we call a ‘pod’, which is one set of multi-tenant customers. There’s a database in there, there’s application servers, search servers, all kinds of things. So that was a unit of scale. And we invested heavily in capacity planning, just to watch and see how those grow, and so we fill them up to a certain size and then we grow horizontally and add more.”

Harris adds that pods are organised in sets called super-pods, which provides isolation in the event of a failure.

One of the goals is to make the system scale horizontally, whereas the Oracle database on which the platform is built tends to be a vertical unit of scale. "

“We’re doing a lot of research work in looking at horizontal scalable systems like Hbase for example, to look at how can we do more horizontal stores. And then finally we’re in the middle of a process of moving a lot of our processing to completely asynchronous handling, so that as transactions come in they’re being handled in an asynchronous way. Even though the consumer feels like it’s synchronous, the back end will be completely asynchronous, which will then give us even more control and capability to scale.”

In the past I have thought of the Force.com platform as in effect a big database. I asked Harris if that is still the case?

“We have big databases, but I think of it more as a meta-data platform. Behind that meta-data we do have a big database, we also have a big file store, we have a big search engine, which is another unit. That’s really what you know as Salesforce.com. And that’s fully multi-tenant, it’s way at the extreme end of multi-tenancy.

“Heroku is really virtualised single tenancy. So it’s more towards an infrastructure as a service layer. For some workloads and some use cases that’s fine. If you want the predictability of ‘the software I wrote on my computer needs to run exactly the same here’, that’s where that takes place. But you don’t have the higher-level capabilities of Force.com, you don’t have everything working out of the box.

“Where we’re headed is, you’ll have the 4GL of Force.com, you’re going to have the 3GL of Heroku, and you’ll be able to choose.”

At one time Salesforce has a partnership with VMWare called VMForce. What happened to that?

“We don’t have a technical partnership with VMWare, but we do have a close relationship with them. We want to have applications that work in VMWare’s cloud able to move into Heroku or vice versa. Really what happened is, we started the relationship with VMWare and then we discovered Heroku. We were just blown away by the technology there and the team, and that was when we ended up acquiring Heroku, but we still see VMWare as a huge partner. We’re a big customer of VMWare, they’re a big customer of ours.”

You talked at Cloudforce about HTML mobile apps versus native apps, and you seem to be more on the HTML side?

“I was making the point of HTML versus native code. This is an argument that goes on inside of Salesforce, it is a religious debate, but I believe that you can build some extremely rich applications with native code, and you can build them very quickly. The complexity for me happens when you introduce business systems that are on an enterprise platform. If you think about our metadata engine, it’s very powerful, and I can create triggers, I can change the UI, I can do all these magic things, and immediately it works. Change the UI into Japanese, it immediately works.

“If I’m building something 100% native, I have to replicate that platform in the native code, and that’s for me a no-win situation, because this is going to keep moving, and the native code will be behind, it will be playing catch-up. So if it’s for an enterprise business system on a platform like ours that’s metadata driven, you really need to have that be directly from the cloud.

“If you think about the Chatter feed or the business forms, that I believe needs to be HTML5. But I want to use the camera, I want to have files local to the device, that I can open, and various programs, I want location to work, and maybe I want to use the map application: so there are some native assets too. And then when you think of security, I don’t want to have to go to a web page and enter my username and password, and maybe have to VPN in, I don’t want to do that every time I use the application.

“So instead what you do is have a native container that wraps all this HTML5 code, gives you access to things like the camera, but also is a way to store an Oauth token, it now has the right to access my data, and from then on I can just use the application. It’s really high usability.

“I also think we still have a sometimes-disconnected world. That’s frustrating. So I do think there should be a cache, a recent cache of what you’re working on. That’s my view of where we should be going with these disconnected use cases.

“So that’s where we’re going, and we’re open sourcing a lot of this. We have a native container and we’re open sourcing it so people can see how we built it and add to it. We’ve got a UI framework that we’re going to be open sourcing. It’s an HTML5 component framework. Touch, that we announced last year and is going beta now, Touch is built with that framework, and that’s the framework that we will eventually open source so people can use it with their own applications.”

image

Do you use PhoneGap/Cordova for the native wrapper?

“We do. We do a lot on WebKit-enabled browsers, and when you think of the native container, it’s really going through PhoneGap to get to some of the local resources.”

What about your SOAP and REST APIs?

“We have backward compatibility for all of our APIs, because we don’t want to force people to rewrite their code. We do see lots of use  cases for SOAP, but more and more people are doing RESTful interfaces, and when their writing these mobile applications they really want REST APIs so we’re building a lot more of our own.”

How has Heroku evolved since you made that acquisition?

“There are a couple of huge events. One is, they were just a Ruby platform when we acquired them, and now they are a polyglot platform, so they can run many different languages. They’ve also shown how they’ve built support for these other languages, so other people are able to write support for other languages.

“The other big change was when Facebook on their developer page said, if you want to build a Facebook page or application, here’s how to do it, and if you want it hosted in the cloud, use Heroku. There may be others by now, but we saw a massive uptake in the number of applications being created. We’ve seen a huge number of applications grow from when we acquired it to now and with a big spike through that Facebook relationship.

“We have Heroku enterprise bundles that are available now. People are buying Heroku as part of a SELA, or a Social Enterprise License Agreement.

“Developer adoption is still very important. We want to monetise it, but we don’t want to lose this huge asset of the appeal to the developer community. It’s still early for Heroku.”

I also spoke to Harris about the Social Enterprise concept, but will post that separately.

Office 365 for developers: Getting started with Microsoft Napa

One key aspect of Microsoft’s forthcoming Office 2013 is its support for a new app model. The idea is that rather than building local add-ins for desktop Office, you will build web applications that live in one of four places:

  • In SharePoint
  • Within an Excel document
  • Within a Task pane in Excel or Word
  • Adjacent to an email in Outlook
Advertisement

If you have been following Office development for a while, it is hard to supress an initial reaction of “oh no, not another development model for Office.” After all, we have had Basic macros, Visual Basic for Applications, COM Add-ins, Visual Studio Tools for Office, and in the case of Exchange, other APIs such as MAPI and Exchange Client Extensions. Further, most of this stuff still works, which is a mixed blessing as the the whole thing gets more bloated and confusing.

Even so, I can see the sense of the new Apps for Office. One key advantage is that they work in Office Web Apps as well as in the desktop applications. They are also easier to deploy and secure, since they require no executable files on the client, are sandboxed, and only interact with the local document via a JavaScript library. That may not always be sufficient of course, in which case you can stick with one of the older extension models (personally I still find VBA useful), but where it is sufficient, this strikes me as a good approach.

That said, there are plenty of gaps in the list of supported app types:

Application Supported types
Excel 2013 Preview Task pane, Content
Excel Web App Preview Content
Word 2013 Preview Task Pane
Outlook 2013 Preview Mail
Outlook Web App Preview Mail
Project Professional 2013 Preview Task Pane

It would be good to see content apps supported more widely. Still, it is a start.

Office program manager Brian Jones has an excellent post on the background to apps for Office and SharePoint, which inspired me to sign up for a developer preview. Microsoft had already created an Office 365 preview account for me, but this other one is the real deal: you get to administer an entire test organization, complete with SharePoint, Exchange 2013, and all the Office 2013 preview apps.

After sign-up, it took a few minutes to provision, and then I was able to add the Napa development tools to the site. This is itself a cloud app. It is easy to get started: choose the type of app you want and you are in.

image

Napa is a cloud IDE, essentially a code editor with some syntax highlighting and code completion.

image

The real joy, if you have ever done SharePoint development, is how easy it is to deploy. Just click the Run button.

image

Once installed, you can launch the app with a click, provided you have enabled pop-ups on the site. An Excel content app works in the same way, but opens up the app running in an Excel Web App spreadsheet.

I am sure seasoned Microsoft platform developers will find Napa rather limiting, but there is also an Open in Visual Studio button, and all going well you should be able to do most of your coding in Visual Studio, upload back to Napa, and still get the benefit of easy test and deploy.

image

If you are pleased with your app you can easily offer it for sale by publishing to the Office store:

image

The implications for Office 365 are rather profound. It is evolving into a true extensible cloud platform, where businesses can add apps and deploy to their users using an app store model.

That said, you can argue that Microsoft is playing catch-up here. For example, Salesforce.com has had Force.com for years, and I know from visiting the huge vendor exhibitions at events like Dreamforce how strong that marketplace has turned out to be. Salesforce has also enabled its users to build apps in the cloud for many years now.

All true; but Microsoft’s approach does have the advantage of continuity. As I mentioned above, the old stuff still works, so customers can move at their own pace towards a cloud-based platform.

For more information, I recommend this overview.

Twilio: programmable telephony, SMS comes to the UK, Europe

Web telephony provider twilio, which is based in San Francisco, has today announced its first international office, in London. You can now purchase UK telephone numbers at a cost of $1.00 per month, or Freephone numbers for $2.00 per month.

Twilio is not in competition with Skype or Google Voice; rather it offers an API so that you can incorporate voice calls and SMS messaging into web or mobile applications. The REST API lets you provision numbers with various options for what happens to incoming calls (conferencing, forwarding to another number or voice over IP, recording, transcriptions), as well as notifications so that you can get email or SMS alerts.

CEO and co-founder Jeff Lawson came from Amazon Web Services (AWS), and has a similar business model in that twilio targets developers and offers infrastructure as a service, rather than selling complete applications to its customers. Twilio does not own any datacenters, but uses mainly AWS and some RackSpace virtual servers to provide a resilient and scalable service.

The launch partner for the UK is Zendesk, a cloud-based helpdesk provider, which is using twilio to add voice to what was previously an email-based product. Zendesk forms an excellent case study. Using the service, you can provision a support number and have calls redirected to agents, or have a voicemail recorded, using a simple setup procedure. Calls can be recorded and you can have alerts sent when they are received.

What this means is that even the smallest businesses can offer helpdesk support using a pay-as-you-go model.

Lawson observes that twilio is the 6th and 13th most popular API on ProgrammableWeb (he says it is 5th if you combine voice and SMS) and claims very rapid growth in traffic using the API, though he will not talk about revenue. The company has around 60 employees in San Francisco and just one in the UK initially.

The service is also launching in beta for 5 other European countries: Poland, France, Portugal, Austria and Denmark. 11 other countries will be added by the end of 2011, though there are prominent omissions – no Germany or Spain, for example.

I was impressed by the demo and presentation at the press launch. Lawson provisioned a conferencing number and had us dial in during the briefing. He says twilio is engaged in disrupting on-premise telephony applications with a cloud service, in the same way Salesforce.com has done for CRM (Customer Relationship Management). The service is inexpensive to set up; Lawson said that this commodity pay-as-you-go pricing is essential for disruptive technology to succeed, another strategy borrowed from AWS.

There are server libraries for web platforms including Ruby, PHP, Java and C#, and client SDKs for JavaScript, Android and iOS.

Heroku gets Java, Salesforce.com embraces HTML5 for mobile

Salesforce.com has made a host of announcements at its Dreamforce conference currently under way in San Francisco. In brief:

  • Chatter, the Salesforce.com social networking platform for enterprises, is being extended with presence status, screen sharing, approval actions, and the ability to create groups with customers as well as with internal users. Salesforce.com calls this the Social Enterprise.
  • Heroku, a service for hosting Ruby applications which Salesforce.com acquired in 2010, will now also support Java.
  • Salesforce.com is baking mobile support into its applications via HTML 5. The new mobile, touch-friendly user interface is called Touch.salesforce.com.

image

Other announcements include the general availability of database.com, a cloud database service announced at last year’s Dreamforce, and a new service called Data.com which provides company information though a combination of Dun and Bradstreet’s data along with information from Jigsaw.

I spoke to EMEA VP Tim Barker about the announcements. Does Java on Heroku replace the VMForce platform, which lets you run Java applications on VMWare using the Spring framework plus access to Salesforce.com APIs? Barker is diplomatic and says it is a developer choice, but adds that VMForce “was an inspiration for us, to see that we needed Java language on Heroku as well.”

My observation is that since the introduction of VMForce, VMWare has come up with other cloud-based initiatives, and the Salesforce.com no longer seems to be a key platform. These two companies have grown apart.

For more information on Java on Heroku, see the official announcement. Heroku was formed in part to promote hosted Ruby as an alternative to Java, so this is a bittersweet moment for the platform, and the announcement has an entertaining analysis of Java’s strengths and weaknesses, including the topic “How J2EE detailed Java”:

J2EE was built for a world of application distribution — that is, software packaged to be run by others, such as licensed software. But it was put to use in a world of application development and deployment — that is, software-as-a-service. This created a perpetual impedance mismatch between technology and use case. Java applications in the modern era suffer greatly under the burden of this mismatch.

Naturally the announcement goes on to explain how Heroku has solved this mismatch. Note that Heroku also supports Clojure and Node.js.

What about Database.com, why is it more expensive than other cloud database services? “It is a trusted platform that we operate, and not a race to the bottom in terms of the cheapest possible way to build an application,” says Barker.

That said, note that you can get a free account, which includes 100,000 records, 50,000 transactions per month and support for three enterprise users.

What are the implications of the HTML5-based Touch.salesforce.com for existing Salesforce.com mobile apps, or the Flex SDK and Adobe AIR support in the platform? “We do have an existing set of apps,” says Barker. “We have Salesforce mobile which supports Blackberry, iOS and Android. We also have an application for Chatter. Native apps are an important part of our strategy. But what we’ve found is that for customer apps and for broad applications, to be able to deliver all the functionality, we’re finding the best approach is using HTML 5.”

The advantage of the HTML5 approach for customers is that it comes for free with the platform.

As for Adobe AIR, it is still being used and is a good choice if you need a desktop application. That said, I got the impression that Salesforce.com sees HTML5 as the best solution to the problem of supporting a range of mobile operating systems.

I have been following Salesforce.com closely for several years, during which time the platform has grown steadily and shown impressive consistency. “We grew 38% year on year in Q2,” says Barker. This year’s Dreamforce apparently has nearly 45,000 registered attendees, which is 50% up on last year, though I suspect this may include free registrations for the keynotes and exhibition. Nevertheless, the company claims “the world’s largest enterprise software conference”. Oracle OpenWorld 2010 reported around 41,000 attendees.

Fit for business? Google updates App Engine with the Enterprise in mind

Google has updated App Engine to 1.4.3. The new version adds:

Prospective Search API for Python – this lets you register a large set of queries which are executed against a flow of data so you can create notifications or other actions whenever a match is found.

Testbed Unit Test Framework for Python – this lets you create stubs for Google services for lightweight unit tests.

Concurrent requests for Java – a single application instance can now serve multiple requests provided it is marked threadsafe. An important feature.

Java Remote API – the remote API lets you access an App Engine datastore from your local machine.

I have had the sense that Google App Engine is more attractive to start-ups and small organisations than to enterprise customers. It is interesting to see Google working on bringing the Java and Python runtimes closer to parity, as Java is more widely used for enterprise development.

Another initiative aimed at enterprise customers is App Engine for Business, currently in preview. What you get is:

An Enterprise Administration Console console for managing all apps built by your company, with access control lists.

99.9% service level agreement

Hosted SQL:

While many applications can be built on the App Engine Datastore (which uses Google’s BigTable database system), we know SQL is the industry standard for the enterprise, so we’ve got you covered. SQL database support on App Engine gives enterprise developers access to the full capabilities of a dedicated relational database, without the headache of managing it.

SSL to an URL that uses your domain, such as https://myapp.apps.example.com.

Pricing – $8 per user up to a maximum of $1000 per month. In other words, if you have more than 125 users the cost per user starts coming down; if you have 1000 users it is a bargain.

Has Google done enough to make App Engine attractive to enterprise customers? This post from a frustrated developer back in November 2010 complained about stability issues and other annoyances that do not really exist on Amazon or Microsoft Azure; the Salesforce.com platform does have some throttling limitations. But it does seem that Google is determined to address the issues and App Engine for Business looks promising.

The Salesforce.com platform play

I’ve been mulling over the various Salesforce.com announcements here at Dreamforce, which taken together attempt to transition Salesforce.com from being a cloud CRM provider to becoming a cloud platform for generic applications. Of course this transition is not new – it began years ago with Force.com and the creation of the Apex language – and it might not be successful; but that is the aim, and this event is a pivotal moment with the announcement of database.com and the Heroku acquisition.

One thing I’ve found interesting is that Salesforce.com sees Microsoft Azure as its main competition in the cloud platform space – even though alternatives such as Google and Amazon are better known in this context. The reason is that Azure is perceived as an enterprise platform whereas Google and Amazon are seen more as commodity platforms. I’m not convinced that there is any technical justification for this view, but I can see that Salesforce.com is reassuringly corporate in its approach, and that customers seem generally satisfied with the support they receive, whereas this is often an issue with other cloud platforms. Salesforce.com is also more expensive of course.

The interesting twist here is that Heroku, which hosts Ruby applications, is more aligned with the Google/Amazon/open source community than with the Salesforce.com corporate culture, and this divide has been a topic of much debate here. Salesforce.com says it wants Heroku to continue running just as it has done, and that it will not interfere with its approach to pricing or the fact that it hosts on Amazon’s servers – though it may add other options. While I am sure this is the intention, the Heroku team is tiny compared to that of its acquirer, and some degree of change is inevitable.

The key thing from the point of view of Salesforce.com is that Heroku remains equally attractive to developers, small or large. While Force.com has not failed exactly, it has not succeeded in attracting the diversity of developers that the company must have hoped for. Note that the revenue of Salesforce.com remains 75%-80% from the CRM application, according to a briefing I had yesterday.

What is the benefit to Salesforce.com of hosting thousands of Ruby developers? If they remain on Heroku as it is at the moment, probably not that much – other than the kudos of supporting a cool development platform. But I’m guessing the company anticipates that a proportion of those developers will want to move to the next level, using database.com and taking advantage of its built-in security features which require user accounts on Force.com. Note that features such as row-level security only work if you use the Force.com user directory. Once customers take that step, they have a significant commitment to the platform and integrating with other Salesforce.com services such as Chatter for collaboration becomes easy.

The other angle on this is that the arrival of Heroku and VMForce gives existing Salesforce.com customers the ability to write applications in full Java or Ruby rather than being restricted to tools like Visualforce and the Apex language. Of course they could do this before by using the web services API and hosting applications elsewhere, but now they will be able to do this entirely on the Salesforce.com cloud platform.

That’s how the strategy looks to me; and it will fascinating to look back a year from now and see how it has played out. While it makes some sense, I am not sure how readily typical Heroku customers will transition to database.com or the Force.com identity platform.

There is another way in which Salesforce.com could win. Heroku knows how to appeal to developers, and in theory has a lot to teach the company about evangelising its platform to a new community.