Claudio said:
I don't know where you've been for the past 15-20 years, but minds have been
changed in vast numbers without there being a cutesy, amorphous slogan to sway
them. You may not be used to dealing with the professional programmers you
claim to want to address, but this is a crowd that's persuaded by technical
information, not by vague and nebulous statements of "benefits". They're smart
enough to figure out the potential benefits on their own if they're given
information instead of platitudes.
Not that I disagree with your point, nor do I have anything against you
personally Mr. Puviani, but you must not be used to dealing with people.
For sure a rational and objective discussion will convince a group of
knowlegable and open-minded people. But those kinds of people are very
rare. More often you'll get people that are looking for easy solutions -
consciously or otherwise - either programmers looking to do less work or
managers looking to increase "productivity". In the rare case that I
have encountered somebody willing and eager to do real work, they are
either uninterested in learning or unable to grasp the deeper issues
behind a topic at first.
Programmers are no less susceptible to hype than the general populace.
If anything, they're probably just more wary of it simply because
there's so much of it in this field, and they've either been burned many
times or have seen too many others burned.
Besides, it is a lot easier to memorize a 3 sentence paragraph than an
entire book, but if you can relate the entire book to that 3 sentence
paragraph, you're well on your way to memorizing the book.
I don't doubt that a platitude will satisfy far more people than it will
annoy. History and statistics are on my side there. The only issues for
a responsible mass-market educator, then, become finding a good
"executive summary" or catchphrase, and clearly conveying to the
audience the highlights and limitations of it by demonstrating it
action. By that metric, the OP is off to a good start by coming here
(well, maybe not specifically *here*) and asking for help.
If you or some of the other posters in this thread are the type that
gets annoyed by "executive briefs" such as the OP's, that's fine - it
tells me that you've moved on to a more critical stance on OO, which is
obviously a step up from blind acceptance of application of dogma, which
is Good. But chastising those that have not reached that stage (ie, the
"lowest common denominator"), or those attempting to reach an audience
not yet there (ie, "politician"s or "third-rate marketeer"s), benefits
no-one. I cannot see it would improve the comp.lang.c++ community either.
And for the record, I disagree with Jeff Schwab's criticism of defining
of OO using its own terms. Presumably, shortly after you give the
definition, you define the terms (in the process of explaining OO). And
when you are done, you can reiterate the original definition with the
(now charged) terms. Now the "platitude" becomes a checklist of the most
important concepts and mechanisms in OO. I would recommend that to the OP.
mark