Deep Work - the concept of blocking out prolonged sections of uninterrupted time to do work - has been making the rounds in tech circles the past few months. On the other side of things, we have mob programming, which focuses on something that seems completely contradictory to the Deep Work movement -- working collaboratively throughout the day while on a video call, with only one person typing at any given time. Whereas Deep Work focuses on people achieving flow state by having lots of solo ...| www.jamessimone.net
I'd like to take you through a routine refactoring exercise to showcase the power that objects wield when used correctly. This is, in my opinion, the single most _satisfying_ refactoring, because it showcases how maintanability improves by fixing an improper abstraction instead of letting it fester. This exercise will also highlight a curious junction between Test Driven Development (TDD) and Domain Driven Design (DDD) - which is to say that if the functionality that you're working to refacto...| www.jamessimone.net
Learn how to use Lightning Web Components and the composable modal to create a custom Path component within Salesforce. We cover fetching/updating data with Lightning Data Service (as well as how to deal with dependent @wire requests with LDS), accessibility, and more on the road towards grouping Closed lead statuses.| www.jamessimone.net
So-called Lazy evaluated functions have their actual execution delayed until a terminator function is called. It's common for lazy functions to be chained together using fluent interfaces, culminating with actions being performed when the terminator function is called. What can Salesforce developers writing Apex code stand to gain by learning more about lazy functions? Fluent interfaces -- or objects that return themselves during function calls -- also tend to satisfy one of the prerequisites...| www.jamessimone.net
Picklists in Salesforce replace traditional HTML select fields on the front end. They also are driven by complex metadata types that we don't have programmatic access to in our code. I'll discuss one potential approach to strongly typing a picklist's values based on describe results and a little boilerplate.| www.jamessimone.net
Learn how to use Repositories to protect your SOQL usage and easily swap implementations in unit tests| www.jamessimone.net