Salesforce DX: What is it and how do I prepare for it?
Salesforce DX, arguably the largest development to come out of the developer keynote at Dreamforce ’16, will change the way we developer applications within the Salesforce platform and the App cloud. Dubbed as “Continuous Development for Salesforce apps”, Salesforce DX consists of several pieces all aimed at improving the overall Salesforce developer experience. Pieces including a new command line interface, a new type of Salesforce org called a scratch org, Heroku pipelines, and a new packaging aspect called artifacts.
Most of these pieces, the exception being Heroku pipelines, are still a few Salesforce releases away from a public beta, but there are measures you can and should take today to get ready for the new Salesforce developer experience.
Source control has been a must for developers for quite some time. However, there are organizations still deploying apps or projects without source control in place. App Innovation partners, ISVs, consultants, enterprises, non profits, or even lone wolf developers can all benefit from source control and its benefits such as change management, code reviews, maintenance, back up, and more.
The reason source control will become mandatory from a Salesforce DX perspective, is that a fundamental shift is coming. A shift of having a Salesforce organization as the source of truth to source control being the source of truth of all Salesforce development.
Not using source control today? Try checking out a variant of git, which is a popular system among Salesforce developers. There are a variety of free and paid for tiers from providers like GitHub (http://www.github.com) and Bitbucket (http://www.bitbucket.org).
Pipelines are going to be a new concept to many Salesforce developers, but they are the movers and shakers of the continuous delivery aspect of Salesforce DX. If you want to read about pipelines, you can do so here: https://devcenter.heroku.com/articles/pipelines.
It’s being a little overzealous asking developers to start implementing pipelines today, in preparation for Salesforce DX. However, it’s not a bad idea to start thinking about your overall deployment strategies, and how you can integrate Continuous Delivery or Continuous Integration practices into your workflow. In other words, you should start asking questions around how you can deliver on a schedulable, repeatable processes, introducing various testing suites and other deployment practices.
If you do wish to start implementing pipelines today, you can do so with either Heroku pipelines or the recently announced Bitbucket pipelines product.
Scratch orgs are a new temporary kind of Salesforce org, aimed for developers. The idea is get in, develop, make sure the right changes are checked into source control, and get out. Developers can prepare for this new scratch org by getting used to a repeatable deployment process, such as using the Force.com migration toolkit that is available today to automate and repeat deployments.
SFDX Command Line Interface – Part of the new Salesforce Developer expereince will be a revamped version of the Force.com CLI. I watched a demo of the CLI in the Developer Forest at Dreamforce, and am very much looking forward to implementing this in my workflow. The CLI contains new commands for creating and running the scratch orgs mentioned earlier (think populating data through a JSON file for example).
In conclusion, the improvements for the overall Salesforce developer experience have been long awaited. Developers will have to wait a little bit longer, but there’s no reason they shouldn’t be taking the steps above to prepare for the exciting times ahead. Also, if you’re interested in reading another perspective on Salesforce DX, be sure to check out fellow Salesforce MVP Matt Lacey’s blog here: http://www.laceysnr.com/salesforce-dx/
Written by James Loghry, Demand Chain Systems – Salesforce.com Architect and Salesforce MVP /Force.com MVP
James is an accomplished professional with over ten years ‘experience in the IT industry. Both a Salesforce MVP and Force.com MVP, James is certified in administration, advanced administration, development and advanced development.
Additional information on DCS Salesforce Development available on our Salesforce Development page.
Also, if you’re interested in learning more about our Salesforce admin services or consulting, please contact us at firstname.lastname@example.org.