Definition Discussion: What are Activities?
Defining what Activities are used to be just a concern of mine, but the well-known now issue 35 confirmed my belief that, in order to maintain a clear course of maintenance for this feature, it is fundamental be explicit as to which features we expect Activities to cover.
And most importantly, in order for any user to understand what Activities are, it is primordial to be able to explain Activities in a succinct way. The current README.MD reads
When a user is interacting with a computer, there are three main areas of contextual information that may affect the behaviour of the system: who the user is, where they are, and what they are doing.
Activities deal with the last one. An activity might be "developing a KDE application", "studying 19th century art", "composing music" or "watching funny videos". Each of these activities may involve multiple applications, and a single application may be used in multiple activities (for example, most activities are likely to involve using a web browser, but different activities will probably involve different websites).
KActivities provides the infrastructure needed to manage a user's activities, allowing them to switch between tasks, and for applications to update their state to match the user's current activity. This includes a daemon, a library for interacting with that daemon, and plugins for integration with other frameworks.
There is a glaring issue with using conversational style in here. This issue is that there is no straight and to the point definition of Activities.
With this thread, I suggest everyone to propose different definitions of Activities and play, when possible, devil's advocate against them. I expect to replace the current README.MD file with one reached by consensus, and this thread to be the seed of a possible Documentation-Driven Development(-ish) way to keep a firm step on getting right what the community wants Activities to be.