Discussion:
Writing Documentation
Timo
2016-01-23 08:35:54 UTC
Permalink
Hi who is responsible for writing documentation for OpenBSD?
I'd like to get involved in writing documentation for OpenBSD as I
really like OpenBSD and I feel technical writing is one of my strong points.

Regards.
Timo
Timo
2016-01-23 08:46:55 UTC
Permalink
Ok makes sense. I'll look over the documentation and see if I find
something I can contribute to.

Regards.
Timo
Post by Timo
Hi who is responsible for writing documentation for OpenBSD?
I'd like to get involved in writing documentation for OpenBSD as I
really like OpenBSD and I feel technical writing is one of my strong points.
Regards.
Timo
The best way would be to just start writing patches where you think
person responsible for writing the documentation.
Ingo Schwarze
2016-01-23 13:19:01 UTC
Permalink
Hi Timo,
Post by Timo
Post by Timo
Hi who is responsible for writing documentation for OpenBSD?
I'd like to get involved in writing documentation for OpenBSD
Nice to hear that. If i were to focus on improving OpenBSD
documentation, i could off the top of my head name work that needs
to be done of at least a full-time man-year, probably more.
Post by Timo
Post by Timo
as I really like OpenBSD and I feel technical writing is one of
my strong points.
Nobody can tell you what you are able to do until we have seen some
of your work, in the sense of committed OpenBSD patches.
Post by Timo
The best way would be to just start writing patches where you think
person responsible for writing the documentation.
Ok makes sense. I'll look over the documentation and see if I find
something I can contribute to.
Good. Note that though there are lots and lots of defects, finding
them may seem daunting to a beginner. Don't be discouraged if you
search for a few days in random places and find none. If you do find
small, local defects, just send the patches.

The reason why that's so hard is that developers sometimes do it
to chill out, to take a break from coding, and that jmc@ specializes
in it and finds almost every simple defect almost instantly. Also,
if you are interested in how to find technical flaws in manual page
sorce code, look at the "quality control" chapter of my EuroBSDCon
2014 tutorial (both available as PDF and on YouTube). What is
described there is mostly stuff that was already done in the past,
so to find more issues, you usually need to look harder than that.

There largest well-known documentation defects are:

1. LibreSSL documentation. It is way below OpenBSD standards in
almost each and every aspect (correctness, completeness, clarity,
style, formatting), even the parts that were already converted
to mdoc(7).

2. Documentation of standards conformance in section 3 manuals.
Outdated almost everywhere, in literally thousands of manuals.
In is not 100% clear how exactly to fix that, but i'd say:
If C and POSIX agree, list C only. If specified in multiple C
standards, list both the oldest and the newest. If POSIX
needs to be mentioned, usually discuss the most recent version
only.

3. Software that is half third-party, that is, maintained in tree,
but sometimes partially synced with an external source. Working
on such stuff requires synching documentation for subtly different
versions and working with both us and the other project. For
example, multiple people already tried to fix the mess of the
editline(3) documentation, but always ran away before getting
any real work done.

4. Converting the FAQ to a set of manual pages.

There are more projects of that kind. Most require code reading
skills. Most require non-trivial coordination with developers.

On such large projects, don't spend large amounts of times without
talking to someody at the latest after the first day of working,
showing what you did, and be prepared that you may have to start
over two or three times to get it right. Even i would probably
have to throw away my first one or two tries. You will almost
certainly head out in the wrong direction even with these hints.

If you want to start with something really simple, identify your
favourite software from ports. Chances are it has no manual pages,
or bad ones that are very easy to improve. Do a sample of your
work on it (not more than a day) and send it to me. Then i'll get
a better idea of what you are capable of. If you do good work, we
can try to get it upstream, and then identify a good project for
you to work on.

Yours,
Ingo
Michael McConville
2016-01-23 17:37:08 UTC
Permalink
Hi who is responsible for writing documentation for OpenBSD? I'd like
to get involved in writing documentation for OpenBSD as I really like
OpenBSD and I feel technical writing is one of my strong points.
In case you (or other readers) need more of an introduction than other
people gave:

You'll need to learn how to use CVS. It's very simple:

http://www.openbsd.org/anoncvs.html

The website, including the FAQ, is in the www/ repo. The man pages are
combined with the source code in the src/ repo.

A typical simple CVS workflow looks something like this:

o cd to the repo dir

o cvs up -Pd (use cvs up -PdC if you want to undo any existing
changes)

o make your changes

o cvs diff > /tmp/t.diff

o append your diff to an email bound for tech@

The man pages are in the mdoc format - see the mdoc(7) man page. Man
pages have filenames like mdoc.7, where the trailing digit is the
mandoc path/to/mdoc.7 | less
Remember that while OpenBSD hosts and develops many of its own tools, it
also includes some third-party projects like GCC. We generally leave
third-party man pages alone unless there's a serious issue.

The mdoc format can be complicated , so make sure to read the man page
as much as you can manage. :-) In general, try to imitate the style of
the surrounding text.

Enjoy! And let me know if you have any remaining questions.

Michael

Loading...