Tim Anderson’s ITWriting

Tech writing blog

May 27th, 2009

The battle to be part of the emerging cloud stack: Force.com for Google App Engine

I was interested in today’s announcement of a new Force.com for Google App Engine. App Engine lets you build Python or, since April 7th this year, Java application and run them on Google’s servers. Salesforce.com already offered Python libraries for its Force.com platform, but these have now been joined by Java libraries which are more complete:

The Java toolkit supports the complete Partner WSDL of the Force.com Web Services API. All operations and objects are included in the library and documentation. If you are a Java developer, you can also leverage the Java resources found here.

whereas the Python toolkit only supports “many of the key Force.com Web Services API calls”. I suspect the Java toolkit will have more impact, because it is the language and platform many Enterprises already use for application development.

On the other side, there is also a Google Data API Toolkit for Force.com.

Why is Salesforce.com cosying up to Google? The way I see it, there is an emerging cloud stack and vendors need to be part of that stack or be marginalized.

What’s a cloud stack? You can interpret what the expression means in various ways. Sam Johnston has a go at it here, identifying 6 layers:

  • Infrastructure
  • Storage
  • Platform
  • Application
  • Services
  • Clients

There isn’t a single cloud stack, and all parts of it are available from multiple vendors as well as from open source. It is a major shift in the industry though, and there is no reason to think that the same vendors who currently succeed in the on-premise stack will also succeed in the cloud stack, rather the contrary. You could describe the RIA wars (Adobe Flash vs browser vs Silverlight) as a battle for share of the client stack, for example, and one in which Microsoft is unlikely to win as much share as it has enjoyed with Windows.

By positioning itself as a platform that integrates well with Google App Engine, Salesforce.com is betting that Google will continue to be an important player, and that it will pay to be perceived as complementary to its platform.

A factor which holds back Force.com adoption is that it is expensive. Developers can experiment for free, but rolling out a live application means subscriptions for all your users. Getting started with App Engine, on the other hand, is free, with fees kicking in only after you have succeeded sufficiently that you are generating substantial traffic (and hopefully making or saving some money).

April 7th, 2009

Salesforce.com = CRM + platform?

Organizations evolve; and that can be an untidy process. Salesforce.com started out as an online application for CRM (Customer Relationship Management), and that remains its core business, as suggested by its name. Seeing its success, observers naturally asked whether the company would break out of that niche to service other needs, such as ERP (Enterprise Resource Planning). Sometimes there were hints that this is indeed the case; I recall being told by one of the executives last year that if the company was still called Salesforce.com in five years’ time it would have failed. However, rather than developing new applications itself, the company has chosen to encourage third parties to do this, by opening its underlying platform. The platform is called Force.com, and supports its own programming language called Apex. Third-party applications are sold on the AppExchange, and either extend the CRM functionality or address new and different areas. According to CEO Marc Benioff this morning, there are now 750 applications on AppExchange.

A question I’ve asked a couple of times is whether Salesforce.com gives any assurance to its 3rd party partners that it will not compete with them by rolling into its core platform features similar to those in an AppExchange offering. I’ve not received a clear answer, though EMEA co-president Lyndsey Armstrong told me last year that it just was not an issue; and Benioff today at Cloudforce told me it has not proved to be a problem so far. It is an interesting question though, since if Salesforce.com did choose to expand into new application areas, this kind of competition would be all-but inevitable. It therefore seems to me that the company is more interested in growing its platform business, and continuing to grow its CRM business, than in addressing new kinds of online applications itself. There were also broad hints today that the company intends to improve its platform as an application server.

Let’s speculate for a moment. What if Salesforce gets acquired, say by Oracle, a move which would not be unexpected? If such a thing happened, it would make sense for existing Oracle applications like the E-business Suite or PeopleSoft Enterprise to get extended or merged or migrated into Force.com. That might be less comfortable for AppExchange 3rd parties.

March 13th, 2009

Cloud computing means exporting your IT infrastructure to the Internet

I’ve just attended my first cloudcamp unconference, held during QCon London. We ended up debating how you would explain cloud computing to a non-technical audience. The problem is that different people mean different things by the term.

The consumer perspective is to do with running applications and storing your stuff on the Internet. Gmail, Google Docs, Skydrive, are all examples of doing cloud-based computing from a consumer perspective. Somehow we brought BBC iPlayer, Facebook and YouTube into the mix as well. Some think that the home computer will disappear, replaced by Internet-connected appliances and devices.

The small business and entrepreneur’s perspective is to do with low start-up costs and low barriers to entry. Anyone can run a web site, take payments with PayPal or Amazon Payment Services or Google Checkout, and use cloud services for email and collaboration.

The larger business or enterprise perspective is do with exporting IT infrastructure to the Internet. Close your data centre, sell your servers, move your computing to virtual servers running on Amazon’s elastic compute cloud or some such. There is not much of this happening as far as I can see, though we are seeing virtualization (which might be a first step), and some take-up for software-as-a-service (SAAS) applications like Salesforce.com.

I suppose it is appropriate that the cloud term is fluffy. To some it is synonymous with the Internet; to others it means SAAS applications; to others it means virtual servers running who knows what; to others it means a hosted application platform (platform-as-a-service or PAAS).

The problem with vague terms is that they make discussion difficult.

My favourite usage: cloud computing means exporting IT infrastructure to the Internet.

January 28th, 2009

Comparing digital snaps on a new camera and one five years old

I purchased a Canon IXUS 400 in November 2003. Good camera (for my purposes); but the battery life has dwindled to the point of nuisance and I figured it was time to replace it. I bought a near-equivalent, the IXUS 80IS, for around half the price the 400 cost 5 years ago. I especially like the idea of image stabilization, since I don’t carry a tripod.

I thought it would be interesting to compare the image quality, so I took a snap across the study (without a tripod). It’s difficult to compare like with like, as the newer camera supports higher resolutions. In the end I decided to use each one at its best resolution. The books in the image are around 3 metres (10 feet) away. Here’s the IXUS 400, image enlarged to match the size of the other:

and here is the IXUS 80IS:

Note that this is a very small detail; the old camera is not that bad. Still, a big difference.

Incidentally, I posted my first picture to Flickr earlier today – a snap of the Foo Fighters at Dreamforce last year. Taken with the old Canon, of course.

November 5th, 2008

In which I ask Marc Benioff, CEO Salesforce.com, if his platform is a lock-in

Moving from Microsoft’s PDC last week to Dreamforce (the Salesforce.com conference) this week has been an interesting experience. Microsoft is the giant still trying to come to terms with the new world of the Internet; Salesforce.com is the young upstart convinced that it has the future computing platform in its grasp. Salesforce.com is a much smaller company – revenue of just over $1 billion versus Microsoft’s $60 billion – though oddly Dreamforce is a larger conference, with nearly 10,000 attending, compared to 6,500 at PDC (numbers very approximate). Being small means greater opportunity for growth, and Salesforce.com reported 49% year on year  revenue growth in the last quarter for which figures are available [PDF], ended July 2008.

As for the actual conference, Monday was great, with an upbeat keynote and a fascinating press Q&A with CEO Marc Benioff; Tuesday failed to sustain the momentum with a disappointing keynote (people were leaving in droves as Michael Dell attempted to pitch storage servers to this on-demand crowd), and today is wind-down day.

The press Q&A covered most of the interesting questions about this company. Is it a lock-in? Will it move beyond CRM to a total cloud platform? Will it be bought by Oracle? How is the Salesforce.com platform (called Force.com) different from Microsoft’s Azure? Benioff has a great talent for sound bytes, and made endless digs at Microsoft and its new platform which he called “Azoon”. Microsoft developers are in a black room, he said, but walking out into the bright light of cloud computing – by which he means not Azure, but his stuff, naturally.

I got to ask the lock-in question. Benioff had already observed that making the platform programmable increased his hold on this customers. “It’s exactly the same thing that happened when Oracle moved from version 5 to version 6 with PL/SQL,” he said. “The database became programmable. Customers became customers for life.” Incidentally, Benioff talks a lot about Oracle, which is the database on which Salesforce.com itself runs, and refers to Larry Ellison as his mentor. I asked whether he was now asking his customers to repeat the mistakes of the past, when they locked themselves to Oracle or Microsoft or IBM, and I am going to quote his answer nearly in full:

It’s not a question of repeating the past, it’s just an aspect of our industry that it’s important for vendors to offer customers solutions that give them the ability to fully integrate with the platform. It benefits the customer and it benefits the vendor, and every major vendor has done it. That’s really the power.

I think that it’s true whether you’re writing with Google today and you’re building on the Google AdWords and AppEngine, you have to make the choice as the developer, what’s the right thing? Portability of code is just not something that we have ever got to in our industry. As a developer you want to make the right choice … but the reality is that the customers who are doing deep integration with us, those are customers who are going to be with us for a long time and we’re a strategic solution to them.

