Hi everyone,

At yesterday's community meeting we discussed the Infusion documentation and 
made some decisions for what we will be doing with it. Our current 
documentation has portions that are out of date and misleading. This is for a 
number of reasons, including the sheer quantity of the current docs and the 
fast rate of change that the framework has been undergoing. We are currently at 
the point where it is difficult to know which docs are up to date and which 
require updating. We have also been discussing for some time a change in 
strategy for how we make our docs and where we keep them. 

We decided: 

1. We will start storing our documentation in github: 
https://github.com/fluid-project/infusion-docs
2. We will mark the current documentation as out of date and move only the 
accurate docs into the github repo.
3. API style documentation will be moved into the source code.
4. New documentation will be written using Markdown and organized as a flat 
hierarchy of topic specific pages.
5. New pull requests to the code base will need to be accompanied by a pull 
request to the documentation with the appropriate changes.
6. The documentation working group will review new features coming into the 
framework and the documentation for them. That group is currently comprised of 
Antranig, Simon, Anastasia and me.


We also discussed some ideas for what we would like our documentation to 
consist of. See the notes below:



Three types of documentation, from the top down:
A reference guide (definitive explanation of what's in the framework)
This is different from what  other software projects have in that we have moved 
away from having APIs
Consists of descriptions of the various kinds of JSON configuration that is 
valid for different types of grades
As well as describing default values which are supplied by grades, it needs to 
describe what configuration is accepted by both grades and builtin piece of 
framework machinery
This also needs to include background information about different types of 
components (e.g. the Change Applier), what they're for, and how they work
The "how do I do X?" documentation (i.e. information that answers specific 
questions and is indexed by particular tasks or functionality)
Concepts, goals, intent and style documentation that provides the "big picture" 
view of the goals and intention of our framework design (examples include, 
perhaps, the Being and Time wiki page)
Another example of this is the background information that explains our 
approach to, say, APIs and their alternatives
This kind of documentation isn't just "background information," but equally 
important as part of understanding why the system is the way it is and how you 
should use it.
"Speaking like a native" documentation that describes the "natural" or 
idiomatic ways to develop with Infusion

As always, comments, corrections, questions and suggestions are welcome. :)

Thanks,

Michelle
_______________________________________________________
fluid-work mailing list - [email protected]
To unsubscribe, change settings or access archives,
see http://lists.idrc.ocad.ca/mailman/listinfo/fluid-work

Reply via email to