Category Archives: internet

Making sense of Salesforce.com

The Salesforce.com marketing pitch here at DreamForce Europe is wearying at times but it is not complete nonsense. CEO Marc Benioff spent the first hour of his keynote yesterday re-iterating what he has said 1000 times before about “no software”. The “no software” slogan is deceptive, since Salesforce.com is a software platform; Benioff deliberately conflates multiple issues, including zero software deployment, cloud availability, and outsourced hardware maintenance.

The core of the model is multi-tenancy. One entity (Salesforce.com) takes responsibility for your hardware and application server. Multiple entities (including you) get shared use of those resources, financed by a subscription. Originally this was a single CRM application; now it is called a platform (known as Force.com) since you can build many types of application on that platform. Is this “software as a service”, or just a web application? It is both, especially since Salesforce.com publishes a SOAP API and claims to be the largest users of SOAP in the world.

I asked Adam Gross, VP of developer marketing, whether the platform can also support REST; the answer is not really; you can create your own REST API to some extent, but authentication must be done through SOAP.

Developers can customize Salesforce or write their own applications (which is really the same thing) either by simple configuration, or writing code in APEX, which is a language created especially by and for Salesforce. Under the covers, I understand that Salesforce runs on Java and Oracle, (an upgrade to 10g is due later this year) so your APEX code ends up as Java byte code and queries Oracle; but this is hidden from the developer.

One of the interesting features of Force.com is that you can develop entirely online. You can also write APEX code in Eclipse. There is a sandbox facility for testing. Another idea is to create mashups which use web services to combine Salesforce applications with other web applications (just as Salesforce itself does with Google documents).

The next version of the Salesforce.com platform, available shortly, includes VisualForce, a tag-based syntax for creating a custom web user interface. VisualForce uses a model – view – controller pattern.

The Salesforce.com model has several attractions. It has inherent advantages. For example, hosted applications make more efficient use of hardware than on-premise servers. Another advantage is that rolling out a Salesforce.com implementation is easier than introducing something like SAP. There is no hardware aspect to worry about, and the application is usable out of the box. Some of the customers I spoke to talked about failed or arduous implementations of SAP or Siebel systems.

As the Salesforce.com customer base grows  – it is currently 41,000 customers and 1.1 million subscribers – it becomes a more attractive target for third party software vendors. You can market a custom Salesforce application through the official AppExchange, or create your own on-demand application and sell it to your own subscribers.

What then are the main reservations? Well, CEO Marc Benioff apparently has not read Chris Anderson’s essay on Free. As a customer, you have to be willing to pay Salesforce.com a per-subscriber annual fee for ever. As a third-party vendor, you have to be willing to pay Salesforce.com a proportion of your revenue for ever. Custom objects, custom language, custom UI tags: it won’t be easy to move away. This is proprietary lock-in reborn for the Web.

Second, if you use any hosted application platform you lose control. If you find yourself needing some new feature that the platform doesn’t implement, you have to ask nicely and wait in hope, or find some way to implement it using a mash-up or APEX code. If you can’t wrest the performance you want from the platform, you can’t upgrade the hardware or introduce a stored procedure: it is what it is. As an example, I’ve heard users here complain that the security system is insufficiently fine-grained; improvements are coming, but they have to wait.

Third, you have to trust Salesforce.com with your data, and trust it to stay available. If you run your business on Salesforce.com, and it goes offline, you may as well all go home. Now, arguably the guys at Salesforce.com will work as hard or harder than your in-house team to keep systems up and running, and in most cases have more resources to work with, but nevertheless, it is a matter of trust.

Fourth, this is mainly a web application platform, though you can make offline applications or desktop applications using the API. The core user interface is functional rather than attractive, and I saw lots of flashing screens and browser messages saying “waiting for na5.salesforce.com”. VisualForce AJAX components will help; though in practice business users do not care that much provided they get the results they want. Still, it’s a point worth noting; Microsoft argues that “software plus services” delivers a better user experience. The rejoinder is that “software plus services” removes key benefits of the software as a service model.

In the end, it comes down to a business case. It should be possible to sit down and calculate whether a move to Salesforce.com for some part of an organization’s IT provision will cost money, or save money. The people I speak to here think it works for them.

Marc Benioff: Google deal is aimed at a common enemy

Here at Dreamforce Europe, I asked Salesforce.com CEO Marc Benioff about the company’s agreement with Google, in which Salesforce becomes an OEM for Google Apps. We saw this demonstrated in the keynote. You can start a email via  Gmail from within a Salesforce contact. When sent – provided you click the Salesforce send button and not the Gmail send button – the email is added to the contact history. A similar feature lets you attach a Google document to a Salesforce record.

