Project

General

Profile

Wiki » History » Version 12

Denis 'GNUtoo' Carikli, 11/27/2020 02:40 PM

1 1 Denis 'GNUtoo' Carikli
h1. Wiki
2
3 2 Denis 'GNUtoo' Carikli
h2. Introduction
4
5
The main Replicant documentation is on the "Replicant wiki":https://redmine.replicant.us/projects/replicant/wiki and directly on the https://www.replicant.us/ website (like for the "freedom-privacy-security-issues":https://www.replicant.us/freedom-privacy-security-issues.php) page.
6
7
This sub-project and wiki (https://redmine.replicant.us/projects/documentation/wiki) instead contain information on how to best contribute to the Replicant project documentation, how to manage the huge amount of documentation, etc.
8
9 1 Denis 'GNUtoo' Carikli
h2. Guidelines for writing documentation
10
11
h3. "Flashing", "to flash", etc.
12
13 3 Denis 'GNUtoo' Carikli
In the Replicant documentation, you might be tempted to use wording like: <pre>You need to flash the recovery with the following command</pre>. However many people don't know what that verb means. As many more people know what the 'install' word means, it's better to use install instead.
14 1 Denis 'GNUtoo' Carikli
15
So @You need to flash the recover with the following command@ becomes @You need to install the recovery with the following command@.
16
17
In addition, many devices use eMMC which are exposed as block devices, just like hard disks, so 'flashing' becomes more confusing as the line is blured between MTD devices that exposes RAW flash and those who don't.
18
19
h3. There is more than one way to do it and users freedom.
20
21 4 Denis 'GNUtoo' Carikli
It's a good idea to also respect users freedom with the documentation content as well. 
22
23
For instance, to do that:
24 7 Denis 'GNUtoo' Carikli
* We can explain what we are doing and why we need to do it. For instance instead of using @Type this command@, you can use @To install the recovery, you can type this command@. This enables users to understand what they are doing, and if necessary challenge and/or improve the documentation. 
25 1 Denis 'GNUtoo' Carikli
* It's a good idea to tell users that there might be more than one way to do it, but that we are giving a specific example that they can follow if they wish. If users are very technical and don't want to follow the specific instructions for a reason or another, if we already give some background information (for instance we can tell them that we need to install a recovery image), very technical users might find another way to do it, which is not necessarily documented (for instance they might want to use fastboot instead of heimdall to install a recovery image on some devices because on their computer Heimdall doesn't work). For instance, this can be done by using @For instance@.
26 7 Denis 'GNUtoo' Carikli
* If something needs to be followed by the letter, like heimdall commands, we could then tell them exactly why, for instance @If you use the wrong command it could break the device@. In that case users that know what they are doing will most probably understand the risk and if they are using fastboot instead they will most likely understand that it also applies to fastboot as well and why.
27 8 Denis 'GNUtoo' Carikli
28
h2. See also
29
30 10 Denis 'GNUtoo' Carikli
h3. "Bridging the Gap between Legacy Docs and Modular Content":https://archive.fosdem.org/2017/schedule/event/legacy_docs/ 
31
32
This is a FOSDEM 2017 talk about "monolythic and comprehensive documentation" ("Example":https://guix.gnu.org/manual/en/guix.html ) which is called "Legacy" in that talk, VS "modular, non comprehensive and use case targetted documentation" ("Example":https://redmine.replicant.us/projects/replicant/wiki/Installation) which is called "Modular" in this talk. 
33
34 12 Denis 'GNUtoo' Carikli
h4. Interesting parts
35
36
h5. Question @24min56seconds" 
37
38
"So you are asking how to organize the assemblies [documentation on how to do a specific thing, example: install Replicant] that we are going to end up with [...] and maintain them". Answer: [...] You have to apply a lot of planning for, [...].
39
40
h5. Question @ 39min27seconds
41
42
[...] I think that something that is hard with the modular approach is to be able to oversee all the modules and how they can be reused, so if you have one user story, I agree that it's much easier to change it somewhere?/in some way?, but there is a new role which is assembling [...] all thoses modules and having an idea of what should be specific, what should be generic, and I think that's [...] a role that needs to have an overview of even more even wider overview than in the legacy documentation", do you have something to say about that?"
43
44
Solutions:
45
* Mind mapping is used to keep track of the documentation status
46
* Hierarchical structure
47
* Metadata (tags, etc) used to understand what we already have
48
** It could be implemented as cathegories in mediawiki in Replicant