Highlights
For those of who like a good blow by blow, that'll follow below. If you're a busy type who's reading this on her iPhone between meetings, here are the key points from day one.
- Marc Benioff wants to own pretty much all your computing.
- Specifically, in addition to owning your CRM (original Salesforce) and web apps (the Force.com platform), he now wants to own your web site(s) and intranet as well (the new Force.com "sites" technology released in preview today). "sites" lets you build anonymous, public-facing web sites that are hosted on SFDC infrastructure and draw data from your org (meaning from your Salesforce CRM and from any custom apps you've built).
- SFDC is aggressively partnering with other services and platforms. Today they announced a partnership with Facebook to allow you to embed pieces of SFDC apps on the Facebook platform, and give SFDC apps access to your Facebook data. For example, a Force.com recruiting app could look over your Facebook network and decide which of your friends might be interested in an open position.
- Another partnership they announced is with Amazon.com, allowing SFDC apps to use parts of Amazon's cloud, particularly their S3 storage cloud for storing lots of data and their EC2 cloud for raw computing power.
- Neil Young is building a 50s Lincoln Convertible that is nearly silent, primarily electric, and aims to get 100 MPG. Oh and the car's web site runs on Force.com Sites: http://lincvolt.force.com.
- Apex, VisualForce and the whole Force.com platform are coming along nicely.
9000+ attendees, 40 countries, 250 sessions. Big partnerships with firms like Fujitsu, Dell, Accenture and Deloitte. And one pinstriped but tieless CEO who makes no secret of the fact that he wants ALL of your computing in his cloud.
Benioff talked for two and a half hours, occasionally sharing but never ceding the stage. He made the point, as he always does, that the big movement is the movement of PLATFORMS into the cloud. He touted the pay as you go model as a way to reduce capital IT expenses. He noted the elasticity of his platform, and its (presumed) ability to scale effortless from ten users to ten thousand.
He claimed that SFDC is the first cloud company to achieve an annual run rate of a billion dollars. He touted SFDC's philanthropic projects, from the 1% of time and equity they give to charitable causes, to the many nonprofits that run their apps free on SFDC. And he derided Microsoft's Azure announcement and made his disdain for MS clear, though there may be a bit of WWF-style stage rivalry there.
He underlined SFDC's strategy: "all your business computing in the cloud." That means data management, and it means collaboration. They intend to continue to provide additional cloud-based services such as "idea management", content management, and direct data exchange between Salesforce-enabled organizations.
And he claimed that to date, on the Force.com platform, there have been 400,000 custom objects, 1.5 billion custom records, 18 million lines of Apex code and 50,000 VisualForce pages deployed to production. So they claim to be hosting, in effect, a billion and a half rows across 400,000 custom tables (so an average of 3,750 rows per custom table).
This is impressive stuff if it's all true.
All your site ...
As Benioff said, they've made the point ad nauseam that they want our CRM and our apps in their cloud. Turns out they want all our web sites too, internal and external. Well, assuming those sites use any dynamic data whatsoever, which works out to, oh yes, pretty much ALL web sites. In his vision, your web pages are written in VisualForce and Apex, not Perl, PHP, JSP, ASP, Python, Java, or .. well, or anything. The pages draw data from your SFDC org, and they're hosted on SFDC infrastructure. No more servers, rackspace, varied publishing models, etc. Your web sites and your web apps become all but indistinguishable, and they all share the same hosted platform and infrastructure.
Boy, SFDC should hire me to write copy.
Of course, there's a press release, and you can read it here. Or just keep reading.
Force.com Sites technology is now in developer preview. This means that anyone with a DE (Developer Edition) license can sign up to enable sites in their development org. They are expecting a limited release in perhaps early Spring 2009, and hoping for general availability by Summer 2009.
As far as pricing, the only thing you seem to pay for with Sites is page views. Depending on what kind of SFDC org you have (Group, Pro, Enterprise or Unlimited), you get from 50K to 1M page views per month. And you can always buy more page views if your traffic increases. Here as elsewhere the infrastructure argument looms large -- who wants to have to worry about being victimized by success if my new web site is suddenly swamped with a million hits? Can't I just PAY someone to make this work? You know SFDC's answer; "yes you can!" And behind the scenes on that site you have one or many Force.com aps, which your business users can use to their hear's content to drive the data and the overall nature of the site.
Benioff revealed they have been eating their own dog food -- the Dreamforce registration site, a fairly up-to-date UI with a calendar-based session selector, is in fact based on Sites. We saw a simple demo wherein a session description was edited in a native Force.com app, and the updated data was immediately reflected in the live registration site (actually a staged copy I believe).
So to make a Force.com site, you write and deploy a bunch of VisualForce pages. Then you create a custom URL (
They then went to some customer stories, showing customers who are already using the preview version of sites. We saw a site designed for New Jersey Transit, used for sharing travel alerts. In the demo, a user enters a travel alert through a standard SFDC UI. We can immediately see the update on a NJ Transit site. In fact, we can consume it on an iPhone, which was demoed as well.
We also saw a demo for Harrah's, which can be seen online at http://www.harrahsvips.com, but/and also at the "true" URL of http://harrahsvips.force.com. In this demo, we saw a user make a variety of booking requests through this site, and saw the data flow back into a native Force.com app on the back end, where the internal users access it through the more utilitarian SFDC native UI. In this demo, users had the ability to enter the SFDC UI and perform limited customization of their personal pages, such as changing the welcome message.
This is not small stuff. You need to have an SFDC org, of course, with paid named users. So if you need ten people internally to access the app that drives the public-facing web site, you're paying a minimum of $6000/year for those users (if they are the $50/month Force.com edition users). Still, for 6K/year plus development costs, you get a data driven public web site and a ten-user back-end app. Compare that to the cost of acquiring and maintaining the platform, and you may think that's a pretty good deal.
Friends and Relations
From technology to partnerships. Unlike the technology material, these announcements spanned a range from things I sort of understood to things I mostly didn't, the latter falling more into the area of "I know you CAN do that, but why would you?"
First Benioff produced Facebook COO Sheryl Sandberg, to talk a bit about how huge Facebook is getting (30% last quarter), and well, more about how big it is. And why this is cool, and good. SVP of Force.com platform development Steve Fisher was then summoned, both to do a demo and to act as a foil for various jests from Benioff which were not entirely notable for their kindness. This is how the geeks always get repaid, alas. In any case, Fisher first showed us a recruiting app writen by Appirio, an SFDC partner that tends to get a great deal of play at these shows. The app kept track of various job openings, and the question arose, how can I get my social network on Facebook to browse and consume these job listings and recommend and refer people they know? I could put up some kind of web site somewhere else, perhaps a Force.com Sites page, but still, people will have to go there deliberately. Instead, Fisher showed a Facebook app, i.e. one that runs natively within Facebook, that was consuming SFDC data about job listings from the Appirio app, then somehow trolling the user's Facebook network for suitable referrers.
I'm not a big Facebook user, so no doubt some of this is lost on me. Clearly it gives SFDC a shot at getting a piece of the Facebook development market, which, per Sandberg's remarks, is growing all the time. It's less clear to me why this is such a good thing for Facebook.
As a final twist, a Starbucks exec was brought up to join the crowd. Starbucks runs an "ideas" site on SFDC technology. This resulted in the following demo. Steve Fisher confessed his love of banana Frappucinos, which Starbucks discontinued after a short run. So he went ahead and posted to the Starbucks ideas site, demanding their return. Lo and behold, all his friends on Facebook were alerted. Steve has posted a new Starbucks idea! This is great because any of Stev's friends, who may include other lovers of the banana Frapp, can now go and second his vote!
So there. SFDC on Facebook.
(Am I the only one who thinks thre's something very insidious and non-democratic in all this? Salesforce.com gets a nickel every time I share an idea with my friends. Starbucks gets, and owns, the idea itself, after it's been sharpened and polished by MY social network. What do *I*, the supposedly empowered end user get? A banana Frapp and a pat on the head. The people at the top of this pyramid, well, they get very wealthy indeed.)
Benioff then took some time to talk about how much they love ISVs, and especially those ISVs who are eschewing mashups to create totally native apps. Again that desire to be all things. He brought out some big partners like Coda, who claims to have created an entire accounting/ERP suite on SFDC in less than a year, and Fujitsu, who created a suite of manufacturing apps in a similar timeframe. Benioff announced that they aren't going to charge partnes anything to sell their commercial apps via AppExchange through 2010.
Finally Benioff brought out Neil Young (yes the singer) to talk about the only tangentially related but nonetheless cool LincVolt, a 50s Lincoln retrofitted with electric technologies to try to achieve 100 MPG. Only symbolically to do with SFDC (revolutionary, disruptor etc) but very interesting all the same.
The car is a hybrid, running on electric power and, as a backup, compressed natural gas (CNG), which Young touted as an incredibly clean fuel that we have oodles of right here in the US (so no dependence on foreign oil). he batteries in the car have a range of 100 miles. After that range, the car begins to run off a tank of CNG in the back (is it just me, or does this sounds like a rolling bomb?) As the front-mounted rotary engine runs off CNG, it is recharging the battery.
In theory, at night you plug the car into the house to recharge the car. Young's chief engineer joked that you were as likely to go the other way, and plug it in to charge the house.
So we took a look at lincvolt.force.com, a Sites app that seems to show a Flex app drawing data from SFDC an distributing it to an anonymous web audience. And thus ended 2.5 hours of keynote ...
Day 1 Sessions
Force.com platform state of the union
Adam Gross, VP of Developer Marketing
The Force.com platform, claims 110,000, almost doubling in the last year. We learned the names of some of the top community developers: John Hart, Jason Venable, David Claiborne, Andy Fawcett (from Coda, "some of the most sophisticated use of Apex in the industry right now).
The session was a bit miscellaneous. Gross alluded to a new Google visualization API: code.google.com/p/apex/apex-google-visualization. Allegedly there'll be a session Wednesday.
The point was made that developer.force.com is the second most trafficked sfdc site, ahead of the App Exchange and their training site.
We saw a number of demos of Sites. One from BlueWolf showed a public site allowing a search for healthcare providers (such as sites we've built). The access was public, the presentation was nice, well-designed UI using VisualForce. User queries were transformed into SOQL queries dynamically.
The demonstrators alleged they built this app in 4 days. You could see some rough edges, but it was compelling.
Adam Gross made the point that you could "create an arbitrary REST API via Sites, effectively."
We then heard about the "database and declarative side", meaning the native Builder, schemas, formulas and the like. We were reminded that this year they rolled out things like cross-object workflow and many-to-many relationships.
We were also reminded that Winter 09 has a preview of criteria-based sharing, which seems to a form of record-level security, like FileMaker's ability to define RLS using calcs.
The presenter (Mary Scotton) also touted some new and upcoming UI features -- enhanced list views with drag and drop reordering (already out, I think), and also some upcoming changes in the page layout editor, such as a WYSIWYG preview, as well as (!) the ability to add blank spaces in your columns.
We then heard from Andrew Waite, product manager for Apex. He suggested we should look for more and more standard components in VisualForce.
He also alluded to improvements in asynchronous Apex -- trying to get hold of more of our computing. They are previewing a new Batch feature that would let you schedule and run very big jobs, such as big batch updates, that presumably would run afoul of governor limits today.
We also got a look at the worldwide developer breakdown. Out of 100K, 85K in US, 10K in India, 5K in Canada, and down from there.
Intro to Force.com Sites
Sites are:
- public, unauthenticated web sites and web apps
- accessed from branded domain names
- built with VisualForce pages
- drawing on data in your SFDC org
- cached "at the edge"
Use Cases:
Public entry for portals
- registration
- branded login
- public knowledge base
- partner finder
Web forms:
- take the output from a web form and push it into any custom object
- do this as a wizard flow because Visual Force lets you keep state between pages
Intranet sites (they're intranet because of IP-based security, yuck)
- employee directory
- facilties
Rich internet apps
- event registration and management (like Dreamforce)
- recruiting apps (like applying for job postings)
- commerce sites
- RSS feeds from SFDC data
Branded domains -- these are subdomains of force.com, but you mask this with your own CNAME records. They have a blacklist -- some names are not permitted, naturally.
It's possible to have up to 100 sites per org. Each site can have its own security model, a unique top level domain, and a unique look and feel.
The security model is interesting, and hard to penetrate. If users can log in, how is this not just a regular web app? It seems more oriented toward a model in which users are still in a sense anonymous. They can self-register, and get and manage their own password. But they are all mapped to JUST ONE internal security profile. So even though they all have their own logins, to the SFDC back end, they all "run as" exactly the same user.
For now, all the VF pages that make up a site just sit in the same big bucket of VF pages for your entire org ("until we implement page hierarchies"). In order to make a site, you need to explicitly add VF pages to the site definition, else those pages can't be accessed from the site, which is a decent middle ground and a nice security check.
Authentication remains complex and confusing. Apparently Force.com Sites can work together with some of SFDC's "portal" technologies. SFDC already allows you to create partner and customer portals, like mystarbucksidea.com, which allow self-registration. So sites users can already authenticate to a portal user. On the roadmap is the ability to authenticate to a platform/CRM user, meaning a named user. This implies, perhaps, that you could run a web app and only create one named back end user per distinct security profile. But this is still unclear.
You can run Sites on SSL but right now this means actualy exposing the *.force.com URL. Reason is that otherwise SFDC would have to host the SSL cert for your CNAME, and they're not there yet.
We saw a couple nice demos of Sites from partners. Simple but very effective. A very nice demo allowing the owners of luxury boats to look for open marina slips and book them. We saw some integration with Google Payments to process site payments. Claimed this app was built in 6 weeks.
They reviewed the pricing model again. Authenticating into portals -- pricing still up in the air. Intend it to be the same pricing as existing partner portal.
http://www.sofiaworks.com/ is an example of a public site running on the Sites technology.
Google Data APIs
SFDC has release an open source Apex toolkit to connect to Google Docs (which has open APIs).
Get the code from CodeShare or code.google.com and install it in any DE -- no built in packaging or namespacing. Basically they wrote a fairly simple XML parser in Apex and used to wrap some of they key Google APIs like Contacts, Calendar, Spreadheets, Documents and Blogger.
Basically we saw some ver nice demos where, without much code, an SFDC app was able to create a Google spreadsheet and populate it with SFDC data.
Also, the released code has a nice set of tests and the present recommended it to us as an example of good test coverage.
The presenter finished with a demo that used a JSON parser, again in Apex, to use Google Translate to translate SFDC data on the fly among various languages.
Overall, it looks straightforward to access other web services from Apex.
VisualForce Components and Controllers
Andrew Waite again. Out of the box, VisualForce provides 68 standard components, from a simple field to a whole detail block.
This presentation was quite technical, mostly on custom components.
Custom components are in the c: namespace by default, but you can add your own namespaces to conform to how you package your app.
Three pieces to a custom component: the components, its attributes, and the componentBody.
He showed a fairly deep-dive demo of taking a Javascript slider component from the EXTJS library, attached to the SFDC org as a static resource, and accessed as a custom component. The component he wrote was quite clean, and allowed the user (developer) to parameterize the control with things like start or end values.
Having shown this, he assured us in a veiled way that he saw he need to pull things out of EXTJS or other libraries as a failing of sorts in the platform, and that they'd like to turn more and more of these things into standard components.

1 comment:
Just a test comment
Post a Comment