It’s a useful feature; but long term, will Salesforce.com and Google be competitors rather than partners? It is a natural question, since both companies are promoting their services as a platform for applications. Salesforce has the Apex programming language, while Google has its App Engine. According to Benioff, App Engine is primarily for Python developers, while Salesforce.com is a platform for enterprise applications. This struck me as downplaying Google’s likely ambitions in the enterprise market.

I therefore asked Benioff whether the agreement with Google included any non-compete element, or whether Google might be a future platform competitor. He did not answer my question, but said:

The enemy of my enemy is my friend

The identity of the enemy is unspecified; but given that Benioff used Microsoft .NET as the example of what his platform is supposedly replacing, and that Google docs competes with Microsoft Office, and that Benioff makes constant jibes at the complexity and expense of developing for Windows, I guess we can draw our own conclusions.

For sure, it did little to allay my suspicion that Salesforce.com and Google will not not always be as warm towards one another.

As an aside, there are ironies in Benioff’s characterization of .NET. Microsoft launched .NET as a “platform for web services”, which is exactly what Salesforce.com has become. Microsoft was a key driver behind the standardization and adoption of SOAP, which is the main protocol in the Salesforce.com API.

Role of web video in tech communications

Last week’s Live Mesh announcement was a significant one for Microsoft watchers. It was interesting to note that all the in-depth information came in the form of web video.

Personally I dislike this trend. Video cannot easily be scanned to see what it contains; it also requires audio which is a nuisance. It is more work to quote from a video that to copy some text. I also resort to playing them at double speed where possible, to come closer to the speed of reading, and noting down the time of sections that I want to return to.

Some of these problems could be mitigated by better presentation. For example, you could have summary text on the page next to an embedded video, with links to indexed points.

However I also recognize that I may be in a minority. Video has obvious advantages; it is more informal, and can includes real demos as opposed to diagrams and screen grabs.

I am even contemplating trying some video publishing of my own; it is time I reviewed Adobe Visual Communicator.

Even so, I’d suggest that companies take the time to offer transcripts of important video content. Text has advantages too.

Microsoft Live Mesh is AIR++

This post on the Microsoft Live Dev blog reminded me to view some of the Live Mesh videos Microsoft has put out for developers – this quick tour is a good place to start; this video with Ori Amiga has more details with examples.

A few comments. First, it seems to me that Live Mesh is at heart a feed aggregrator. It is interesting to me because I had high hopes for Microsoft’s plans to integrate RSS into the operating system, and wrote about it in 2005. Sadly, Microsoft messed up its common feed platform – though I am perhaps one of the few who uses it outside IE7 or Outlook, with a custom feed reader thrown together in VB.

Live Mesh takes the feed aggregation concept and adds a few things. These include a REST API for posts and updates; a synchronization engine; an identity system so that you can control access; and a local feed server that works entirely offline when needed. Hence MOE (Mesh Operating Environment), also known as the Service Composition Runtime.

By the way, Mesh can synch peer to peer as well as with the cloud hub. Interesting for Intranet usage.

So what’s an application? A feed of course, one that contains stuff you can execute. The local runtime could be just HTML and Javascript engine; but you can see how nicely Silverlight fits into this scheme of things. It’s a neat deployment model. Buying an application becomes similar to subscribing to a web site, except you get an executable that works offline as well as online. As Amiga explains in the video above, this is about performance as well as convenience. The speed of the Net cannot match a local store.

Another aspect of this is that you can use Mesh services in your non-Mesh application, essentially as a data source that is automatically synchronized across everywhere.

If I’m anywhere close to grasping this, then it is not inherently Windows-centric. It also strikes me that this is AIR++, where the ++ is services and synchronization; Adobe should worry – except that Adobe has AIR out already and is no doubt working on great things for version 2.0.

A question though: what’s the business model? Commercial MESHable services? Tools and hosting? Premium MESH? MESH with ads? Right now, I guess Microsoft will do anything to buy mind share and market share for cloud services; but that will not do long-term.

Microsoft: we might withdraw Yahoo offer

Chris Liddell, senior Vice President and CFO, speaking during yesterday’s earnings call:

As outlined in our recent letter to the Yahoo board, unless we make progress with Yahoo towards an agreement by this weekend, we will consider our alternatives. We will provide updates as appropriate next week. These alternatives clearly include taking an offer to Yahoo shareholders or to withdraw our proposal and focus on other opportunities, both organic and inorganic.

