Most projects can be learned through 'using the source' and that is a very valid way to learn a project :). I find that when I have documentation for a given project I am more likely to use it more often and I have an easier time getting back into it .. I also find that more and more I like design diagrams, so I am thinking of making a design diagram for Nmap::Scanner that shows the relationships between the classes .. that would make it VERY easy for a new developer to see how things relate .. I will do this once the object model is stable, which will be by version 1.0 .. as I think your idea of having things named the way the nmap XML does is a good idea .. as it makes debugging easier and will lower the learning curve for someone who already knows nmap and is coming to Nmap::Scanner.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Most projects can be learned through 'using the source' and that is a very valid way to learn a project :). I find that when I have documentation for a given project I am more likely to use it more often and I have an easier time getting back into it .. I also find that more and more I like design diagrams, so I am thinking of making a design diagram for Nmap::Scanner that shows the relationships between the classes .. that would make it VERY easy for a new developer to see how things relate .. I will do this once the object model is stable, which will be by version 1.0 .. as I think your idea of having things named the way the nmap XML does is a good idea .. as it makes debugging easier and will lower the learning curve for someone who already knows nmap and is coming to Nmap::Scanner.