I actually like a declaration section in my code. Lots of people, especially Java programmers, tend to like inline declarations. I'd rather get a sort of table of contents to the code in a declaration section up top. Even in Java, I'll tend to put a lot of...

Foo foo = null

... with the = null so that I don't get "var wasn't initialized" errors in my garbage collection routine at the end.

So initializing VB.NET vars with values in the declarations section has gotten me a little turned around. Some people try to be all "Java cool" now and you see lots of...

Dim strFoo as String = "I'm putting in a value now, and if you think I'm just declaring you'll miss it!"

... kinda code. At the same time, I like ensuring everything has a default value. So I've finally decided that...

Dim strReturn As String = ""

... is okay; it's what VB6 was doing by default anyhow. But more complicated than essentially a default constructor or a set = Nothing is bad news.

There's some wasted blogspace for you. Sheesh.