Personally I think the Yahoo deal would be bad for Microsoft. I think it is driven by financial people trying to sum two market shares in search; but it is not so simple. My view is based on problems of integration, morale and culture, plus the risk of further confusing an Internet strategy that is already opaque.

Although Microsoft continues to be trounced in search (not least because it is simply not as good as its competition), there are signs of progress elsewhere. Another snippet from the earnings call: General Manager Colleen Healy mentioned that Live ID take-up is up by 18% to 448 million. No doubt many of those will be worthless accounts, but not all of them. Revenue from online business is up. Organic growth and smaller acquisitions would work better for the company.

Technorati tags: ,

Will Microsoft abandon DRM?

Ars Technica quotes an email apparently sent to customers of MSN Music:

As of August 31, 2008, we will no longer be able to support the retrieval of license keys for the songs you purchased from MSN Music or the authorization of additional computers. You will need to obtain a license key for each of your songs downloaded from MSN Music on any new computer, and you must do so before August 31, 2008. If you attempt to transfer your songs to additional computers after August 31, 2008, those songs will not successfully play.

Microsoft may not care about MSN Music any more, but this decision undermines all its DRM content sales and those from its partners.

Or will Microsoft abandon DRM? Seems unlikely; yet when I quizzed Microsoft on this general subject (what happens to DRM content when you switch PCs), the reply from Adam Anderson, Sr. product manager for Windows, included this phrase twice:

Music content providers and online music stores are increasingly moving to DRM-free downloadable tracks

As Anderson noted, this will “diminish user issues regarding rights restoration”. So will Microsoft follow this same principle in some future version of the Zune store, for example?

If it did, it might also do the right thing for its MSN Music customers, which would be to provide a tool to unlock the DRM on their purchased files. I suppose its agreement with the copyright owners does not allow for that; yet as the industry now seems willing to offer music DRM-free, it just might be possible.

Incidentally, I’d love to hear from anyone who has purchased music protected with Microsoft DRM, such as tracks purchased from Napster, CD Wow or HMV.com. Happy? Or if not, what problems have you had? I’m looking for examples for a future article.

Technorati tags: , , ,

Microsoft: Live Mesh or Live Mess? Here’s what to read.

Here’s what I suggest you read to get to grips with Live Mesh:

Amit Mital’s introduction (he’s the General Manager)

Mike Zintel’s Live Mesh as a Platform (he’s Director of Service Infrastructure)

Mary Jo Foley’s Ten things to know and the helpful stack diagram.

I have a few initial comments. First, it’s the platform that matters, not the Live Desktop which is the first thing Microsoft is delivering and which you will find presented at mesh.com. Microsoft is finally showing us what it means by the “software plus services” thing it has been talking about for so long. It involves a new “Mesh Operating Runtime” which has both cloud pieces and client pieces, a MeshFX API, and an identity system which is Live ID (formerly Passport).

As far as I can tell, Microsoft is delivering an API which we will be able to use to build internet-based data, document and configuration into either desktop or web applications, with synchronization to local storage for offline use. Zintel adds:

… customers will ultimately license applications to their mesh, as opposed to an instantiation of Windows, Mac or a mobile account or a web site.  Such applications will be seamlessly installed and run from their mesh and application settings persisted across their mesh

It sounds good, though the obvious question is whether Microsoft is overstating the importance of the client in an attempt to preserve its core market. Do we need this special client piece? Here’s a paragraph from Zintel’s piece that caught my eye:

A key design goal of the Live Mesh data synchronization platform is to allow customers to retain the ownership of their data that is implicit with local storage while improving on the anywhere access appeal of the web. The evolution of the web as a combined experience and storage platform is increasingly forcing customers to choose between the advantages of local storage (privacy, price, performance and applications) and the browser’s implicit promise of data durability, anywhere access and in many cases, easy sharing.

Can Microsoft improve on the “anywhere access appeal of the web? Zintel says we need to combine it with the advantages of local storage, but the advantages Zintel identifies are not all that convincing. Let’s look at them:

Privacy: maybe, but local data is vulnerable to worms, trojans, viruses; well secured Internet data accessed over SSL is arguably more secure. Data not connected to the Internet is nice and secure, but can’t participate in the Mesh.

Price: I don’t see how Mesh helps here. Yes, local storage is cheap, but as soon as data enters the Mesh it is on the Internet and we are paying for data transfer as well as possibly Internet storage. I realise that Microsoft (among others) offers generous Internet storage for free, but that is just a way of buying market share.

