aiidateam / aiida-core

The official repository for the AiiDA code
https://aiida-core.readthedocs.io
Other
412 stars 184 forks source link

Docs: The Ten AiiDA Commandments (name open for discussion) #6430

Open GeigerJ2 opened 1 month ago

GeigerJ2 commented 1 month ago

Describe the current issue

There are certain behaviors of AiiDA (often related to provenance) that users frequently find counterintuitive or frustrating. For instance, immutability of nodes once they are stored, in combination with the fact that they automatically become stored when e.g. passed to a calcfunction. This is the subject of the discussion on the immutability of the new StructureData class (see here). One idea brought up in the past (see here) there was to make the behavior "consistent", for instance by making StructureData (and other AiiDA nodes) fully immutable by default. However, such approaches can become impractical, and might eventually be less user-friendly (as noted in the discussion).

Describe the solution you'd like

Rather than trying to change these behaviors (and the way AiiDA implements provenance), I think it could be a much easier solution to just clearly highlight them in one centralized, easy-to-find location in the documentation. As these are general concepts of AiiDA, they should appear very "early" in a user's journey (possibly even before the basic tutorial). I am sure they are all mentioned in the documentation, however, scattered through the massive amount of material that is available. The most important concepts should be concisely mentioned at a high level.

The name of the proposed doc was thought of together with @mikibonacci, but is open for discussion, as it might be offensive to some people.

Some ideas for the points communicated could be (text possibly still too technical):

Curios to hear your thoughts @khsrali, @agoscinski, @mikibonacci, @mbercx, @giovannipizzi, @sphuber. Thanks!