The history of software development is an ongoing pursuit to build increasingly higher layers of abstraction. More abstractions mean less boilerplate and infrastructure code, freeing up time to build differentiating features and innovation.
Early applications had very few abstractions and were true monoliths, tightly coupling UI, business, and data access logic into a single code base.
Over time, key parts of applications have been decoupled from the main code base, abstracted, and commoditised. For example:
- Operating systems have abstracted hardware details, providing a platform to build applications.
- Database servers have abstracted low-level data access operations.
- Web and application servers have abstracted infrastructure to host UI and business logic.
- Cloud computing has abstracted the physical infrastructure required to run applications.
- Containers have abstracted servers and differences between cloud platforms.
- UI frameworks and libraries have abstracted common UI components and interactions.
- APIs have abstracted all sorts of common and specialised tasks and services.
- Programming languages and frameworks continuously aim at providing higher levels of abstraction, so you don’t have to write lower level code.
While “no-code” and “low-code” are more recent terms, the pursuit to simplify software development with less code is as old as software development itself. All application development platforms abstract features making them essentially low-code platforms, but the extent of abstraction and the range of developer experiences offered differ significantly. The spectrum of options ranges from pure no-code solutions to pure code solutions, and everything in between.
The no-code to code continuum
No-code
On one end of the continuum, no-code solutions allow you to build apps without writing any code. No-code solutions offer productivity benefits and empower more people to build solutions. You use visual tools to create software assets (data entry screens, process automations, mobile apps). They generally work well to build standard experiences or automate standard processes. But pure no-code solutions inevitably have limitations: When you need to create highly customised experiences or highly customised integrations, at some point you hit the limits of what can be done without code. No-code solutions also don’t integrate well in traditional developer workflows. As a result, apps built with these solutions are often handled separately, disconnected from other IT apps.
Code
On the opposite end, pure code solutions rely heavily on custom code to build software and offer complete control over the development process. But if you adopt a code-heavy approach (if you default to solving every problem with code), you’ll often spend time and resources reinventing the wheel and solving problems that have been solved before, which means less time to focus on differentiating features and innovation. Code-heavy solutions also increase technical debt over time. If you code it, you own it, and you’ll need to maintain it for years to come.
Low-code
Low-code solutions come in different flavours and live somewhere in between no-code and code on the continuum.
Some low-code platforms have their roots in no-code and have minimal code support. These platforms often lack standard developer tools and workflows. When they reach the limit of what that platform can do, organisations often have to move to an entirely different platform for traditional code support.
Other low-code solutions were born as pure code platforms. Visual tools or code generation may have been added to automate some developer tasks. But when low-code is an afterthought, these platforms may not be built on the right foundational layers like trust and metadata to fully realise the benefits of low-code. They remain heavily code-centric, limiting their ability to empower more people to build apps and to drive significant productivity gains.
Salesforce low-code
Unlike other solutions, the Salesforce Platform was built from the ground up to support the full continuum of development options, from no-code to code. It provides the right tool for the right task on a single integrated platform underpinned by core pillars, including:
- Trust
- Metadata
- Visual tools
- Developer tools
- Higher layers of abstraction
Let’s take a closer look.
Salesforce low-code platform pillars
Trust
When you build on the Salesforce Platform, with or without code, you build on the same security infrastructure that Salesforce apps like Sales Cloud, Service Cloud, Marketing Cloud, and Commerce Cloud are built on. It provides a broad swath of features, including authentication, authorisation, protection against different types of attacks, compliance with regulations, data privacy, data residency, and more. Of all the features that a low-code platform abstracts, of all the code that you don’t have to write, security is the most important. When it comes to security, there is no room for error, and “good enough” is not an option. Relying on the proven Salesforce security infrastructure allows you to focus on building differentiating features and innovation, not security. The security layer you build on is the same whether you build on the no-code or code side, or anywhere in between on the low-code continuum.
Trust is built in, but the platform also comes with an extensive set of tools that you can use to manage and monitor all aspects of security:
- Salesforce Shield: A suite of security tools that prevent data loss, help customers address compliance, and optimise application performance monitoring
- Security Center: Salesforce’s “command centre” for security configurations and controls, such as user access, permissions, licenses, and more
- Privacy Center: An intuitive tool to automate data privacy management, including customer preferences and consent
- Salesforce Backup: Salesforce’s native data backup solution to minimize business disruption
- Salesforce Data Mask: A lightweight tool to protect sensitive data in Sandboxes
Metadata
Everything you build on the Salesforce Platform is described through metadata: data models, UI layouts, permissions, flows, reports, code, prompt templates, copilots, agents, and more. Rich metadata is what powers visual tools. The availability of rich metadata shared across the entire low-code spectrum, from no-code to code, is a game-changing advantage of the Salesforce Platform, providing many benefits, including:
- Productivity: With rich metadata, you can define an asset once and reuse it anywhere, instead of redefining it everywhere. That is true across the low-code spectrum. For example, a layout defined in the layout builder can be reused in a Lightning Web Component.
- Consistency. Because you can reuse the asset definition anywhere, it is represented the same way everywhere, with the same characteristics (UI, validations, permissions, and so on).
- Integrity. Because the metadata also tracks where assets are used, you cannot inadvertently compromise the integrity of your applications via errant modifications. For example, you can’t use a no-code tool like Schema Builder to delete a database field that’s used in a piece of code like a Lightning Web Component.
- Better AI. Metadata also allows large language models (LLMs) to better understand the context and meaning of the data, which can lead to more accurate responses. For example, an LLM could use metadata to present CRM data to the user in a more useful and actionable way. More on that later.
Visual tools
Built on the trust and metadata foundation, the Salesforce Platform’s comprehensive suite of visual tools enables admins and developers to build core elements of their solutions. These tools include:
- App Builder for composing applications using standard and custom components.
- Flow Builder for automating and orchestrating processes.
- Report Builder for creating reports and dashboards.
- Schema Builder for designing data models.
- Experience Builder for crafting websites and commerce experiences.
- Prompt Builder for creating prompt templates.
- Agent Builder for building and configuring AI agents and copilots.
- Prediction Builder for creating AI-powered predictions.
- Model Builder for building or bringing your own AI models.
As part of the continuum of development options available on the platform, these visual tools significantly boost productivity. You can:
- Build entire solutions using only visual tools.
- Use code in visual tools for added functionality. For example, incorporate code actions or APIs into Flow Builder, Bot Builder, Prompt Builder, and Agent Builder for complex business logic, or integrate custom web components into user interfaces built with Flow Builder and Bot Builder.
- Build applications using a hybrid approach, combining visual and developer tools.
Ultimately, you choose the best approach for your project, using the right tool for the job within a unified platform. Regardless of the method you choose, all development occurs on the same metadata foundation, ensuring productivity, consistency, and integrity.
Visual tools are not just for admins or no-code developers. They also empower traditional developers to streamline common tasks, allowing them to focus their code efforts on differentiating features and innovation.
Developer tools
The Salesforce Platform is purpose-built to support the full continuum of development options, allowing developers to choose the best tool for the task. And when the right tool is code, the Salesforce Platform provides developers with the developer tools, workflows, and patterns they are familiar with to build and deploy applications, including:
- Salesforce CLI: A command-line interface for creating and deploying code.
- Code Builder: Salesforce’s web-based IDE built on top of Visual Studio Code.
- Salesforce extensions for Visual Studio Code: A collection of extensions to streamline Salesforce development.
- Einstein for Developers: An AI assistant to help developers write Salesforce code.
- Sandboxes: Isolated environments for securely testing and developing applications without affecting production data.
- DevOps Center: A tool for managing and automating the entire software delivery lifecycle.
- Lightning Web Components: A UI framework based on web standards.
Higher level of abstraction
Every application requires a foundation of core capabilities. With traditional platforms, developers often spend significant time building these core capabilities from scratch, or assembling a custom stack of libraries, servers, and tools, introducing various dependencies along the way.
Salesforce stands apart by providing these core capabilities out-of-the-box. For example, data security, privacy, sharing models, automation, reporting, analytics, integration, mobile, accessibility, localisation, and AI are built-in. You don’t have to reinvent the wheel and you can focus custom development on differentiating features and innovation. And because all these features are built on shared metadata, they work consistently and collaboratively, and they are manageable and customisable through a consistent set of tools.
But there is another abstraction that really sets the Salesforce Platform apart…
Applications as the next level of abstraction
Today, most developers wouldn’t consider building their own database server from scratch before starting to build a new application. This problem has been solved and abstracted.
The next level in the pursuit of higher layers of abstractions is enterprise applications themselves. For the same reason it doesn’t make sense to build your own database server, it probably doesn’t make sense to build your own core CRM either. Many enterprise applications are customisations, extensions or entirely new experiences built on standard sales, service, marketing, and commerce capabilities. And the Salesforce Platform uniquely abstracts these capabilities as well.
In other words, the Salesforce Platform is an application composition platform that makes it easier than any other platform to build and compose custom applications that are customisations, extensions, or entirely new experiences that can make full use of sales, service, marketing, or commerce capabilities or data.
The abstraction of core applications becomes even more important in the AI era.
Application composition, orchestrated by AI
Indeed, generative AI is changing the way we think of and build applications. New conversational experiences are emerging, powered by core LLM capabilities like deep language understanding and reasoning.
This enables a new software paradigm where software is no longer built as full-fledged applications but as agents: collections of granular building blocks that encapsulate specific capabilities and that can be orchestrated by LLMs and their reasoning capabilities.
The most transformative aspect of this new paradigm is that it enables agents to handle unanticipated requests without predefined requirements. Imagine an agent equipped with dozens or even hundreds of these building blocks, or as they are referred to at Salesforce, actions. It could compose them in a virtually infinite number of ways, including in ways never anticipated, enabling it to solve new problems on the fly. This is the ultimate form of application composition.
This is where the Salesforce Platform shines. Broken down into actions, the industry-leading applications (including sales, service, marketing, commerce, and industries) instantly provide Salesforce agents (known as Agentforce Agents) with a wealth of capabilities. Salesforce agents can compose and orchestrate these actions in any number of ways, providing users with a seamless and unified experience across sales, service, marketing, commerce, and more. In addition, developers can complement standard agent capabilities with custom actions powered by code, APIs, Salesforce flows, or prompt templates.
Unified data
To get good AI you need high-quality and unified data. That’s why Salesforce Data Cloud is at the heart of the Salesforce low-code platform, enabling you to connect, unify, and harmonise data from different sources: CRM, Snowflake, Data Bricks, AWS, Google Cloud, Azure, and many more. With over 200 available connectors and the ability to easily create custom ones, Data Cloud provides unparalleled connectivity.
Data Cloud lets you map disparate entities to standardised data model objects (DMOs). For example, “individuals” (contacts, leads, customers, and so on) stored in dozens of different entities across your company’s systems can now be accessed and queried together from a single DMO as if they were stored in a single entity. Identity resolution takes harmonisation further by letting you define sophisticated rules to identify and merge records representing the same information (for example, the same “John Smith” in CRM and Snowflake) to create a single and complete view of your data.
Once your data is connected, unified, and harmonised, Data Cloud enables you to activate it at scale in AI agents, analytics, and other applications, delivering valuable insights and personalised experiences. The days of siloed experiences limited by siloed data are over. Users, whether they are employees or customers, expect connected experiences that bring together and make sense of all relevant data.
Summary: The low-code platform for the AI era
Unlike other platforms, the Salesforce low-code platform supports the full continuum of development options, from visual tools to robust coding capabilities, enabling organisations to choose the right tool for their specific needs.
Because the Salesforce Platform provides higher levels of abstraction, organisations can focus on building differentiating features and innovation, rather than coding commoditised features and infrastructure.
By abstracting CRM, AI, and unified data, the Salesforce Platform supports a powerful new approach to application composition. Software and agents can be built as collections of granular building blocks that encapsulate specific capabilities. These building blocks can then be orchestrated by the reasoning capabilities of large language models, enabling organisations to create groundbreaking experiences for the AI era.
Learn the Salesforce Platform basics
Get introduced to the platform, navigate use cases, and build custom functionality. Discover how on Trailhead, the free online learning platform from Salesforce.