The Risks of Copying and Pasting Apex

It’s a tricky position to be placed in: you’re an admin, a declarative developer, or a junior developer, and your leadership comes to you with an ask that you know requires Apex that you haven’t been trained to write.

More …

The Dangers of Anonymous Apex and the Developer Console

The Developer Console and Anonymous Apex seem like appealing ways to learn, to do ad-hoc exploration of the system, to perform quick fixes, and to prototype ideas in Apex. Unfortunately, the low barrier to entry with these tools masks some very subtle complications that can turn into traps, especially for learners and early-career Salesforce developers for whom that low barrier to entry may carry the most value. Here’s why, and some thoughts on achieving the same objectives in a safer way.

More …

The Bridge Package Pattern

Managing your package architecture for a Salesforce platform product is a major challenge not because it’s difficult as such, but because in many cases your decisions must be made very early in the lifecycle of the product and are very difficult or even impossible to change. This challenge is especially prominent when designing extension packages, which build upon existing managed packages. The bridge package pattern is a package architecture that factors dependency into a tiny, minimal second package whose only job is connecting two other packages that are independent of one another. Think of it like a junction object for managed packages.

More …

Publications Round-Up

I’ve been part of a number of articles and presentations over the last few months that have not so far appeared here. Want to catch up with the latest in free and open source Salesforce DevOps? Here’s some pieces I’d love to share.

More …