So, another exciting Dreamforce under our collective belts! This was my seventh, and every year I wonder what the big announcement of the week will be. In 2014, we found out about Lightning and Wave, and in 2015 we learned about Lightning Experience and Salesforce IQ. After the Partner Keynote for consulting and ISV partners, which is one of my first sessions every year, I adjust my session schedule to concentrate on the most interesting sessions. These three takeaways were most interesting to me, from least to most interesting:
1. Salesforce Einstein
After hearing the buildup at the Partner Keynote I had a feeling that this would be the big announcement of the main keynote, and I wasn’t disappointed. (Look for the cute mascot logos (https://www.salesforce.com/products/einstein/overview/), and there you’ll find your big product announcements.) Einstein is “Artificial Intelligence for Salesforce,” and many of its features are already available. Essentially, Einstein consists of several acquisitions of small companies that Salesforce has made over the last couple of years in predictive analytics and data science. They’re being pulled together into a “platform feature” rebranded as Salesforce Einstein. The real power of Einstein as a united service will probably take a while, as these separate products are integrated together into a cohesive whole. I’m looking forward to seeing some cool functionality in Einstein by the time Dreamforce’17 rolls around next November.
2. Lightning/Lightning Experience
First of all, I want to whine wax poetic just a bit about my SLF – Salesforce Lightning Fatigue. By my count, we have Lightning Components, Lightning Design System, Lightning Connect, Lightning Process Builder, and Lightning Experience, along with the lesser-known Lightning for Outlook and Lightning Sync. While I applaud the consistent naming convention, several of the features, like Lightning Experience and LightningDesign System, are very closely related, while others like Lightning Process Builder, are only slightly related. Every time I hear a customer mention “Lightning” in a conversation about Salesforce, I know that I’m about to play a surreptitious game of “Lightning 20 Questions” to figure out which one (or more) of the features they’re referring to.
All complaining aside, I’m excited about the Lightning Experience and the features and development tools it brings. Through it, the Salesforce UI is becoming much more modernized, moving from a page-based UI to an app-based, partial-refresh UI. Like all features newly announced by Salesforce, Lighting Experience is definitely still a work in progress. There’s a list of features that are still not available in Lightning Experience, some of which are significant. While it’s not a huge technical deal to switch back to the Salesforce Classic interface to accomplish these tasks, it’s a pretty hard sell to explain to Salesforce users that, while they get a pretty new interface to learn, they still have to switch back and forth to do some things.
3. Salesforce DX
This is the announcement from Dreamforce that I’m most excited about. It has:
- Source control of Salesforce metadata and code. Much of Salesforce’s metadata, including configuration and code, can already be represented as text and stored in a source control system like Git, but much of it still can’t. The only way to encapsulate the entire configuration of a Salesforce instance is with another Salesforce instance configured the same way. Salesforce DX will provide the ability to store all of a Salesforce instance’s metadata in text files, so it will finally be compatible with external source control and dev ops tools.
- Scratch Orgs. These Salesforce sandboxes are meant for much shorter durations than traditional development sandboxes. They allow for full configuration, plus configuration, security settings (permission sets, profiles, etc.), and data in the scratch orgs will be automatable using the other tools in the suite.
- Command Line Interface (CLI). At Dreamforce, Salesforce demonstrated the new CLI commands that will be available through a Bash Shell interface. They were showing scripting that went through creation of a scratch org (with parameters for its settings), configuring it with metadata, modifying permission sets, pushing test data to the org, running Apex tests, and even running Selenium tests on the resulting org configuration! It’s a very exciting prospect to be able to do some of the continuous integration activities in Salesforce that other platforms take for granted.
These development tools have been a long time coming on the Salesforce platform. For enterprise-level Salesforce customers, they’re going to open up exciting capabilities around continuous integration, dev ops, and automated testing of complex Salesforce code. It sounds like Salesforce is targeting GA (general availability) for the Summer ’17 release, although I suspect they won’t include all of the features they just announced in the initial release.