Re: [eigen] random thoughts -- we need more Gaels |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] random thoughts -- we need more Gaels
- From: Rui Maciel <rui.maciel@xxxxxxxxx>
- Date: Tue, 5 Oct 2010 13:06:05 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:to:subject:date :user-agent:references:in-reply-to:mime-version:content-type :content-transfer-encoding:message-id; bh=Dd8WNyH2Ywbg0ncS6PW6WGJc/3cNSf5DuaWikJLs0MM=; b=aWI/Ul5Dt4zWBmYo3Z71pScFCNJvtWSr/Tjs1PiEPVBVgTAbh6zZCl2rYZv4ChrZsW ASlaK8FpCt1KCypoac/QiTe3bwDW96dgsqglNkGkpqOMq94G128TM6/aGm7bXPLklsib pUVLUI67Vy/DguPou9K/+9BFowEJWLpUtea3w=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:subject:date:user-agent:references:in-reply-to:mime-version :content-type:content-transfer-encoding:message-id; b=nINPJrFfBbUNWp2mpMJjZwKSxkAITT4Rrdk3aAtc4kym/oTToMZsSJHzgE3T3N01Fj Nm3qZZ9rSF7MJSyTcmhbUThzLc4zAzlDx9RtXKkuJ2Lw4NhDlSPMHXR2TyVB5diXKEpF iz4vO/5LnAoxhklnux0XoH1v8K2ud5CYIsEf8=
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