Re: [eigen] random thoughts -- we need more Gaels

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Benoit Jacob wrote:

> The issue, is precisely that knowing C++ is not all-or-nothing!
> Contrary to most other languages, practically nobody knows enough C++
> that he wouldn't have something new to learn from time to time. I
> learnt much of what I know about C++ while doing Eigen. I think that
> we can actually turn this into a strength, if we play this card well:
> "join Eigen development, you'll learn a lot of C++ with us". Then
> again, this relies on developer documentation getting written.

You are right, knowing C++ is not all-or-nothing.  It's even possible for 
someone to "know C++" and still not be able to design and implement any 
generic pattern on his own.  Yet, that skillset isn't strictly necessary to fix 
some bugs and implement new features.  If a developer is aware of the code's 
general structure and if he is able to access a reference on how things were 
implemented (i.e., how to implement solver X with matrix type Y) then I 
believe he will be in a position to do some work.



> I don't believe that much in heavy commenting. I'd rather start
> writing good developer documentation and from there we only
> occasionnally lack commenting. Most of our code is self-explanatory to
> someone who understands our general design. An example of what I
> consider to have the right amount of commenting is
> Eigen/src/Core/Assign.h.
> 
> Eigen wasn't any more commented when Gael joined --- it was just much
> smaller (1000 LOC), so it was possible for him to grasp the overall
> design without documentation.

The reason I mentioned comments is the fact that they are, before the code 
itself, the last resort to help understand what the code is intended to do.  
In some cases they aren't strictly needed, as the code is, as you've said, 
self-explanatory.  Yet, the self-explanatory nature of a piece of code can 
depend on the reader's familiarity with the code.  So, a piece of code may 
very well be self-explanatory to the person that spent a considerable amount 
of time designing and writing it but to someone else, particularly those who 
are starting out, things may not be so clear.


Rui Maciel



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/