
On 24 November 2011 11:58, Dean Michael Berris <mikhailberis@gmail.com> wrote:
On Thu, Nov 24, 2011 at 10:46 PM, Daniel James <dnljms@gmail.com> wrote:
On 24 November 2011 10:47, Joel de Guzman <joel@boost-consulting.com> wrote:
It saddens me to see TMP-phobia creeping into Boost, of all places! :(
To use something effectively requires understanding the disadvantages.
I always thought it was that to use something effectively requires understanding the problem and whether that thing you have can be part of a solution. Disadvantages only come into play when you're covering the downside. If the tool is the right tool for the job and you know how to use it, would understanding the disadvantages stop you from using the tool?
No, I'm not saying "don't use it". I'm saying that understanding and acknowledging the disadvantages lets you make better use of the tool. When someone says that it's difficult to use, the response seems to be to argue with them and tell them they're wrong. That's not solving the problem, it's making it worse.
You can't wish them away with a silly label. If people find something difficult to use, then it is difficult to use.
... for those people. That doesn't necessarily mean it matters whether they find it difficult to use if it's effective when it works and used correctly. Does that remind you of a programming language we all use?
Much of boost deals with reducing C++'s usability problems. For one example, look at how shared_ptr deals with deleting objects that were allocated in a shared library.