It’s not a commodity product. It never has been. If you think of it as a commodity product it’s a mistake … I’m completely honest and open about it, which is you’re making a strategic relationship decision, and you need to look at your vendor deeply, and choose what is the right thing for you. When customers bought Sybase SQL and they wrote Transact SQL, or they bought Oracle and wrote PL/SQL, or they’re writing in Visual Studio, well Visual Studio does not port over to HTML. You’re making a strategic decision …I think that’s important, that you research everything, evaluate everything … you do as a vendor end up with a very loyal customer base over time.

Are you familiar with the iPhone? [sure] So iPhone has a development environment that’s called Cocoa. So you have all these apps now on AppStore, which is a name that we used to have and we’ve given it to them, so when you write on AppStore, when you write on Cocoa, guess what, those apps are in Cocoa. And there’s nothing wrong with that.

I followed up by asking whether Sun’s Java experiment, including the idea of code portability between vendors, was an impossible dream.

If you’re writing in Java, you’re betting on Java. It’s a totally reasonable decision. You make that choice. It’s not portable away from Java, that I know of. I just think it’s an aspect of our industry. You should not avoid it, and vendors should not say something like, oh, we’re gonna offer some level of portability, just be honest about what our strategies are. When you’re writing on SQL Server, when you’re writing on Visual Studio, when you’re writing on Oracle, when you’re writing on DB2, when you’re writing on Force.com, you’re gonna be writing natively to a platform, and then the more open that platform is, the more connections there are to that platform, the more powerful that is for you. But you are making a platform decision, and our job is to make sure you choose our platform and not another platform, because once they have chosen another platform, getting them off it is usually impossible.

I give him credit: he could not be more clear. Even so, if you follow his reasoning, developers have an impossible decision at this point of inflexion in the industry. It is all very well researching Salesforce.com, or other vendors, but we cannot know the future. For example, Salesforce.com may become Oracle (an outcome that analysts I spoke to here see as very plausible), in which case you researched the wrong company.

On balance I doubt that the Force.com platform will go away, but its future cost and evolution is all a matter for speculation. That said, I do think it is an interesting platform and will be posting again about it; I’ve also made some comments on Twitter which you can find on my page there.

November 3rd, 2008

Salesforce.com linking with Facebook, Amazon

I’m at the Dreamforce conference in San Francisco, where Marc Benioff, CEO of Salesforce.com, and co-founder Parker Harris, are presenting new features in the force.com platform.

The first is a built-in ability to publish your Force.com data as a public web site. The service is currently in “developer preview” and set for full release in 2009. Even in preview, it’s priced per page view on your site. For example, if you have the low-end Group Edition, you get 50,000 page views free; but if you exceed that limit, you pay $1000 per month for up to 1,000,000 further page views. It would be unfortunate if you had 50,001 page views one month.

The second announcement relates to Facebook integration. This is a set of tools and services that lets you use Facebook APIs within a Force.com application, and create Facebook applications that use force.com data. Sheryl Sandberg, Facebook COO, says this is “Enterprise meets social”. The problem: Facebook is consumer-focused, more play than work. Sandberg says this deal will launch Facebook into the Enterprise. This will be an interesting one to watch.

Third, there are new tools linking Force.com with Amazon’s S3 and EC2. Tools for S3 wrap Amazon’s API with Apex code (Apex is the language of Force.com) so you can easily add unlimited storage to your Force.com application. Tools for EC2 delivers pre-built Amazon Virtual Machines (AMIs) that have libraries for accessing Force.com data and applications. The first AMI is for PHP, and simplifies the business of building a PHP application that extends a Force.com solution.

Interesting that Salesforce.com is providing two new ways to build public web sites that link to Force.com – one on its own platform, the other using PHP and in future Ruby, Java (I presume) etc.

It’s worth noting that you could already do this by using the SOAP API for Force.com, and there are already wrappers for languages including PHP. This is mainly about simplifying what you could already do.

More information is at developer.force.com.

October 27th, 2008

PDC 2008: Microsoft attempts to remake its image

There are two big themes at Microsoft’s Professional Developer’s Conference, just getting under way here in Los Angeles.

