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.

Reuse your Flows with Subflow

12 May 2023 🔖 professional development salesforce 💬 EN

Thanks for coming to watch “Reuse your Flows with Subflow.”

Video, slides, and a session recap can be found below.

Continue Reading

Quick -- I need a blank scratch org

11 May 2023 🔖 salesforce 💬 EN

Whew! As I prepare to talk about subflows (sign up now!), I’m working my way through old usernames and passwords to Salesforce dev orgs and realizing they’ve mostly expired, now that I no longer work the old job to which all the reminder emails were being sent.

Continue Reading

Azure DevOps vs. GitHub repositories and pipelines

09 May 2023 🔖 devops git azure 💬 EN

If you work at a Microsoft-oriented corporation that leverages Azure’s public cloud heavily, you might be using Azure DevOps for version-controlling source code repositories with Git and for automating build / test / deploy processes against those codebases.

Do you wonder if you’re missing out by using Azure DevOps instead of GitHub?

Below are some strengths of each tool. I’d love to hear your additions in the comments.

Continue Reading

Deploying a built webapp onto Azure App Service with ADO Release Pipelines

18 Mar 2023 🔖 web development minimum viable build beginner devops git azure 💬 EN

In this series, we’ve:

  1. Coded a tiny webserver.
  2. Added unit tests.
  3. Git-tracked our codebase in Azure DevOps (“ADO”) Repos and set up proper editing hygiene rules.
  4. Taught ADO Pipelines to “build” our codebase into a ready-to-run webserver runtime codebase every time Git detects we’ve edited the codebase.
  5. Told ADO Pipelines not to bother doing so if our unit tests fail.

All that’s left is to let the world see our amazing website! Let’s do that today.

See the sample codebase on GitHub.

Continue Reading

Provisioning Azure DevOps Service Connections that let ADO Release Pipelines leverage Azure AD Service Principals for sensitive CI/CD tasks

17 Mar 2023 🔖 beginner azure 💬 EN

We’re almost ready to build an Azure DevOps (“ADO”) Pipeline that can release our tiny web server we asked it to build for us onto our rented 2 webserver hosts (one “nonproduction” and one “production”).

Although we created an Azure Active Directory “(AAD)” service principal that’s authorized to work against our webserver hosts, Azure DevOps doesn’t yet know how to use our Service Principal.

In this article, we’ll set up a cross-reference (known as a “Service Connection”) from ADO project to our AAD Service Principal. Once we’ve done so, we’ll be able to wrap up this series by constructing just a little more ADO Pipeline goodness (auto-updating our live websites every time we update our Git-tracked source code). We’re almost there!

Continue Reading

Provisioning Azure AD Service Principals that can deploy built webapps onto your Azure App Service resources

16 Mar 2023 🔖 beginner azure web development 💬 EN

In this series, we’ve written the world’s tiniest webserver, added unit tests to its codebase, told Azure DevOps (“ADO”) Pipelines to auto-build a runnable web server for us each time we update our Git-tracked source code, and rented 2 webserver hosts from Microsoft Azure’s public cloud (one “nonproduction” and one “production”).

Every time ADO builds our source code into a runnable web server, we’ll want it to deploy the “built” codebase onto the hosts we rented. Our ADO automation will need to prove it’s not an evil hacker trying to take over our web hosts. Therefore, we need to:

  1. Create an Azure Active Directory (“AAD”) identity ADO can use to prove that it is who it says it is.
  2. Create an Azure RBAC role assignment authorizing the new AAD service principal to deploy code onto our web hosts.
    • (We’ll worry about telling ADO how to use the new AAD service principal in a subsequent article.)
Continue Reading

Provisioning Azure App Services to host your Hello World webapp

15 Mar 2023 🔖 beginner azure web development 💬 EN

Thus far in this series, we’ve written the world’s tiniest webserver, added unit tests to its codebase, told Azure DevOps (“ADO”) Pipelines to auto-build a runnable web server for us each time we update our Git-tracked source code, and told ADO to fail the build process if the unit tests don’t pass.

Before we can ask friends to visit our new website, we’ll need to rent a webserver host from Microsoft Azure’s public cloud.

Azure App Service’s (“AAS’s”) Web Apps service (“AASWA”) is a great choice for a simple web server. Let’s rent ourselves two such resource instances:

Continue Reading

Provisioning an Azure Resource Group

14 Mar 2023 🔖 beginner azure 💬 EN

Before we rent a web server from Microsoft Azure’s cloud, we’ll need set up a home for our web server in Azure called a “Resource Group.”

Continue Reading

Logging your command line into Azure

13 Mar 2023 🔖 beginner azure 💬 EN

To rent resources from Microsoft Azure’s public cloud, we need to be logged into it.

Continue Reading

Failing Azure DevOps Pipeline builds if unit tests fail

12 Mar 2023 🔖 web development minimum viable build beginner devops git azure 💬 EN

  1. We’ve built the world’s tiniest webserver.
  2. We’ve added unit tests that can help us predict whether it would run “correctly.”
  3. We’ve told Azure DevOps (“ADO”) Pipelines to auto-build a runnable web server for us each time we update Git-tracked source code.
  4. How about having Azure DevOps fail the auto-build if our unit tests fail?

Let’s do it!

See the sample codebase on GitHub.

Continue Reading