Just one addition/clarification to Greg's comments about using C# instead of
VB to code with...
I think Greg's suggestion to use C# has some merit, but understand that what
he's trying to say is that since you used to do, what we now call "Classic
ASP", that means you used VBScript for your programming and if you move to
ASP .NET and use VB .NET as your language, you may be tempted to use older
style (but still supported for legacy reasons) coding conventions and
syntax. Using C# would force you to learn how to utilize ASP .NET (and the
..NET Framework) from scratch, which is certainly the most thorough way to
go.
But, you should know that one of the most often asked questions about
working in .NET is which language is the best .NET language to work with and
here the simple answer is, "It doesn't matter. They are all largely capable
of the same results with the same performance.".
So just understand that Greg isn't telling you not to use VB .NET because
there's something wrong with VB .NET, he is just providing some good advice
on how to not get caught dragging your old baggage around as you try to buy
some new luggage.
I would also add that the first thing you should get your head around is
what .NET development entails, so you know what to go learn.
At a low level, everything that a .NET application accomplishes is
accomplished by the core ".NET Framework", which has an "engine" (called the
Common Language Runtime or CLR) that processes all instructions needed.
This CLR doesn't actually understand C# or VB.NET - - it understands
Microsoft's Intermediate Langauge or MSIL. Additionally, working in .NET
means working with objects. All the .NET languages are fully
object-oriented (unlike VBScript or VB 6.0) and the .NET Framework has
literally tens of thousands of pre-made objects ready to go...if you know
how to use them.
Now, when you want to "talk" to the CLR or use one of the baked in objects,
you'll do so with your .NET language of choice (C#, VB .NET, and C++ .NET
are all available natively in Visual Studio). As mentioned, C# and VB .NET,
while syntactically different, can both largely accomplish the same things
with the same performance so choosing one is really a matter of preferance.
When you compile your code, it is translated into the MSIL that the CLR
actually processes, so as far as the CLR is concerned, the language you've
picked doesn't matter.
Lastly, to actually do your development, you use Visual Studio, so it's not
a choice between Visual Studio or .NET, you use Visual Studio as the
environment that allows you to write code, using the language of your
choice, and then compile it down to MSIL.
So, in a nutshell, to learn and become proficient with .NET, you need to
move along 3 learning paths simultaneously:
Learning the .NET Framework
Learning the .NET language of your choice
Learning the Visual Studio Integrated Design Environment (IDE)
Coming at this from scratch WILL take some serious time and effort. I've
been working with .NET since its early betas back in 2001 and can say that
I'm an "expert" in some areas of .NET development and not an expert in many
more areas.
I also agree with Greg that, unless you have a specific need for a
certification, you may want to rethink getting one. Many employers don't
put too much stock into them as it is well known that having the
certification just shows that the holder knows how to pass a test and
doesn't *necessarially* (disclaimer for my certified friends out there
)
mean that you really have a mastery of the topic. Most employers are much
more interested in finding out what you know and what you can do, which a
certification doesn't tell them so they very often will ask you to build or
describe how you would build a particular type of application as part of the
interview process.
Good luck and happy new year!
-Scott