5 Top reasons to transition to Salesforce Lightning
When Salesforce launched Lightning in Dreamforce ’15, it embarked upon a whole new journey towards user experience and the shift in Salesforce ecosystem. It is a significant change, considering the history of Salesforce and shifting industry trends.
A little background
This led to introduction of Visualforce. A server side User Interface (UI) rendering engine for Salesforce. Comparable to ASP.Net, PHP like scripting language wherein the processing is done at server end and generating HTML for the browser. This was an instantaneous hit due to obvious reasons. With faster processing, easy to use UI tags, native Salesforce support for cross browser compatibility, it was a much faster UI platform which helped developers generate Salesforce like UI faster and better.
As we all know, things change, and more so in technology world. Tablets and mobile devices are outperforming usage stats as compared to laptops and near extinction desktop computers. with these devices, user experience models have also changed significantly. More so, with faster processors and better memory, the handheld devices or current day easily outperform some computers. This led to introduction
Mobile first approach
As of this time, mobile internet usage is skyrocketing and mobile internet user count has already surpassed that of desktop internet users.
There are more mobile internet users than desktop internet users; 52.7% of global internet users access the internet via mobile, and 75.1% of U.S. internet users access the internet via mobile.
For more stats/ facts refer Internet stats and facts for 2016
This clearly states the consumer shift towards mobile. With this, it’s quite imperative that the shift is not just for consumers but for all users at large.
Unlike Visualforce, Salesforce Lightning component framework is mobile first framework from group up. It is created to cater to all mobile needs as a primary motive and is equipped to handle related problems/ scenarios.
Unlike Visualforce, Salesforce lightning component framework promotes processing within client browser. This helps in ensuring that the application is pulling only required data on-demand and is managing the data and process itself.
Note:- Existing visualforce is still a good option, wherein mobile compliant toolkits can be used. However, lightning components framework is not just a development platform but a combination of tools which includes:-
- Salesforce Lightning Component Framework — built on top of open source “Aura” framework (https://github.com/forcedotcom/aura) which is the backbone of whole lightning system
- Salesforce Lightning Design System (SLDS) — an open source (https://github.com/salesforce-ux/design-system) CSS based UI framework to provide a unified user interface to lightning based applications. (Note:- it can definitely be used within custom applications not built on Salesforce or lightning platform). Built on CSS best practices and principles, it is definitely a very (seems to be inspired from SASS/ LESS)
- Salesforce Lightning App Builder — a drag-and-drop application builder, designed to create lightning applications by coupling lightning components.
Other lightning related technologies are:
- Salesforce Lightning Experience (a.k.a. LEX) — Salesforce CRM user interface redesigned/ rebuilt on Salesforce lightning component framework
Lightning is Salesforce’s primary platform
With the launch of Salesforce Lightning experience in Dreamforce ’15, it is pegged as the primary platform for Salesforce. That is, all new features and development will be lightning focused. There are still new features to be added to Salesforce classic, but Lightning definitely gets the preference over Salesforce Classic. Following are some o new features launched over the time which are only available within Salesforce Lightning experience:-
- Sales Path — process driven sales process implementation displayed visually
- Lightning voice — enables voice calls from Sales cloud
- Kanban View — snapshot of all major opportunities within pipeline
- Lightning app builder — build and distribute apps by using lightning components
- News (formerley Account Insights) — latest updates about customers right within account view
I still remember when we used to have 256MB RAM and it was “cool”. Then came 1GB RAM computers and we thought it had all the space we’ll ever need. As of writing this article, i’m writing it on a laptop with 16GB of RAM and Intel i7 processor (6th generation). The idea of sharing this trivia is that the computing power in machines has been increasing exponentially (as famously stated by Moore’s Law) over the years.
Hence, the initial reason to create thin clients (browsers), to handle only the view part and Server to handle the processing part is almost diminished now. In fact, with latest trend towards Serverless computing, the notion is tending to be reversed, wherein the processing is being done at the browser level. This not only helps in making user experience better, but is also driven from the fact that most of the users are using their mobile devices to access applications. We are still living in a world where internet connectivity cannot be very reliable at times, so with processing happening at your end, it can take care of any network drops. Not to mention, less processing load on servers, leading to cost savings.
With Salesforce lightning experience using Single Page application (SPA) design, the initial load may seem like a rocky start at beginning. But, any subsequent calls/ requests are handled asynchronously and on-demand. So, application responds faster and appears better. Unlike Salesforce classic, it doesn’t post entire page back and refresh page to display required details.
Disclaimer: There have been multiple users/ admins reporting low performance while using lightning (as compared to Salesforce classic). As Salesforce is still working on Lightning framework (and Lightning experience), the performance is expected to improve over time.
Modular and Reusable
As mentioned previously, Salesforce lightning framework promotes component driven development. Being a component driven framework, the concept behind lightning is to be able to create self-contained and re-usable functional components i.e. a complete functional piece which can be combined with several other pieces to build desired apps.
Component driven approach enables developers to create multiple components. Each component is exposes one or more functionalities. These components can be:-
- clubbed together to create applications using Lightning app builder
- added to Salesforce communities
- can be embedded with Visualforce pages
- can be even exported and hosted on external web server
- last and most important, publish it on AppExchange
So, there are really lot of possibilities once you create a lightning component.
Can Stretch Beyond Salesforce
One of the limitations of developing applications within Salesforce was complete ignorance of development in other development platforms. Frankly, App Cloud (formerly Force.com) abstracted so many things for developers that it definitely boasted about having 4X / 5X productivity improvement over other development platforms (referred in an article I wrote few years back Development time in SFDC vs. .Net and Java).
Salesforce Lightning framework is built on top of open source aura framework. As per it’s documentation “Aura is a UI framework for developing dynamic web apps for mobile and desktop devices, while providing a scalable long-lived lifecycle to support building apps engineered for growth. It supports partitioned multi-tier component development that bridges the client and server.”
So, your development team building on lightning framework (or Aura framework) is not confined to development within Salesforce platform. Instead, they can also create custom applications, which can be hosted over other cloud platforms. This not only stretches the possibilities for developers, but also for business to be able to re-use their existing development team to create other applications.
Conclusion (added disclaimer)
At this stage, Salesforce lightning experience and Lightning framework is still evolving (disclaimer) and is expected to improve with each release. It is inevitable that it will be compared with Classic, and there will certainly be strong backers of Salesforce classic. But, given that Lightning is platform of choice for Salesforce and is in line with latest trends in software development arena at large, Lightning is definitely not be missed.