I've generally found that re-deriving most of trigonometry from the base formulas is a lot faster and more effective than actually trying to remember them all.
It's trivial for boolean logic too, to say go from NANDs to DNF or something. Certainly easier than to remember all that stuff. And when expressions get hairy it's also simpler, because you can just do it sub expression by sub expression from first principles. Source: just helped someone practicing some of this a few days ago.
Working with systems long term teaches you that the value of a system is not about the theoretical efficiency but rather the practical efficiency, and this has facets during all phases of a system lifetime. For example, rapid implementation may often trump correctness, comprehensibility of ease of delegation/handover/hiring may often trump other concerns, and reliability / longevity are often facets that come to the fore over time.
Re-inventing the wheel can actually be a great strategy then, if you plan on keeping something around for a long time, especially if in doing so you (a) document it; (b) fully understand it; (c) remain free of external dependencies.