Ingo Schwarze: Forget reusability, aim for perfection -- BSDCan 2018
Channel: BSDCan
Date: 2018-08-06

Many new features and applications have been developed with the mandoc(1) manual page toolbox during the last three years, including a new database backend, a markdown output mode, much improved WWW output and roff(7) and ports handling, the application to LibreSSL documentation, and more. I'll provide an overview and explain what we learnt from these projects.

At BSDCan 2015, i explained how mandoc(1) managed to become the standard BSD manual toolbox both for the command line and for the web. So you might think it is now finished and nothing more was done during the last three years. But that's far from the truth!

Even more than such major new features, successful maintenance really means taking care of lots and lots of small things including keeping up with newly developed security features, moving ahead with regression testing, coordinating with other implementations of the languages in question (in this case, mainly groff), further improving search and diagnostic functionalities, and more. There won't be time to discuss all that in detail, but i'll briefly mention about a dozen specific examples, and why they matter - for active maintenance of free software in general.

http://www.bsdcan.org/2018/schedule/events/958.en.html

We can still learn a lot both from developing it further and from applying it to large-scale real-world tasks. I will present lessons from five quite different larger projects completed in and with mandoc in 2016 and 2017, and from several smaller ones, and i will show that we are not quite done yet and worthwhile tasks remain.