On 2020-08-06 13:20, a...@gnu.org wrote: The GNU system, and GNU project is entierly volunteer based, and it is up to each maintainer to decide what features to work on and include.
While this is true, it should be noted that there is no rule that proclaims this. This is the way things are because the supply of volunteers is scarce. I have been contributing on the image format conversion and processing package Netpbm for nearly two decades. I'd like to share my thoughts on this issue from the perspective of a maintainer of a software package. I understand the importance of backward compatibility. There are applications and net-based software systems over a decade old which use Netpbm utilities. We can't expect every network engineer to be accustomed with the details of Netpbm. In fact we are accustomed to the fact that those who are entrusted in keeping systems running may know little or even nothing about it. Any change which ignores backward compatibility would be highly disruptive. As such we go to lengths to avoid such things. To maintain Netpbm requires a diverse set of skills. Knowledge of image processing, image formats and data compression is required. On the programming language side proficiency in c, shell scripts, Perl, GNU Make and HTML (for documentation) is called for. Python is also required, although infrequently, because some distributions need documentation in man format, and Netpbm employs an HTML to man conversion script happens to be in Python. Some time ago ghostscript made a change on how certain marginal pixels are rendered and it was detected during routine tests. Naturally the ghostscript maintainers were contacted immediately: they replied they were doing the right thing. I had to brush up my rusty Postscript to make necessary modifications to the Netpbm programs that employ ghostscript. Free software has improved in quality but at the same time build chains have grown complicated. Netpbm is not unique among widely used system software packages. As a result of having acquired, of the course of many years, contributions from people with diverse backgrounds, widely used system software packages have source code in so many programming languages that even talented programmers cannot hope to be learn thoroughly. This means that whenever a problem occurs involving an arcane detail of a lesser-known language, maintainers are obliged to devote time studying it. I see this as a loss of freedom for the maintainer and society as a whole, for the same time could be used to improve software in a more straightforward manner, in the direction of one's stated goals and using tools that one is adept with. GNU software should respect the freedom of the users. This is clearly stated in GNU project documents. Thank you for reading. Akira Urushibata