|
Boost : |
From: Brian Allison (brian_at_[hidden])
Date: 2006-02-03 07:59:40
David Abrahams wrote:
"Andy Little" [1]<andy_at_[hidden]> writes:
"David Maisonave" wrote
What's the point of creating a great class, if only a handfull of
developers ues it, because the majority have no idea how to use it?
You cant escape the fact that writing documentation is the most tedious, rotten
,
boring, miserable, mind-numbing job imaginable ***.
I disagree. Finding the right way to explain something deepens one's
own understanding of it and -- very often -- uncovers real problems
with the design. I think the skills required are really essential to
becoming a great software designer. If you give it the time it
deserves and treat it as part of the process rather than just
something to do after you've written the code, it can even be
enjoyable.
I agree, though I was dragged kicking and screaming into agreement by
experiences of the past few years. It's one thing to explain a design to
other people who are already familiar with the topic (but not intimately
so), but explaining how to use a functional language interpreter to someone
whose programming expertise has been on-the-fly gawk scripting... the design
of both the language and the interpreter has to become far more elegant than
if I were explaining it to another person with my background. (Just try
explaining to someone who's used to Perl/gawk why the new script language
has no variables.)
In fact I find consistently that if a design is elegant, then it's far
more enjoyable to have explained it - whether in a TeX file or verbally -
and the act of explaining forces me into knowing the topic better than
before.
(ObPhilo: I think that's because there's something that intrinsically
beautiful about asymptotically exact invariant observations - I mean "good
design".)
As a novice to Boost, I'd offer to help out with the documentation except
that not only are the next 6 to 8 weeks are bad timing for starting any
projects like this, but I'm also notoriously slow at generating
documentation. I'll keep an eye on this thread though, and if things resolve
themselves favorably for me then I could see myself offering to help.
References
1. mailto:andy_at_[hidden]
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk