Bienvenue! Welcome!
My goal is to help you work faster.
I must speak and teach until I hear 10 people say, "That thing you taught me? I used it! And it saved me time!"
(Ahem ... although maybe blogging slower than I'd hoped. Ugh, coders' repetitive stress injury.)
So check out the tutorials. Play with code. Tell me about your triumphs.
DevOps vs. ITSM Maturity
29 Nov 2022
DevOps maturity is important, but might it be secondary to other technology maturity models?
Continue ReadingShould CI testing always be automated?
28 Nov 2022
- Q: Should testing always be automated in continuous integration?
- A: Yes. Sorta. Huh?
Securing CI/CD pipelines
28 Nov 2022
Here are some considerations to keep in mind when deciding where to store sensitive information as you secure a CI/CD pipeline:
Continue ReadingUse Subflow EVERYWHERE
21 Nov 2022
Flownatic Salesforce admins! Have you ever let a Salesforce Developer (like the ones at UnofficialSF) write complicated Apex so you could call it in your Flow as an Action?
What if I told you that developers could depend on your flows instead when they need to do something complicated?
Continue ReadingSFDX and Git exercises for beginners
18 Nov 2022
Congratulations – you have a new job at Banana Stand Corporation!
The company’s primary production Salesforce org lives at https://bananastand.my.salesforce.com/
, with important sandboxes at https://bananastand--staging.sandbox.my.salesforce.com/
and https://bananastand--dev.sandbox.my.salesforce.com/
.
The most important shared Git repository corresponding to https://bananastand.my.salesforce.com/
lives at https://github.com/BananaStandCompany/salesforce_primary/
.
- Q: How do you successfully enhance these live Salesforce orgs without irritating colleagues who also use
https://github.com/BananaStandCompany/salesforce_primary/
? - A: Read on!
Git and GitHub exercises for beginners
18 Nov 2022
Congratulations – you have a new job at Banana Stand Corporation!
The corporate blog lives at https://bananastand.example.com/blog
and it’s your job, as a new HTML and CSS expert, to make the blog even more beautiful than it already is.
The shared Git repository containing a codebase full of .html
and .css
files that drive the way https://bananastand.example.com/blog
looks is hosted on the internet at https://github.com/BananaStandCompany/website_corporate_blog/
.
- Q: How do you successfully make the blog more beautiful without irritating colleagues who also use
https://github.com/BananaStandCompany/website_corporate_blog/
? - A: Read on!
Jitterbit: replace a non-breaking space
07 Oct 2022
Some visitor typed a non-breaking space into their address when filling out a form. 123 Sun St, New York, NY 10001
is just 30 characters long, but as I tried to data-load an address into an Oracle VARCHAR2(30)
-typed column (THE_ADDRESS
) with Jitterbit, Oracle complained: ORA-12899: value too large for column ... (actual: 31, maximum: 30)
. Jitterbit logs showed the actual address submitted in my flat-file source column “address
” as 123 Sun St, New York, NY 10001
.
“Allow truncation of character fields to avoid field length errors” was already checked on the database target side of the Jitterbit transformation … so what was this all about?
Continue ReadingCumulusCI Minimum Viable Build
26 Sep 2022
While the cci project init
command will throw a lot of useful empty files into a blank folder for you, and will create a fileset that supports launching a scratch org with the cci flow run dev_org
command, it generates a lot of files you don’t necessarily need right away. I’ve built a sample project and hosted it at GitHub to show off what I, personally, have found is actually necessary. You can download a copy and run cci flow run dev_org
within it to see what I mean (although be sure to read below and note the /.sfdx/sfdx-config.json
hand-edit you need to make).
Download your org schema with CumulusCI
16 Sep 2022
I made a new codebase that lets you use CumulusCI (CCI) to easily download the definition of every object and field in a Salesforce org (part of its “metadata”) onto your hard drive as a plain-text file formatted in the JSON punctuation standard.
Continue ReadingCompare Flow versions in VSCode for Salesforce
16 Sep 2022
Today I had to propose quickly hotfixing a Flow in production. It was terrifying – it’s production! I don’t work in Flow all the time!
Not only did I send screenshots to the org’s admins of my inactive-but-newer version … I needed to be really confident and proofread the difference between the underlying XML codebase between the two versions before I could swear I’d done the right thing.
So here’s what I did:
Continue Reading