Research and check an implementation approach before substantial coding, prioritizing local reuse, native platform capabilities, maintained libraries, reference implementations, known failure modes, and small verification spikes.