I find it helpful to try to develop some rules of thumb, or best practices over time as I work and learn from my mistakes. Eventually I find myself circling back to one of these rules and second guessing the reason I ever felt the need for it, so in an effort to better document the rules as well as the reasoning for their existence, I am going to make an effort to post them in a series of posts.
Here is a short list to start:
Working In The Spreadsheet
Use Functions when possible. This makes editing formulas easier because you can drill down into the functions with the Formula Editor.
Keep long formulas in prompts. Reference Prompts in CutParts, HardwareParts, Subassemblies tabs. This make it cleaner, and simpler to read and edit later, all in one place preferably.
Any formula used more than once should be a prompt. Think like a coder, and prompts are your variables. There is no reason to write out the same formula multiple times, when you could just reference a prompt name. This also makes editing MUCH easier later. You want to change that once, in one place.
Red is good, black is bad. This is relative, but a good rule of thumb, particularly when creating products for your library. You want as much of your CutParts, HardwareParts, and Subassemblies tabs to be red. This means they are formulas or references, and not static values. This also ties back into having formulas in your prompts as much as possible.
Reference local, then global. If you have to reference a global, it is good practice to create a local variable that references the global first, and then reference that local variable where needed. This can be iterated down the line to subassemblies, and nested subassemblies. This has multiple benefits. First, when necessary, you can just overwrite the local variable, instead of having to change the global, which can be cumbersome when working within a spec group. Second, if you want to bring your product into a new library that may be missing the global, you can see quickly in your prompts tab what you are missing, and remedy the problem from there.
Use IF(ISERROR()), IFERROR(). Speaking of missing globals, when creating prompts that reference them, always wrap the prompt value or formula in and IFERROR() statement so that in the case that the global isn't available, or has an error, the prompt will revert to a default value and the product will still work.
PLINE Tokens are your friend. Getting comfortable with the formatting of vector lists, bulge lists, offsets and options will give you a much better set of tools to work with in your parametric products. Once you can use PLINEs, you can replace the need for the virtually any routing token.
That's all I've got for now. Next time I will try to come up with a list of best practices for outside of the spreadsheet.