Difference between revisions of "Documentation-Rons-Rules-For-Tools"
From Slicer Wiki
Line 7: | Line 7: | ||
*Minimize the number of clicks | *Minimize the number of clicks | ||
*Minimize the distance my pointer has to travel | *Minimize the distance my pointer has to travel | ||
− | * | + | *Have good default values for the parameter and I/O, and allow me to override. |
</ref> | </ref> | ||
#No more than one parameter that I can set and if I need more than 20 seconds to figure out how to set the parameter, I won't! | #No more than one parameter that I can set and if I need more than 20 seconds to figure out how to set the parameter, I won't! |
Revision as of 14:01, 7 March 2011
Home < Documentation-Rons-Rules-For-ToolsIntroduction
"Rules for tools" is an informal set of rules that developers should keep in mind when working on interactive tools for translational clinical research. If you follow them, you will create tools that many people will use.
- You make it, I break it
- Your tool works when it works on my laptop with my data. Until then, it's useless to me.
- I am lazy. Make my life easy. [1]
- No more than one parameter that I can set and if I need more than 20 seconds to figure out how to set the parameter, I won't!
- If I can take my lunch break while your algorithm is running, I won't return to it. [2]
How To Make Algorithms Robust
- Build a case library with 10 or more cases
- Use half for development, cycle through the cases daily
- Use the other half for testing