The Value of Lightning

Written by | Jun 23, 2016

Even if you’re on the fringe of the ever-expanding Salesforce ecosystem, Lightning has likely become a part of your regular, if not daily, workspeak. Salesforce has bet big on this new UX framework and there are no signs that the cloud computing giant is slowing down. I work very closely with one of the clouds at Salesforce and I’ve been informed multiple times that this group has 40 developers focused solely on Lightning. If that’s not all in, I don’t know what is.

Some of you may be well on your way down the Lightning path, but I would imagine that many of you out there have yet to see true material impact from this paradigm shift. It’s still early in the overall rollout of “lightning-ized” features and functions on the platform and many organizations are waiting to see how things flesh out.

I’ve been fortunate to be right at the center of a key product initiative at my firm that involves the development of a suite of lightning components. I’ve seen the potential value in Lightning first-hand and I want to break down that value for those of you who are still wondering how Lightning will help move you or your company ahead.

trailhead_trail_developer_lightning_experience copy

Rapid Development

Full disclaimer – I am not a coder! Still, the ease of development in lightning is apparent to me. I’ve built a few components myself and they actually worked. If that’s not proof of a well-designed framework, then go ahead and try it yourself in Trailhead. Additionally, Kim Honjo at Salesforce gives us a few bullet points on why building lightning apps/components is easier than your grandma’s development framework:

Out of the box functionality. Kick start building apps with an out-of-the-box set of components. You don’t have to spend your time optimizing apps for different devices as the components take care of that for you. Components are encapsulated, which gives component builders the freedom to change internal implementation details while the component’s public shape remains unchanged.

Smart performance. The Lightning Component framework uses a stateful client and stateless server architecture that relies on JavaScript on the client side to manage UI component metadata and application data. The client calls the server only when necessary, and the server only sends data that is needed by the user to maximize efficiency. Using JSON to exchange data between the server and the client, the framework intelligently utilizes your server, browser, devices, and network so you can focus on the logic and interactions of your apps.

Events-driven programming. The framework uses an event-driven programming for better decoupling between components. You can write handlers that respond to interface events as they occur, which may or may not be triggered by user interaction. Any component can subscribe to an application event, or to a component event they can see. This makes is possible for components built by different parties to work together seamlessly.

 

force_com_developer_console

Efficient Configuration

One huge benefit with leveraging lightning components is the ability to easily include configurable properties in the components themselves. This is another smart move to to support the declarative / low code approach that we’re seeing in general these days on the Salesforce platform. Compare this to Visualforce; there is really no equivalent other than custom settings…and no one is complaining about properties being used in place of custom settings. Go ahead and try to find a custom settings champion who is lobbying against this transition.

Community_Builder

Configuration options for the Product Showcase component in the CloudCraze CartPlus app

 

Modular, Drag ‘n’ Drop Functionality

This it is – the big kahuna. Again, let’s first revisit Visualforce. Sure, you can create them in a flexible, dynamic way and you can do “whatever you want” with the technology, but doing so potentially takes a lot of time and/or money. Changes to Visualforce pages typically aren’t quick or easy and almost never suitable for admin control.

While the creation of Lightning Components still understandably resides in developers’ hands, the application of the components can be fully driven by those of us on the declarative side. Along with the configuration options that I previously mentioned, admins can easily drag ‘n’ drop components via Community Builder or Lightning App Builder to their appropriate home. Think of components as Legos. With Visualforce, developers would hand over the final, assembled Lego car. Great, but just don’t change it if you don’t have to. With Lightning Components, admins can now take the custom-built Lego pieces from development and assemble the final product themselves. Need a plane instead of a car? Go ahead and reassemble those Legos. Some development may be needed, but it will not be at the level needed for a Visualforce change.

product_detail

Rich Ecosystem

One more key point from Kim’s article underscores the ability to easily leverage third-party components to create your overall application.

Creating business-ready apps has never been easier and made accessible in the Salesforce1 Mobile App, Lightning Experience, Lightning App Builder, and Lightning Community Builder. Additional components are available in the Lightning Exchange, and you can similarly publish your components and share them with other users.

 

If you haven’t touched Lightning yet, be encouraged. With Trailhead, it’s easy to get started; dive in and see first-hand why there’s value in Lightning. Good luck!

Note: CloudCraze CartPlus (shown above) is listed on Appexchange.

Salesforce MVP | Author of Practical ..read more