I strongly dislike Hungarian notation, but if you are using a language (like VBScript) that is not strongly typed it can be very useful. The intention however is to understand what variables are for, so they can be used successfully.
Instead of strict Hungarian Notation, I personally prefer to use variable names that are more vague in Type, but stronger in intent.
I would generally dim rowNumber, rather than dim intRowNum or lngRowNum, or dblRowNum...
I can never remember what the difference is between double, long, float.. and with VBScript I can't control it anyway, so it's better that I don't even pretend. What's important is that I know it holds some kind of number.. precisely what kind of number isn't important to me and I've never had a machine so low on resources that I had to actually care about the memory consumption of my tests, suites and frameworks. QTP itself is probably a bigger overhead than using a Double instead of an Int ;-)
Mark, I think this post counts as a grudging YES to your question. Hungarian Notation is /useful/ when looking at code, especially if it's code that someone else has written, but I don't like it.. and my own implementations are a very lazy version of it.
Great thread. I'm looking forward to seeing what other responses you get.
So what happens if you dim strPolicyNum then come along and do a strPolicyNum = cInt(strPolicyNum)? Heh
I personally don't see much value in it for vbs as long as the variables are named to reflect their content...and the code is written well. If someone is just using a bunch of "i, x" etc variable names and I have to maintain their code I may be wishing for it. But still think that issue would be solved by more descriptive names without the type. If it's really a mystery can put a watch on it.
I find it useful, but then I'm not often writing code, I'm usually reviewing other people's code, there is often a high turn over in the teams I work with, the people I work with often choose poor variable names and thanks to the popularity of QTP I'm stuck with VBScript.