Salesforce, Python, SQL, & other ways to put your data where you need it

Need event music? 🎸

Live and recorded jazz, pop, and meditative music for your virtual conference / Zoom wedding / yoga class / private party with quality sound and a smooth technical experience

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.

Loop through Trigger.new all you want

05 Mar 2022 🔖 salesforce tips 💬 EN

In Salesforce Apex, you can loop over Trigger.new as many times as you’d like.

Continue Reading

Cover Letter Examples

24 Feb 2022 🔖 professional development 💬 EN

I’ll keep a running set of cover letter examples in this post.

Continue Reading

Cover Letter Flowchart

23 Feb 2022 🔖 professional development tips 💬 EN

Heaven help me, I hope I don’t regret publishing this next time I apply for a job – I’m practically handing over the secret decoder ring to my inner thoughts. 😅

One of my hobbies is giving people cover letter makeovers. Having been blessed with the opportunity to screen resumes many times in my career, I’ve had a chance to pick up tricks from the best of the best, and I think I’m pretty decent at helping people make themselves look good in a way that’s completely honest and upstanding.

The answers to two questions guide the tone and structure in any cover letter I help write:

Continue Reading

SFTP and SSH authentication patterns

28 Jan 2022 🔖 architecture integration 💬 EN

When you automate business processes into “Extract, Transform, Load” (ETL) jobs, there’s a good chance that you’ll need to use one of these two major internet-based communications protocols:

  1. SFTP (for making your server upload or download files to/from a 3rd party’s server)
  2. SSH (for making your server execute commands on a 3rd party’s server)

There are two common ways of proving your identity in these kinds of inter-server communications.

Continue Reading

Connect to a database from Windows

25 Jan 2022 🔖 databases sql beginner minimum viable build 💬 EN

Relational database management systems (a.k.a. RDBMSes or DBMSes) generally run on computers in the cloud that behave as “servers.”

These days, most people use their web browser to make their computer behave as a “client” so that they can read or edit a given database. Rather than connecting their computer directly to a database server over the internet, they connect to a web site, and the web server hosting that web site connects to the database server hosting the database.

However, certain specialized tasks still require making a direct internet connection (over a protocol such as ODBC) between your desktop computer and a database’s server. This article takes a tour “under the hood” of how Windows can connect directly to two common brands of database: Oracle and SQL Server.

Continue Reading

Read an NDJSON file with anonymous PL/SQL

21 Jan 2022 🔖 databases sql integration 💬 EN

I keep having to go back to old scripts and remember how I read from an NDJSON-formatted file into Oracle PL/SQL memory. (NDJSON is hacky JSON that works great as input to programming languages that are accustomed to reading or writing one line of text at a time when working with files.) This post contains a baseline I can start with from now on.

Continue Reading

SvelteKit Minimum Viable Build

10 Jan 2022 🔖 architecture jamstack web development minimum viable build 💬 EN

I’m wondering if SvelteKit could make it easy for me to build a UI onto an app to help me write “runbooks” for operational processes at work that happen every few weeks. So, first I have to figure out what goes in a SvelteKit, and as usual, I’m starting as bare-bones as the system will let me.

Continue Reading

Salesforce Apex lets you use external IDs

04 Jan 2022 🔖 salesforce 💬 EN

How did I miss this? Salesforce Apex lets you DML lookup and master-detail relationships by external ID.

Continue Reading

How I set up VSCode for a new Salesforce project

21 Dec 2021 🔖 salesforce vscode 💬 EN

It seems my “Setting up VSCode to edit Salesforce metadata” article is still pretty popular, and although I haven’t followed it step-by-step in a while, at a glance I suspect it’s not particularly wrong, per se. However, it’s extremely oriented toward “org-driven development” in sandboxes.

As documented in “Random handy CumulusCI notes”, I’ve been starting to play with “source-driven development” in scratch orgs – like for real, not just for Trailhead points.

This article is my attempt to “think out loud” as I work through whether maybe there’s a good way to set up VSCode, my Salesforce CLI configuration, and my CumulusCI configuration so that folders on my hard drive feel uncluttered but also offer me the flexibility to play with both models of development.

Continue Reading

Localhost HTML with Python on Windows

09 Nov 2021 🔖 python web development minimum viable build 💬 EN

If you’ve ever tried to open a file c:\example\my_web_page.html in a web browser by putting file:///C:/example/webserver/my_web_page.html, you might have noticed that HTML <FORM>...</FORM> tags don’t work like they’re supposed to.

To get an HTML form’s submit button to actually work, you need to visit my_web_page.html at a http://localhost/-style URL, not a file:///C:/-style URL.

On Windows, with the help of Python, you can do this.

Continue Reading