Back to insights

Salesforce daily archive

730 days of practical thinking.

One retrospective note for every day from 2 September 2024 to 1 September 2026.

Archive dates organise the subject history. They do not claim the notes were originally published on those dates.

Showing 84 archive entries

Page 3 of 4

Development

Observability before production: Test data design

Good test data communicates the business scenario and remains independent of org state. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Meaningful Apex tests

Tests should protect business behaviour and failure handling, not merely raise coverage percentage. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Bulk-safe code

Salesforce transactions may process many records even when the original change appears singular. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Selective SOQL

Query design must reflect data distribution and access paths, not only functional correctness. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Lightning component boundaries

A Lightning Web Component should own a coherent interaction rather than accumulate an entire business process. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Asynchronous Apex

Queueable, batch and scheduled work solve different execution and scale requirements. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Trigger discipline

Triggers should coordinate record-change behaviour without becoming a hidden application framework. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Observability before production: Apex service layers

A service layer gives business operations a stable home outside triggers, controllers and transport-specific code. This retrospective daily note considers the signals and context required to support the capability once it is live.

Read daily note
Development

Planning the migration: API version discipline

API versions influence behaviour and should move through the estate as a managed engineering decision. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Flow and Apex boundaries

Declarative and programmatic automation are complementary when their responsibilities are explicit. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Salesforce code review

Code review is an architectural control as well as a defect check. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Application logging

Logs should describe business context and decision points, not produce an unstructured stream of debug statements. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Custom metadata as configuration

Custom metadata can move controlled business variation out of code and into deployable configuration. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Security enforcement in Apex

Apex can execute with privileges that require developers to enforce the intended access model deliberately. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Test data design

Good test data communicates the business scenario and remains independent of org state. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Meaningful Apex tests

Tests should protect business behaviour and failure handling, not merely raise coverage percentage. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Bulk-safe code

Salesforce transactions may process many records even when the original change appears singular. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Selective SOQL

Query design must reflect data distribution and access paths, not only functional correctness. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Lightning component boundaries

A Lightning Web Component should own a coherent interaction rather than accumulate an entire business process. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Asynchronous Apex

Queueable, batch and scheduled work solve different execution and scale requirements. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Trigger discipline

Triggers should coordinate record-change behaviour without becoming a hidden application framework. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Planning the migration: Apex service layers

A service layer gives business operations a stable home outside triggers, controllers and transport-specific code. This retrospective daily note considers how to move from the current state without losing service or trusted information.

Read daily note
Development

Adoption is architecture: API version discipline

API versions influence behaviour and should move through the estate as a managed engineering decision. This retrospective daily note considers how the user experience and operating model determine whether the capability is used.

Read daily note
Development

Adoption is architecture: Flow and Apex boundaries

Declarative and programmatic automation are complementary when their responsibilities are explicit. This retrospective daily note considers how the user experience and operating model determine whether the capability is used.

Read daily note