Keyboards are data-loaders
06 Sep 2022
Table of Contents
Psssst, Salesforce Admins, Salesforce Developers, and ETL Developers – keyboards and mice are data-load tools. This doesn’t sound like a hot take, but if you’re involved in requirments analysis for Record-Triggered Flows, Apex Triggers, Screen Flows, Lightning Web Components, Experience Pages, or “Extract, Transform, Load” (ETL) jobs (like Salesforce Data Loader, Mulesoft, Boomi, Informatica, or Jitterbit), there’s a new way of dividing the world into 2 parts that I think you’ll find useful!
In the “Celestial Emporium of Benevolent Knowledge,” Argentinian poet Jorge Borges claims to have found an encyclopedia that divided the entire universe into a mere 14 categories that, to his essay’s reader, may seem like a very strange and unhelpful way of categorizing the contents of the universe into just 14 parts (including “suckling pigs,” “those that tremble as if they were mad,” and “et cetera”). Borges’s takeaway is that “there is no description of the universe that isn’t arbitrary and conjectural for a simple reason: we don’t know what the universe is.”
I’m about to one-up the Celestial Emporium and suggest you divide your entire personal view of “how data gets into Salesforce” into a mere 2 categories:
- data-loading
- triggers
Like the “Celestial Emporium,” my categorization may feel oversimplistic, but arbitrary does not mean useless. “Without categorization, we would not be able to interact with our environment as efficiently as we do,” writes neurobiologist Pieter Goltstein.
What: CUD / CED
You’ve probably heard the acronym “CRUD” (“Create, Read, Update, Delete”) or its alternative “CRED” (“Create, Read, Edit, Delete”) before.
Salesforce teaches it to admins right away so that they can appropriately restrict and unrestrict access the records stored in Salesforce objects.
Any Salesforce admin who’s written a Process Builder, Workflow Rule, or Flow (including Screen Flows), any Salesforce Developer who’s worked in Apex, and anyone who’s worked in an ETL tool (like Salesforce Data Loader, Mulesoft, Boomi, Informatica, or Jitterbit) are almost certainly familiar with the concepts under the following:
- “
INSERT
” and “UPSERT
” DML data-modifying operations (Create) - “
SELECT
” SOQL data-reading operation (Read) - “
UPDATE
” and “UPSERT
” DML data-modifying operations (Update / Edit) - “
DELETE
” DML data-modifying command (Delete)
This article suggests a mental model for categorizing the “DML data-modifying” concepts – just the “CUD” / “CED” parts of “CRUD” / “CRED.”
Definition: “Data-modification” is simply the act of forcing data to change in Salesforce.
Why: The two types of CUD / CED
If “data-modification” itself – the concept of “CUD” / “CED” itself – is the “what,” then my 2-part categorization divides “data modification” into two types of “why.”
Why did Salesforce know that it needed to change some data on file within itself?
Data-Loading
Definition: Data-Loading is everything that saves information into Salesforce that I don’t define in this article as a “trigger.”
This is the “et cetera” of Borges’s 14 categories! If I don’t explicitly mention a concept under “triggers,” it’s “data-loading.”
TODO: Write me