Performance: Granted, some types of application work faster with local storage. Still, there are non-Mesh ways of getting this from web applications in a fairly seamless manner, such as Google Gears or Adobe’s AIR.

Applications: This is perhaps the big one. Many of us are reluctant to do without traditional local applications such as Office. Well, mainly Office. Still, web equivalents get better all the time. One day they will be good enough; and new technology like Silverlight is bringing that day closer. 

What about identity management and permissions? Zintel says:

A side effect of the competition to store customer data in the cloud and display it in a web browser is the fragmentation of that data and subsequent loss of ownership. Individual sites like Spaces, Flickr and Facebook make sharing easy, provided the people you are sharing with also use the same site. It is in fact very difficult to share across sites and equally difficult to work on the same data across the PC, mobile and web tiers.

True; but Mesh currently identifies users by their Live ID. Isn’t that the same as Spaces?

If Microsoft delivers a bunch of useful web services, that’s great. If it tries to somehow replace the web with its Mesh, it will fail.

Mary Jo Foley also asks the question: to what extent is Microsoft extending, and to what extent is it replacing, existing Live services such as Office Live or the excellent Skydrive? Making sense of all this is a challenge.

Now let’s mash all this up with Yahoo! (maybe). Ouch.

CDs,DVDs still account for more than 75% of music industry revenue, but shrinking

The RIAA has posted 2007 year-end manufacturers’ unit shipments and value statistics. This covers USA music and music video sales.

Here are my highlights:

  • CD sales down 17.5% in units and 20.5% in value year-on-year. The peak was 2000; value is down around 44% since then (actually a smaller decline that I would have expected).
  • Downloads are up 38.9% in units and 43.2% in value.
  • Mobile (ringtones etc) are amazingly only 30% less by value than other digital download sales, if I’m reading the chart right.
  • Revenue from physical media (mostly CDs) is more than 75% of the total.
  • Overall revenue is down by 11.8% – that’s the figure that hurts the music industry.
  • Finally, vinyl is up by 46% but from a small base; it’s only a tiny niche.

Every time I look another CD shop has shrunk or closed on the high street, so I expect there will more of the same next year.

Technorati tags: , , ,

Britannica going more towards free

Towards free, not completely free. This is a fascinating example of old-school vs new school (Wikipedia and Google – I mean Google search, not the Knol thing). Britannica is opening up its content to “online publishers”, including qualifying bloggers – low traffic is OK, but infrequent posting is not. The idea is to encourage these users to post Britannica links on their sites. Such links will bypass the paywall, enabling non-subscribers to read articles that would otherwise require subscription.

We can debate the quality of Britannica’s more scholarly articles versus Wikipedia’s living encapsulation of crowd wisdom. The real question is this: what is Britannica’s business model when something that many people will feel is “good enough” is available for nothing?

Here’s what the FAQ says:

Won’t you lose money giving away all those subscriptions?

We don’t think so. On the contrary, with many Web publishers using our products and sharing them with our readers, we expect to see a lot more people subscribing.

On the other hand, might not existing subscribers feel that the value of their subscriptions is diminished by the giveaway?

I suspect this is an attempt to rebuild its brand and experiment with different business models, such as advertising.

Prediction: in time, Wikipedia will include more attributed and locked content, while Britannica will add user comments, ratings, and even entirely user-generated articles (marked as such, of course). In other words, they will converge. The winner will be the site with the most traffic. If I’m right, Britannica’s new initiative is right, but very late in the day.

As an aside, I thought this part of the FAQ was not very Britannica-like:

I blog regularly, but I don’t have much traffic. Will that disqualify me?

Nope. You need Britannica more than anybody. Start reading it, and your posts will burn with brilliant, scintillating insights; link to Britannica articles, and readers will be eternally grateful. Your traffic will soar.

Technorati tags: , ,

mvn cloudtools:deploy

I love this. Write your Java EE app; then deploy to up to 20 virtual servers like this:

mvn cloudtools:deploy

The servers are Amazon EC2 instances, charged by the hour.

The tool comes from Chris Richardson, author of POJOs in Action. It combines a Groovy framework called EC2Deploy with appropriate Amazon virtual machine images and a Maven plugin. He calls the combination Cloud Tools. More on EC2Deploy here. The Cloud Tools home page is here. Open source under the Apache License 2.0.

Great for testing, could be good for live deployment too, especially now that you can get proper support from Amazon.

See also Jeff Barr’s Amazon Web Services Blog.