A common mistake in Notes applications is having documents that rely on the @Author and @Created functions to know who created any document and when. These are system functions and for this reason they are unreliable in the context of the application domain. In fact they merely tell who created the Notes document and when, but they don’t say anything about the domain document represented by the Notes document.

It could be argued that if the author and created fields need to hold exactly the values relative to the Notes document, not the domain document, then the @Author and @Created functions do the job. But this is a mistake as well, because their values may change without notice: for example the creation date changes when a document is cut from and pasted again into the database.

So, if a piece of information makes any sense for a document it needs to stay in its own field in the form.

Notes main flexibility is that it’s possible to add new fields at any time. A natural way of adding such two fields to a form is by means of Computed When Composed fields, whose formulas could be @Author and @Created respectively.