True North Dreamin’ 2026 Summary

Yesterday and today were the True North Dreamin’ conference in Toronto, Ontario. While I didn’t ask how many attended, it felt larger and more organized compared to last year.

As the first official sponsor, we had first choice of booth location.… Read the rest

How to find your professional purpose

The other day I was talking to my nephew about his school options. He’s finishing high school next year and needs to decide which program to choose from in college.

His two main choices are psychology and the audio-visual program and he was leaning towards the former.… Read the rest

Don’t do a demo from a car

While in Spain, there was a moment in which I was travelling between two cities. I had rented a sports car, and loved the thrill of zooming around on perfectly paved roads in a small sedan. Windows down, music blasting, kinda thing.… Read the rest

Minimizing jetlag

Yesterday I flew from Madrid, Spain to Montreal, Canada. Madrid is 6 hours ahead.

To climatize to the new timezone, you’ll often hear that it takes about 1 day for each hour . That translates to approx 6 days. I’ve hacked it so that it only takes me a single day.… Read the rest

Ghost Duplicates

It’s no surprise that duplicate management in Salesforce is not awesome. This is especially true regarding reports.

Once your matching rules and duplicate rules are setup, you normally add the Potentially Duplicates component to the lightning page. This component flags you when it detects a potential duplicate.… Read the rest

Do you trust client reviews?

A recent client of mine achieved a new title: the worst configured Salesforce implementation I’ve ever seen.

Talk about things NOT to do:

  • Hardcode user content in apex that needs to be regularily updated
  • Deploy apex classes that don’t meet the required 85% overall coverage
  • Create custom fields when standard ones are suitable (including creating email fields that are text)
  • Create multiple individual flows that perform the same behavior
  • Create an ecommerce platform using site and VisualForce pages
  • Overload a custom object to both collect orders and manage fulfullment

This is was implemented by a previous vendor.… Read the rest

Reports: Top-down or bottom-up

Another day, another Salesforce quirk.

While coaching a client today, I noticed something that had not caught my attention before. When building a report and choosing a report type, Salesforce is inconsistent with the data model.

Sometimes a top-down approach is used.… Read the rest

Allowing SF to use your data

Salesforce recently added a disturbing new feature. And the news is causing quite a splash.

By default, your org currently sends your customer data to Salesforce so they can train their AI models.

You can opt-out of this feature by navigating to Setup > Einstein > Opt Out of Customer Data Access, and toggling the checkbox to Off.… Read the rest

AppExchange is now AgentExchange

Salesforce recently renamed AppExchange to AgentExchange.

As I’ve previously predicted, the “Salesforce” will be probbaly renamed to “Agentforce”. This could be announced at Dreamforce this year.

Renaming AppExchange is the next logical step in rebranding the entire ecosystem.

While AppExchange had a strong brand, not everything on the site is for agents.… Read the rest

Headless Salesforce

The big news from last week is from Marc Benioff. He claims Salesforce is now headless.

“Headless” means the back-end logic is completely separate from the front-end UI. This effectively means you can replace the UI with something other than Salesforce’s.… Read the rest

The “Good Enough” Consultant Referral Program

In the past several weeks, I’ve been asked to find trusted Salesforce individuals.

These are people with whom I’ve worked with before, or know me from these emails. They reach out and ask whether I know someone with a particular set of skills.… Read the rest

First fix the issue, then apply the data fix

Every once in a while, your client will mention there’s a bug. Perhaps a field isn’t being populated correctly.

In these cases, follow these steps:

  1. Confirm the desired functionality
  2. Assess the current situation
  3. Reproduce the issue (not always necessary)
  4. Confirm it’s an actual issue
  5. If a change is needed, design a solution
  6. Implement the solution
  7. Test

Regarding data issues, the step 6 actually has two parts

  1. Fix the functionality that caused the issue
  2. Apply a data fix to historical records

It’s important to complete these two steps in that order.… Read the rest

Native tax receipts in Salesforce: A game changer or still lacking?

For nonprofits, Salesforce now offers a native tax receipting solution. It’s designed for Agentforce Nonprofit (aka Nonprofit Cloud), and it’s a welcomed feature.

But is it good enough?

My latest article from Salesforce Ben breaks this down.

Pros:

  • Native, which means additional functionality might be available in the future
  • Uses Word-based templates
  • Free

