Salesforce is Innovative?


Whenever we talk to folks outside of work about what we do, we get a common response: Salesforce sucks. I’ll even admit, before starting Blue Canvas I had a similar opinion. I felt like it was too busy and the UI resembled my worst nightmare of “Enterprise software”.

But now that I’ve been working with Salesforce as a developer rather than as an end-user, I’ve come to see Salesforce as a surprisingly innovative and powerful platform. And I have a much clearer understanding of why it’s over $10B in annual revenue and growing at almost 25% year over year.

Why is Salesforce the Rodney Dangerfield of software platforms? (Rodney Dangerfield was a comedian whose primary bit involved complaining of getting “no respect”.) Probably because it can be difficult to work with. But it’s also worth noting that Salesforce is actually pretty innovative in some key technical areas.

Rodney Dangerfield 1972

Cloud

The most obvious thing is Salesforce’s embrace of the cloud. Salesforce founder Marc Benioff was at Oracle when he realized that there was a big shift coming in enterprise software: cloud computing. Benioff and Salesforce made an all in bet on it in the hope that they could provide what tools like Oracle, Siebel and other CRM solutions were doing at a fraction of the cost and headache. You can see it in Salesforce’s logo.

Of course, there is nothing exciting or innovative about the cloud today. In fact, “cloud” has become a buzzword to make fun of. With the rise of AWS, iCloud, Dropbox, SaaS, et al, everyone is using the cloud today.

Software is eating the world, but we aren’t training developer fast enough. Tools like Salesforce actually allow business people to upgrade their skills into those of developers without taking on a lot of training.

But before Salesforce large enterprises were afraid to host their data in cloud systems. Companies spent millions of dollars setting up and maintaining server farms to host their data and applications. Salesforce was the first to make the difficult sales pitch to established enterprise players. Because of the focus and care Salesforce put into trust, security and reliability, they paved the way for so many other SaaS companies to leverage the cloud for their offering.

Schemaless Database

Something that maybe fewer people realize about Salesforce is that at its core, it’s a highly customizable database. It’s not just a SaaS product for managing customer data. Many companies now use Salesforce as an ERP or inventory management system. Companies build front end websites using Salesforce as a backend. They integrate data from multiple different departments and do financial reporting from Salesforce.

Salesforce has been doing schemaless-ish/key-value databases long before CouchDB and others made it cool.

Before Salesforce, database management required full time teams of trained professionals. You might invest millions just to support your database and it required specialized training.

Salesforce has a multi-tenant cloud architecture. You can write functions in their proprietary language (Apex) and run them in the cloud. You don’t have to maintain servers or setup your environment. Just write your scripts and logic and Salesforce knows how to handle it. You don’t have to be a highly trained programmer to get up and running with writing custom application logic.

Salesforce made it possible for you to administer your database without experts in things like SQL or relational databases. Salesforce has a user friendly interface for creating and managing database tables and relationships. You can add fields without schema migrations. You can even use the platform to write custom logic and automation to manipulate and display data without being a developer.

Clouds

Cloud Functions

AWS Lambda is an exciting new concept for cloud computing and is rightfully being heralded as a major shift and next iteration for the cloud. But Salesforce was actually doing serverless computing for years!

Salesforce has a multi-tenant cloud architecture. You can write functions in their proprietary language (Apex) and run them in the cloud. You don’t have to maintain servers or setup your environment. Just write your scripts and logic and Salesforce knows how to handle it. You don’t have to be a highly trained programmer to get up and running with writing custom application logic.

Though it’s less flexible than something like Lambda, it’s worth noting that Salesforce was actually ahead of the curve in this way.

Industry Leading Design System

Salesforce also has taken a lead position with it’s Lightning Design System. The LDS allows developers to build aesthetic applications without doing a lot of front end work. The LDS is actively maintained by Salesforce UX team and allows developers to reuse components in applications. The LDS makes building accessible components simple and straightforward. Though it’s specifically designed for integration and use with the Salesforce Platform and Heroku, it’s actually platform agnostic and can be used with any stack. We’ve even selected it for our main app here at Blue Canvas.

Business Application Software

A big part for why Salesforce doesn’t get any credit for any of this is it’s name and branding: people assume it’s simply a tool for sales departments. Beyond that, Salesforce has built all of these tools without giving as much extensibility and flexibility as developers sometimes like.

But this can be an advantage as well! Salesforce realized that there was a need for an enterprise development platform that fit the needs of business software teams. The platform should be flexible but prescriptive. It should allow you to do a lot, but not require a lot of setup and training.

Salesforce was able to innovate on the technical side with cloud computing, NoSQL databases, and serverless functions. But it’s real innovation was pointing these technical advances towards a new audience: citizen developers.

Salesforce really helps developers not repeat themselves. Salesforce handles many tedious aspects of development like authentication, permissions, and security in a very flexible but prescriptive way. This makes it ideal for building and maintaining business applications. Ultimately, Salesforce handles a lot of the plumbing for your application so you can focus on the truly innovative side of your project and not be messing around with standard functionality.

Furthermore, your applications should be future proof. A lot of business software needs to just run for years or even decades with minimal support and updates. Early on, Salesforce committed to backwards compatibility and built a tool that business developers really loved.

If you’re a developer who is brought into build some business process software before moving onto another project, Salesforce is the perfect option. Once you get things set up you can pass it along to a business team with minimal training. And you can reasonably expect it to run without getting midnight calls to hotfix a bug from a system upgrade.

Beyond Technical Innovation

Salesforce was able to innovate on the technical side with cloud computing, NoSQL databases, and serverless functions. But it’s real innovation was pointing these technical advances towards a new audience: citizen developers. Many businesses have a real problem: they need to create business software that is cost effective, powerful and inexpensive (relatively).

Salesforce became a category leader by building the default low code development platform. Software is eating the world, but we aren’t training developer fast enough. Tools like Salesforce actually allow business people to upgrade their skills into those of developers without taking on a lot of training.

Salesforce might actually be worth a second look after all.