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 252 archive entries
Page 6 of 11
Security by design: Bulk-safe code
Salesforce transactions may process many records even when the original change appears singular. This retrospective daily note considers how access, data exposure and accountability shape the implementation.
Read daily noteSecurity by design: Selective SOQL
Query design must reflect data distribution and access paths, not only functional correctness. This retrospective daily note considers how access, data exposure and accountability shape the implementation.
Read daily noteSecurity by design: 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 access, data exposure and accountability shape the implementation.
Read daily noteSecurity by design: Asynchronous Apex
Queueable, batch and scheduled work solve different execution and scale requirements. This retrospective daily note considers how access, data exposure and accountability shape the implementation.
Read daily noteSecurity by design: Trigger discipline
Triggers should coordinate record-change behaviour without becoming a hidden application framework. This retrospective daily note considers how access, data exposure and accountability shape the implementation.
Read daily noteSecurity by design: 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 access, data exposure and accountability shape the implementation.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Flow and Apex boundaries
Declarative and programmatic automation are complementary when their responsibilities are explicit. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Salesforce code review
Code review is an architectural control as well as a defect check. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Test data design
Good test data communicates the business scenario and remains independent of org state. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Meaningful Apex tests
Tests should protect business behaviour and failure handling, not merely raise coverage percentage. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Bulk-safe code
Salesforce transactions may process many records even when the original change appears singular. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Selective SOQL
Query design must reflect data distribution and access paths, not only functional correctness. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Asynchronous Apex
Queueable, batch and scheduled work solve different execution and scale requirements. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: Trigger discipline
Triggers should coordinate record-change behaviour without becoming a hidden application framework. This retrospective daily note considers how to prevent a short-term compromise from becoming permanent architecture.
Read daily noteContaining technical debt: 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 prevent a short-term compromise from becoming permanent architecture.
Read daily noteMeasuring what matters: API version discipline
API versions influence behaviour and should move through the estate as a managed engineering decision. This retrospective daily note considers the operational evidence that shows whether the design is creating value.
Read daily noteMeasuring what matters: Flow and Apex boundaries
Declarative and programmatic automation are complementary when their responsibilities are explicit. This retrospective daily note considers the operational evidence that shows whether the design is creating value.
Read daily noteMeasuring what matters: Salesforce code review
Code review is an architectural control as well as a defect check. This retrospective daily note considers the operational evidence that shows whether the design is creating value.
Read daily noteMeasuring what matters: Application logging
Logs should describe business context and decision points, not produce an unstructured stream of debug statements. This retrospective daily note considers the operational evidence that shows whether the design is creating value.
Read daily note