This DN is about how we organize and present documentation for customers of openUC2 products, and documentation for community users & developers of things in the openUC2 ecosystem.
Covered topics include:
- How we make the documentation site less scary/overwhelming to navigate, especially for prospective customers and new customers of openUC2’s products (as opposed to developers and users of some elements of openUC2’s technical ecosytem)
- How we organize different types of documentation (tutorials, how-to guides, explanations, and references); see also https://diataxis.fr/.
- How we keep the documentation up-to-date
- How we present a stable version of the docs even as we make changes to the master branch which are deployed live elsewhere
- How we avoid breaking published URLs even when we reorganize our documentation
Information hierarchy
openUC2 produces several products and also is an ecosystem of technical components & subsystems. We have a single documentation website for everything in openUC2, so that our documentation for our various coupled systems/subsystems/modules can evolve and be deployed together; and so that our documentation is easier to navigate.
Because we have so much documentation, we organize it hierarchically; here, we describe the four highest levels of this hierarchy:
- Usage vs. development
- Product lines
- Products
- Forms of documentation
We organize our content this way because we need a single entry-point for new users of each product; that entry-point should be placed alongside the information which new users need to get started, so that all of that information will be easy for new users to discover. We keep developer-oriented information very separate in order to prevent the documentation from being too overwhelming for new users. We group content at the fourth level (forms of documentation) to keep the same forms close to each other, for reasons discussed in Sequencing of documentation.
Usage vs. development documentation
To make the documentation easy for our customers to navigate, we will split our documentation site up into three overall categories: usage documentation, development documentation, and workshop plans.
Usage
Usage documentation helps our customers to use/operate our products (and their advertised built-in functionalities) off-the-shelf as end-users, but not to develop new (i.e. not built-in) functionalities with our products as developers. Examples of the kinds of topics which belong here include:
- for Professional Line products:
- How do I set up this new FRAME I just received?
- How do I re-flash my FRAME’s SD card with the latest SD card image released by openUC2?
- How do I perform an in-place update to a new stable version of the OS released by openUC2?
- How do I perform a timelapse imaging experiment using my FRAME?
- How do I optimize my FRAME’s autofocus parameters?
- What’s the maximum range of travel of my miniFRAME’s sample stage?
- What’s the best way for me to connect my FRAME to the internet?
- How do I install a published ImSwitch plugin or Forklift app onto my FRAME?
- How do the laser interlocks behave?
- What do the FRAME’s LED indicator codes mean?
- The Z-axis of my FRAME no longer works. How should I troubleshoot it?
- I purchased a new FRAME addon from openUC2, which requires switching to a different ImSwitch hardware configuration file provided by openUC2. How do I integrate this addon into my FRAME?
- How do I convert my miniFRAME into a full FRAME?
- I need to replace the stepper motor controller board for the Z-axis of my FRAME, because it broke. How do I do that?