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

Button on a related list that opens a screen flow

Imagine this: on the account page, a list of related contacts is displayed.

On the related list, clicking the standard New button opens the standard New Contact page. While this works, sometimes you want to minimize the number of fields displayed and/or introduce automation to prefill some fields.… Read the rest

Working with the Salesforce mobile app

For users on the go, Salesforce has a mobile app that allows them to stay connected.

While it’s not the most comprehensive experience, if it’s set up correctly, it can get the job done. Here are some key considerations:

Page Layouts
When building page layouts, keep in mind the tab-key order.… Read the rest

Choosing between standard objects and custom ones

When designing a new feature for a client, one of the first questions you need to ask yourself is: should I use standard objects or create custom ones?

Best practices dictate that if you can use 80% or more of the standard data model, then that’s your choice.… Read the rest

AI isn’t good at UX

AI is awesome at many development tasks.

For example, I asked it to create Lightning Web Components (LWC) to replace old Aura components. The first version was 99% perfect. Super impressive.

Then I asked it to restructure the LWC so that fields and buttons appear on the same line.… Read the rest

What’s the actual problem?

In a recent client meeting, they shared that their users complain about a particular page when using Salesforce on a tablet.

Upon reviewing the page, I noticed the page displays one of several flows, based on a status, and includes several Aura components.… Read the rest

Thoughts about IdeaExchange

Related to the last email, there’s an idea on IdeaExchange to address this issue. Please upvote it so it gets more attention.

Speaking of the IdeaExchange, what’s your take? Are you

  1. Happy we have a voice to share ideas with Salesforce, and they listen to us by implementing our requested changes
  2. Cynical because so many basic ideas haven’t been implemented.
Read the rest

No records in Salesforce match your delete criteria

Salesforce is awesome, most of the time. The good news is it’s always improving.

One feature I hope they add soon is the ability to delete 0 records.

This occurs when you attempt to delete a collection that contains no records or to delete a single record that doesn’t exist.… Read the rest

What’s better: boolean or picklist?

When tracking a positive and negative response in Salesforce, most consultants would simply create a boolean field and call it a day. But you’re a “good enough” consultant, so you know there’s another choice.

The other option is a picklist with “True”/”False” or “Yes”/”No” choices.… Read the rest

How long should the text field be?

When creating text fields in Salesforce, you have several options:

  • Text
  • Text Area
  • Text Area (Long)
  • Text Area (Rich)
  • Text (Encrypted)

For all options except for Text Area, you have a choice of how long you want the field to be.… Read the rest

What’s an indexed field?

In Salesforce, you can group fields into two categories:

  1. non-indexed fields
  2. indexed fields

Non-indexed fields are basic fields that are not lookup, master-detail, audit dates, or system fields. For example, Amount on Opportunity is a non-indexed field.

Indexed fields are special fields.… Read the rest

The dark side of formula fields

Formula fields are great because they allow you to place business logic in a field that can be quickly referenced. However there are some drawbacks you should be aware of.

  1. Since formula fields are calculated, and not actually stored in the database, they are not available in before-save record-triggered automation.
Read the rest

Handling crunch time like a star

January through April is tax season for nonprofits. Between my nonprofit services and my app that allows nonprofits to generate tax receipts, it’s an extremely busy time of year.

Balancing workloads from multiple clients can be overwhelming. Here are some tips I’ve learned that may be able to help you.… Read the rest

What’s the point of restriction rules?

In Salesforce, you have two approaches to give user access to certain records.

  1. Use the “least privilege” model. This means settings the object to Private and then creating a Sharing Rule to provide access to specific users or groups
  2. Use restriction rules to remove access to certain records for specific users or groups

When deciding which approach to use, consider this: users with the View All Records or View All Data permissions can view all records regardless of restriction rules.… Read the rest

Life beyond the screen and Salesforce

Last week, Spain became the first European country to ban social media for kids under 16 years old. Australia banned it last December.

I mention this because it’s interesting to see how badly social media impacts us. It distracts us, it reduces our attention span, and it creates too much noise between the ears,

As humans, we were not evolved to handle such a large amount of information and feedback.… Read the rest

Why AI is creating a technical debt crisis

Well, it seems AI is not producing the results we hoped for.

A recent survey has uncovered some interesting facts. For example, although AI helps junior developers produce 35% faster, the results are actually less maintainable.

The main issue is, AI is not good at keeping track of high level architecture and design patterns.… Read the rest

Upcoming Salesforce conferences

Community-led Salesforce conferences are some of the best ways to connect. Since they are organized by the community (and not Salesforce) they are less sales/marketing oriented.

This means they tend to be more signal, and less noise. For example, in the last one I attended, Agentforce was barely mentioned.… Read the rest

Heroku bites the dust

If you’re not a developer, it’s possible you haven’t heard of Heroku before. Heroku is a cloud platform that lets you build apps. It’s basically a competitor to Amazon AWS.

In 2010, Salesforce bought Heroku which made a great place to offload some processing from Salesforce.… Read the rest

Teaching your clients how to fish

When presenting options to a client for a monthly support contract, I’ve noticed a common request.

Rather than you simply do all the work on their behalf, a lot of clients want to be mentored. This presents an interesting dynamic.

On one hand, showing them how to do things will definitely slow things down.… Read the rest

When it’s OK to rename objects

A while back, I wrote an email called you really don’t want to rename standard objects. Recently, a reader asked, “When is it OK to rename an object?”

The short answer is, when

  • The new name is better understood by the user
  • It’s not completely different from the original name
  • Almost none of the object’s fields need to be renamed
  • You can still leverage standard functionality (like Account Hierarchy or Opportunity Products)

For example, in the nonprofit industry, we deal with organizations and households.… Read the rest

Getting started as a developer

Let’s say you want to start your career as a Salesforce developer. Where do you begin?

If you don’t have a coding background already, this is a challenge.

Here are a few ways to begin:

  • Watch instructional YouTube videos like Apex Hours
  • Buy a well-rated coding course on learning platform like Udemy
  • Find a mentor

If you already have coding knowledge, then it’s “just” a matter of learning the syntax and patterns of apex.… Read the rest