Wally Hartshorn has asked for the wisdom of the Perl Monks concerning the following question:

(This really should be posted in "Seekers of ASP.Net Wisdom", but since such a category doesn't exist, this will have to do.)

I realize that the best place to learn about ASP.Net is from an ASP.Net forum, but I wanted to get a preview from "my kind of people" first. :-)

We are considering switching our web site from Unix, Apache, some MySQL, and some Perl over to Windows, IIS, SQL Server, and ASP.Net. (The pull of the Dark Side is strong, for reasons that have nothing to do with Perl.) Handling the conversion to Windows, IIS, and SQL Server will be fairly straightforward, but I'm a bit concerned about the learning curve for ASP.Net.

I realize that we could continue to do many things within Perl on Windows, and I don't doubt that we will do so. However, the primary reason for this switch is to use Microsoft's Content Management Server Software, and that means learning ASP.Net for various tasks.

My question is, as a Perl programmer, what do I have to look forward to as an ASP.Net programmer? <Insert joke about pain and suffering here.> Firstly, which language would be best? My understanding is that we could go with Visual Basic or with C#, but I don't know which would be a better fit. I've heard that Visual Basic is easier to learn, but I've also heard that C# is more like Perl. If anyone is familiar with all three languages, which of the Microsoft languages would you recommend we focus on?

Lastly, are there any books that you think are particularly well-suited for someone making the leap from programming Perl in a Unix environment to programming an ASP.Net language in a Windows environment?

Thanks in advance!

Wally Hartshorn

(Plug: Visit JavaJunkies, PerlMonks for Java)

Replies are listed 'Best First'.
Re: ASP.Net Advice for a Perl Programmer?
by jeffa (Bishop) on Dec 23, 2003 at 15:48 UTC

    Hmmmm, i once worked for a company that decided to switch their web site from Perl to JSP. I thought it was a completely unnecessary idea, but it did generate work a few people who were in threat of becoming obsolete. So, on the bright side -- you have work! :/

    I did a lot of Visual Basic programming before i learned Perl, my recommendation is to use C#. I think most of your pain and suffering up front will be learning Microsoft's Model View Controller model. After that, you will probably find yourself enjoying the project ... but i have a gut feeling ASP.Net is just like the rest of Microsoft's products: once you find yourself taking the path less traveled, you find that Microsoft has no answers for you any more (and they call it support). Oh, and by the way, that company i mentioned earlier was another Dot Bomb, so unless there really is a damned good reason to switch the web site's back end, i'd start looking for another job now... just in case.

    jeffa

    L-LL-L--L-LL-L--L-LL-L--
    -R--R-RR-R--R-RR-R--R-RR
    B--B--B--B--B--B--B--B--
    H---H---H---H---H---H---
    (the triplet paradiddle with high-hat)
    
Re: ASP.Net Advice for a Perl Programmer?
by NetWallah (Canon) on Dec 23, 2003 at 18:45 UTC
    There is no need to abandon perl when you move to .Net.

    ActiveState ASPX claims:
    ActiveState PerlASPX enables professional Perl programmers to use Perl for dynamic content generation on ASP.NET Web servers.

    Built on the .NET framework, PerlASPX adds Perl to the list of supported ASP.NET languages. PerlASPX leverages the power of ActiveState PerlNET to deliver a flexible option for programmers who prefer Perl for its powerful text processing capabilities, or have legacy Perl code. PerlASPX also enables programmers to create ASP.NET-hosted XML Web services in Perl.

    I haven't used ActiveState perl.Net, but have programmed web pages in C#, after years of plain ASP/VB programming (Prior to obtaining Perl enlightenment). The Visual Studo tools are great for building pretty and functional web pages.

    I was plesantly surprised to find .Net's approach very similar to using Perl modules - apparently M$ learned a lot by stealing a delphi programmer.

    It is very important that you get .Net infrastructure training first - to understand the underlying architecture - basically, it is a virtual machine, and you need to figure out how the "module" equivalents are loaded and stored in the global assembly cache.

    C# is actually a nice language (Not as powerful as Perl), which does not suffer from C++ bloat.

    re: Books - MS Press has tons, as does Orielley - sorry names escape me - & I did not pay much attention to the books - in my case the intro to architecture class was great, and on-line tutorials +Hands-on were way better than the books.

    "When you are faced with a dilemma, might as well make dilemmanade. "
Re: ASP.Net Advice for a Perl Programmer?
by silent11 (Vicar) on Dec 24, 2003 at 12:48 UTC
    Good luck with ASP.NET. I attended an ASP.NET event sponsored my MS and I was shocked at all of the code required to do simple operations like connecting to a db, session tracking, etc. I believe this is the app that we opened up and looked at during the seminar.

    I'd recommed C# over VB. I have read thru the 8th chapter in learning C# and I find Jesse Liberty to be an good author. (Is is just me or are perl books sooo much easier to read thru. Most other programming book authors are so dry compared to Randall, Larry, Damian, etc...)

    You may want to look at this while you are getting your feet wet with ASP.NET. WebMatrix seems to be a FREE dummied down version of Visual Studio.

    On a personal note, If you enjoy perl then stick with it. I took a rather large pay cut switching jobs from one that was going the way of MS, to the one I have now that lets me use perl, apache, linux, etc. Sure the wife and I are on a budget now, but I have had so much fun using the tools and technologies I love using. This new, and far less paying, job has really took the "work" out of my work.

    Good Luck,

    -silent11