The SitePoint Forums have moved.

You can now find them here.
This forum is now closed to new posts, but you can browse existing content.
You can find out more information about the move and how to open a new account (if necessary) here.
If you get stuck you can get support by emailing forums@sitepoint.com

If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Should I wait and learn ASP.NET

OK, I finally get it. Microsoft is re-releasing alot of its technologies under the .NET arcitecture. I wondering if I should bother to learn ASP or wait a little for ASP.NET to catch on. I don't want to basically waste my time learning VBScript and then have to learn VB.NET.

I have a strong base in C derived languages (PERL, PHP etc.) and can do well with ColdFusion (easiest lanugage to learn!) but I want to expand so I can program on both the major platforms, *nix and Windows. I know the VERY basic syntax for VBScript, just from reading on 4guysfromrolla.com and Kevin Yank's articles. Should I scrap all that and grab a new book on VB.NET (ASP.NET) or will it carry over? I know the new pages use an entirely different engine, what changes have been implemented that will affect a total newbie?

Basically what I'm asking is should I wait 3 months for the new technology picks up, dive in now and be ahead of the curve or program in "Old Skool" ASP?

Similar question:
Should I learn C first and then go to C++ or should I learn C++ directly?

Answer: whatever you learn first you should know both.

Reason: There is a lot of C code out there.

The same case should apply for ASP too. Not each and every website will upgrade to ASP.NET overnight. And also I am not sure when will Microsoft release ASP.NET and what will be the final product (syntax, etc...). So for the time being do learn ASP.

I'm not much of a .NET expert but from what I've read you should be able to use C# instead of VB for .NET coding stuff. If you've got a background in C / C++ already surely it makes sense to lean C# for .NET rather than having to use VisualBasic?

You can also write ASP.NET in managed C++, JScript and, in future, a slew of other languages. Because of the way they compile, there's not much merit in choosing one over another performance-wise (in testing I think the differences in speed were < 5%, and there were occasions where VB.NET was faster, times when C# was faster, and times when C++ was faster - as I say though, always by a very small amount).

So simply choosing the language that best suits you is the best option I feel.

As for what to learn (ASP or ASP.NET), it's up to you. ASP will be around for a few years yet so it's still worth learning, but ASP.NET ought to be released soon so there will be sites springing up shortly. Personally I'd be tempted to say learn both, if only because it probably won't take you long at all to pick ASP up if you're happy with PHP etc. - there aren't many new concepts for you, it's just new syntax etc.

I don't really know much about ASP and MS web platforms, etc. But my understanding of .NET is that all the languages will use the same compiler - that is, they will all share the same underlying architectural model of object behaviour, inheritence, polymorphism, etc. This is great because it means that the language(s) used really don't matter at all.

This is why Sun revoked MS's Java licence. MS was trying to bend its version of Java (VisualJava) towards its underlying model away from the Sun specs. Thus MS have come up with C# instead.

The other implication I see in this, is that MS with .NET is really going to define a dominant web application architecture, which IMHO, is more important than language symantics.

I definitely agree with that - Beta 2 of the .NET Framework SDK is available now for download, so there's no reason at all you can't start learning it today. You need to be running Win2K and IIS5 (obviously), then you simply need to download MDAC 2.7 and the .NET SDK (both will be linked from www.asp.net ), install them, and that's everything you need. You can write the pages in whatever text editor you like, and the SDK has command-line compilers etc.

It's unlikely there'll be many changes between Beta 2 and the final release of the framework, so what you learn now will almost certainly be applicable on release. And given how different it is to ASP 3.0, PHP etc. it's worth starting early, as it could well take a while to learn. Thankfully there are already some good resources available to help you out ( sites like www.gotdotnet.comwww.ibuyspy.comwww.4guysfromrolla.comwww.dotnetjunkies.com etc. etc.)