Parameterised Dependency Injection via Custom Metadata Types

Dependency injection using Custom Metadata Types is a great way to write code on Salesforce that is easily extensible. Even...

Lightning Experience Configuration Converter

Looking to migrate from Salesforce Classic to Lightning Experience? A new tool from Salesforce could help speed this along for...

Randomness and Oblique Strategies to aid problem solving

In development, or any creative pursuit, we all get stuck. The trick is to know how to get unstuck, without...

Patterns in Apex: Dependency Injection, Strategy, and Decorator

When you start out in Salesforce development, there seems to be little need for software design patterns. Perhaps because development starts...

How Variable Types Operate in the Lightning Component Framework

Attributes in a Lightning Component have declared types. But, with few exceptions, the type you use has never seemed to...

Salesforce Trigger Handlers Driven by Custom Metadata

Salesforce has a number of recommendations regarding best practice when writing Apex triggers. Two of these recommendations are: (more…)

Never mind the half-baked solution, what was the problem? (The X Y Problem)

As a consultant, and as a developer, one of the most useful things you can do is to take a...

Are You Ready For Custom Metadata?!

Salesforce are once again staying true to one of their mottos, “Clicks, not code!”, with a release that is currently...

Please don’t use static flags to control Apex Trigger recursion!

Trigger recursion in Apex can be a bit hard to get your head around. Often it is indirect, so hard...