Cons:

  • Customization is limited
  • Doesn’t handle compliance and regional regulations
  • For Agentforce Nonprofit only.
Read the rest

Places to store content

Since you should never hardcode content in apex, here are some alternatives places to store it:

1. Custom Settings
The main and current location to store data. Custom Settings are like custom objects used by the system. You can create custom fields and access them from most places (like flow).… Read the rest

Don’t hardcode content

I’m working with a client who’s had a very difficult time updating their outgoing emails and SMS messages. And no wonder, the previous consultant set them up this way.

Emails used Visualforce pages, with tons of extra html and css syntax.… Read the rest

Sections on page layouts

As you add more and more fields to a page layout, it’s important to consider structure and UX.

For example, it’s generally not a good idea to have 25 fields in a single section on the page, especially when there are 20 fields in the 1st column, and 5 fields in the 2nd.… Read the rest

Record pages to page layouts

In the nonprofit industry, the following record types exist for opportunity:

  1. Donation
  2. Grant
  3. In-Kind Gift
  4. Matching Gift
  5. Major Gift
  6. Membership

And it’s not uncommon for clients to add several more.

In general, record types are used less these days due to the rise of the dynamic functionality of Lightning Record Pages.… Read the rest

Orphaned page layouts

It still surprises me how many times I’ve seen orphaned page layouts.

I’m working with a new client, and there were 5 layouts for the contact object.

  • ABC Contact Layout
  • Classy Contact Layout
  • Contact Layout
  • Contact Layout (a second one)
  • Contact Lightning Layout

At a quick glance, you would expect the Contact Lightning Layout to be used.… Read the rest

10 skills needed for future of work

One of the sessions I attended at dreamOle was about the future of work.

Here are the top 10 skills needed in the coming years, as cited from “WEF Future of Jobs Report 2025”:

Al & Technology:

  • Al & Big Data Literacy
  • Networks, Cybersecurity & Digital Trust
  • Technological Literacy

Human Skills:

  • Creative Thinking
  • Analytical & Systems Thinking
  • Environmental Stewardship

Adaptive Mindset:

  • Resilience, Flexibility & Agility
  • Curiosity & Lifelong Learning

Leadership:

  • Leadership & Social Influence
  • Talent Management & Collaboration

Notice that while there are 3 AI-related skills, the rest are very human skills.… Read the rest

dreamOle 2026 recap

Last week was dreamOle in Valencia, Spain. I don’t have as many contacts in Europe as in North America, but it was good to start seeing some familiar faces.

Here are three takeaways from the event:

1. Security is top of mind.Read the rest

Support contracts: monthly vs hourly

I’ve been working with one client for a couple of years. The CEO is kind and he always had a specific vision on how he wanted the organization to grow.

The projects were always fixed price, with a client business outcome.… Read the rest

How I stumbled into my dream job

A friend recently asked me about my career choices and how much was planned in advance. The truth is, not much.

After graduating with a degree of Computer Engineering in Canada, I entered the workforce as a software developer. At the time, I felt that if I wasn’t in front of a computer, I wasn’t actually working.… Read the rest

Attending dreamOle 2026

This Friday is dreamOle in Valencia, Spain. It’ll be the 3rd dreamOle I’ve attended.

Despite being in Spain, quite a few sessions are in English.

Here are the ones I’ll attend:

  • Architect Securely: Applying Well-Architected Principles
  • Unlock Your Leadership Potential with Soft Skills
  • Flow on the Fly (Patterns for Screen Flow Actions)
  • “Goodbye Connected Apps.
Read the rest

Which variable to use in an assignment step

Imagine a Salesforce flow that is not a record-triggered flow, and you get an Account record.

In the get step, you probably use the default setting “Automatically store all fields”, which is good. Let Salesforce work for you. The record variable is called “Get_Account”.… Read the rest

Convert multi-select picklists to text

Working with multi-select picklists (MSP) is tricky. Here’s a hack to convert this picklist into a text field using flow so you can use it more easily.

Imagine there’s a MSP called “Zone” on the Account object. The values are “Zone A, Zone B, and Zone C”.… Read the rest

Converting a string into Title Case

When data is sourced from a webform and inserted into Salesforce, it can be dirty.

Ideally, the source system has sufficient data validation in place to avoid the really dirty errors. For example, ensuring an email address has the correct format.… Read the rest