I was just reading http://lasagne.readthedocs.org/en/latest/modules/layers.html and wondering about some documentation style questions. One of them was the use of the word "should".
For example:
This method should be overridden when implementing a new Layer class. By default it raises NotImplementedError.
Is that a place where "should" should be used? It seems to me that the following would be better:
This method has to be overridden when implementing a new Layer class. Otherwise, it raises NotImplementedError.
Is there a style guide about such language-independent documentation style questions? (e.g. should a documentation be written in passive voice or with "you" or "the developer" would be another question)
Please note that I'm not writing down requirements. This is a question about documentation of a library.