One is cloud computing. At this morning’s keynote, Ray Ozzie and others will present Microsoft’s cloud computing strategy. If it’s right that IT is moving inexorably into the cloud, this could be make-or-break for the company. Truth is, despite huge number of users for things like Hotmail and Live Messenger, Microsoft is not perceived as a web or on-demand computing company. That space belongs to others, like Google or Salesforce.com. Further, Microsoft has a problem that those companies do not have: how to keep its partners happy while embracing a computing model that may severely reduce their role.

The other is Windows itself. Vista’s image is tarnished: the wow started badly, and although the OS itself now works better than it did at the launch, its negative perception is beyond rescue. Windows 7 is Microsoft’s next opportunity to generate some consumer and user enthusiasm for Windows, and to stem the flow towards Apple. Tomorrow is Windows 7 day.

We’re also going to get insight into the future of key technologies like .NET, the next version of C# and Visual Studio, the Oslo modeling platform, Microsoft’s plans for identity management, and plenty more.

I’ll be blogging and tweeting as I can during PDC. I’m also keen to know what you think, whether or not you happen to be here in LA (the keynotes are being streamed over the Internet).

Technorati tags: , , ,
September 5th, 2008

Adobe’s Genesis: enterprise mashups wrapped in AIR

I’m not at the Office 2.0 conference, sadly, but fortunately for non-attendees the organizers have done a great job of making the content available online in a timely manner. Aside: I love the way this site includes social networking features, like the ability for users to comment on sessions beforehand, so that they can influence the content; and the way videos have appeared on the same day as they were presented.

One of the first things that caught my eye was Adobe’s Genesis. I watched the presentation by Matthias Zeller. As I understand it, Genesis is an AIR application plus online services, that enables enterprise mashups, organized into workspaces. AIR (Adobe Integrated Runtime) is a way of using the Flash runtime on the desktop.

What’s in a Genesis Workspace? A collection of “tiles”, actually Flex applets, which can hook into other enterprise or web applications. It is a good fit with SAAS (software as a service) providers such as Salesforce.com. There is also a web browser tile (presumably based on WebKit), enabling the inclusion of any browser application; and a file repository tile that contains documents, using some of the functionality we have already seen in Acrobat.com. The idea is that these workspaces are easily created using drag-and-drop. The real value comes when they are shared online, through Adobe’s hosted services, enabling communication and collaboration.

Zeller says the Genesis client will be free, with monetization coming from subscriptions to hosted services and tiles; third-parties will also be able to market tiles for the system. There is an online slideshow here.

This is only my brief first impression; please follow the links for more detail. I found it interesting on several levels: a new approach to the cloud; a business use for AIR; and also this comment in the presentation, “Adobe-quality aesthetics for the enterprise”.

July 21st, 2008

Amazon S3 grumbles

Lukas Biewald of Facestat says Amazon S3, which is business-critical, is his #1 cause of failure:

Using Amazon’s S3 has about the same cost and complexity as hosting the images ourselves, but we had thought that the reliability of Amazon would be significantly higher. But that now seems wrong….It’s astonishing that serving content off our own boxes can be more reliable than serving content off of Amazon.

He’s also discovered that the SLA is not worth much – the business cost of the recent 7 hour downtime is far in excess of the 25% fee rebate.

S3 is cheap. Personally I think it is unrealistic to make S3 your storage service, have no plan B, and expect high reliability.

Amazon has a case to answer too. Salesforce.com has now just about lived down its 2005 outages; but incidents like these are terrible publicity for any cloud provider.

Technorati tags: ,

May 8th, 2008

Peter Gabriel at Dreamforce Europe

Peter Gabriel was a guest at the Dreamforce Europe conference this morning. He was introduced by Salesforce.com CEO Marc Benioff and then interviewed.

Why was he there? He is promoting his work with Witness, which tackles the deniability of human rights abuses by encouraging and enabling victims and observers to publish photos and videos of what is taking place. Apparently the existence of this type of evidence makes a substantial difference, putting pressure on governments or other groups to reform their practices.

The Salesforce.com link is that Witness is one of the recipients of funding from the company’s charitable donations.

While this strikes me as the most worthy of causes, I have mixed feelings about corporate flaunting of good deeds at events like this; PR and philanthropy make uncomfortable bedfellows.

Still, I am easily beguiled by Gabriel being a fan of his musical output. He didn’t talk much about music in his interview, except in saying that it is a great cross-cultural bridgebuilder. The other link is to do with pursuing your passions; thirty-five years ago he had a passion for music; now he has a passion for human rights (I’m interpreting something he said about pursuing your dreams).

His delivery was low-key and he looked almost elfin sitting up there on the stage.