On Fri, 18 Jun 2004 09:33:25 -0700, "PaulS"
Hi Paul,
Umm, it's Hank, actually 8^>
not sure if you're interested but we actually
employ people like this. Combination of quite bright but
no sense at all and very immature.
Over the years we have
developed a strategy - something like this:
Keep separated from others and allow them to plod away at
the clever stuff, steering where necessary in such a way
that whatever becomes their own idea.
Listen to what they say in case amidst the nonsense
something useful emerges. If nothing does just humour them
politely without rising, control constructive argument but
avoid futile debate. This is all rather a black art.
It's funny, I was thinking about this very thing a little after making
my previous post in this thread.
After reading what you had to say I Googled some of his posts
(including a couple of the ones that I had killfiled in this thread).
Clearly the guy isn't clueless, but nor is he the computing god that
he thinks he is. And in this *particular* case, the advice that he was
giving was just plain dumb. (OK, I'd NORMALLY say "inadvisable" rather
than "dumb"; it's the d00d-'tood that brought it into the latter
category.)
Don't bother checking that a worksheet object has been passed because
it'll just error a few lines further down anyway? Uh-huh. Technically
accurate, but not a good idea in real life. It means that you give up
control over what error gets passed back. I prefer to pass back
specific errors about what went wrong, why, and what's needed to fix
it rather than let the code spew back a generic "Type Mismatch" or
"Object does not support this property or method" or the gods know
what else at some unpredictable point in the code. You can't predict
EVERY possible error, but I don't think it's a good idea to abrogate
responsibility for intercepting obvious ones. It makes it easier for
people using your object to pick up their own errors, which makes it
faster for them to develop their own applications, which then allows
them to focus on making those applications better for users further
down the line. It's the difference between what's OK for Mr. Smith's
CompSci classes, and what's expected in a real workplace.
Then there's the setting up of "straw man" arguments when I declined
to bow down before his dismissive, 3leet haxor d00d skills. Right,
declare that my principal reason for using early binding was so that
I could use Intellisense during development. And hope that no-one
reading his rant will realise that if that WAS the case then I could
have developed early bound, then removed the library references and
done a global search and replace to change all arguments to Objects.
No, it's far better to set up transparently absurd arguments and spit
and cuss like an 8 year old who's been denied cookies.
Documentation? Well yes, obviously the DLL *IS* being documented...
but I'm not arrogant enough to assume that anyone using it is going to
reach for the documentation every couple of minutes to find out "so
what type of object does THIS method require" when it would be far
easier for them to be able to just SEE the type of object needed in
the autocomplete statement.
And this doesn't even BEGIN to address the difference in speed between
early and late binding, which may not be an issue in some cases but
when you're extracting output from hundreds of thousands of records
(as some methods will), every cycle that you can save counts.
But here's the thing; the world is changing. The workplace is
changing. Innovation, skill and talent isn't the prerogative of prima
donnas and the socially challenged. These days, if someone's going to
act like an adolescent then while there may be SOME places which will
employ them in the manner that you suggest, far more won't because
they have plenty of choice. People who behave like that will more
often find themselves increasingly marginalised and eventually
"downsized" or "outsourced" at the first opportunity. I've seen it
happen more than once. If it comes down to a chioce between someone
with talent who can work and play well with others and someone who
won't, then...
You only have to look at this thread; Stephen Bullen and Jamie Collins
both gave intelligent, useful suggestions and comments. B[insert
e's]ves gave profanity and belligerence. In the circumstances, what do
I gain by reading his posts? Not a lot, so I see no reason to take him
out of the bit bucket.
JMHO, and I appreciate your alternative point of view.