Configuration Conventions

For non-programmers, MATSim is configured via the config file.
(For extensions, we have not yet found a good solution.)
If you make your code configurable, please observe the following hints.

Avoid automagic

Examples for automagic are:

The problem with such automagic is that it is nearly impossible to write code that is robust against typoes. As a result, one gets warnings such as

If a user is not able to switch off warnings, she or he will eventually start to ignore them. Which is not good. In that sense:

Avoid warnings that cannot be switched off

If a user is not able to switch off warnings, she or he will eventually start to ignore them. Two aspects: