Everything should be a tool. A tool transforms data without adding to its original limitations. It's a function: returns an output for a given input.
A great tool is ambient. It should disappear and flow through your actions. You should never need it because it's always at your hands. You should never ignore it because it's never in your way.
Tools should be adaptable, changeable and personalisable. If a tool does not perfectly fit your needs, you should be able to change, mix or remove its parts.
Data should be reusable, text-editable, human-readable. Produces a higher chance that (1.) is passed.
Tools should be lightweight, available and timeless. Computing power or internet speed shouldn't be the limitation for most tasks. It works in the past and in the future.
Tools should redound to their own redundancy. Although it's still usable (5.), a tool should redound the total disappearing of the problem or the birth of better tools. A tool should become useless and disappear as fast as possible.
"Only through open sources, open standards, human-readable formats and their independencies, might they survive this fleeting age of self-destructing informatics." ― Devine Lu Linvega