Scott on Writing

Musings on technical writing...

Is ASP.NET Too Hard?

On a listserv I'm on some folks were discussing the adoption rate of ASP.NET compared to other server-side Web programming technologies.  Someone mentioned that they had read that there were more new projects being started with classic ASP than with ASP.NET.  Even though ASP.NET has been out for several years, more developers are still using classic ASP, and not just for maintaining old projects, but for starting new ones too!  Why is this?  I can only think of two reasons:

  • Said employee's company has not yet adopted .NET.
  • Said employee finds ASP.NET over his or her head.

Hardly a week goes by where I don't receive at least one email from a 4Guys reader or from a reader of one of my books that goes something like: “I am having trouble doing X in ASP.NET.  This was so easy in classic ASP!!”  This begs the question: is ASP.NET too hard?

Part of classic ASP's appeal was that non-programmers could quickly pick it up and start using it.  The concepts behind ASP were simple enough - procedural programming in an English-like syntax (VBScript).  Where things got more tricky - like needing to connect to a database, read a text file, use a regular expression, etc. - there was always a plethora of code samples available online, and since ASP pages were simple text files, one could just cut and paste the script into their page and give it a whirl.

ASP.NET is a different beast altogether.  It's object-oriented.  It's compiled.  While it is possible to develop using Notepad, it's not easy.  Trying out new source code is not as easy as cut and paste.  Sure, Visual Studio .NET makes many facets of Web application development a breeze.  Need to display data on a page?  Simply drag a DataGrid onto the Designer, and then a connection object; set some properties through VS.NET's GUI, and you're done.  Trouble is, if you want to deviate from the path the GUI tools provide, you have to write code.  And ASP.NET code, to the non-programmer, may seem backwards and confusing.  For example, consider the following: you are displaying monthly sales data in a Web page and want to make the background color of the month's data red if the sales goal for that month was not met.  In classic ASP, you can see where your HTML <table> is built up, and non-programmers can intuitively reason the precise location where such a check must go.  In ASP.NET, you need to know that the DataGrid has an ItemDataBound event that fires for each item added to the DataGrid.  For someone whose background is not in computer science, the notion of creating an event handler may be foreign.

Now I'm not decrying ASP.NET in favor of classic ASP.  The last classic ASP page I created was back in 2000, and I don't plan on ever doing classic ASP again.  I love ASP.NET, but I have a computer science background.  I've talked to folks who lack the background, or who work with people who lack the background, and they notice just how much trouble these people have transitioning from ASP to ASP.NET.  Part of the power of ASP (and Visual Basic) was that it empowered non-programmers to create computer solutions, but .NET has raised the entry-level, for better or for worse.

So what does the future bode for these non-programmers?  Do they migrate from programming to some other task?  Keep doing classic ASP / Visual Basic?  Start using .NET once the tools become so advanced that virtually no code has to be written by the so-called “developer?”

posted on Tuesday, March 16, 2004 12:11 PM

Feedback

# re: Is ASP.NET Too Hard? 3/16/2004 1:03 PM Bryant Likes

I would like to suggest one other possible reason:

3) Said employee finds ASP.Net examples to be over his/her head.

Case in point would be the example you cite as to how easy it is to display data on a page. I started out with examples like that and would then look at the code that was generated by those wizards. One look at that wizard generated code is all it takes for an ASP developer to conclude that ASP.Net is way over their head.

I still haven't found any really good migration type walk-throughs to help ASP developers move to ASP.Net.

# re: Is ASP.NET Too Hard? 3/16/2004 1:07 PM AndrewSeven

I think that for many of them, asp classic is just fine.
I'm not interested in using it , but it is a fairly mature platform.

I do my best to hide details from the design/html people by using controls.

If they are "non-programmers", they should "script", not "program". If they want to be programmers instead of "scripters", then they will need to take some time and learn to program.




# re: Is ASP.NET Too Hard? 3/16/2004 4:05 PM Paul Wilson

I think the "apparent" ease of things like classic ASP has actually made it too difficult to convince people that "real" programming does require design and time, so I'm glad to see it be easier for the pros but harder for the rest.

# re: Is ASP.NET Too Hard? 3/16/2004 9:38 PM Scott Mitchell

Paul, I tend to agree with you. ASP.NET has made my development a million times simpler and (just as importantly) more fun! I still feel bad for those who are left behind, though.

I do training and tutoring on ASP.NET, and did it for classic ASP back prior to 2000. There's clearly a class of people who aren't programmers. They're brains, perhaps, are just not configured to tackle a problem in an agorithmic, logical fashion. Regardless, (in my experience) these folks could still pick up ASP. Sure, they weren't going to be master coders, but they'd be able to do what they needed. The same, unfortunately, cannot be said with ASP.NET, especially for those students who can't afford VS.NET or are dead set in using a tool they already know well (like Homesite).

# Take Outs for 16 March 3/16/2004 11:33 PM Enjoy Every Sandwich

You have been Taken Out! Thanks for the post.

# re: Is ASP.NET Too Hard? 3/17/2004 4:33 AM Ian Ringrose

For simple web sites, ASP hosting cost a lot less then ASP.NET hosting. Using the JET database from ASP.NET is a plain, but it is easy from ASP, most hosting company change a LOT more for SQL Server then JET. (Can we have an ‘xcopy’ JET managed provider please?)

If your page is 99% HTML and 1% script, then ASP works well, I know pages can be written like this in ASP.NET, however most of the ASP.NET books assume you are writing an application and ‘happens’ to use HTML for it’s user interface, rather then wanting to add a little bit of server side script (e.g. today’s date) to a HTML page.

To get more people to use ASP.NET the cost of hosing ASP.NET websites must be less then ASP web sites and the books in the local book shop must make ASP.NET look easy! (E.g. they must NOT be useful for people that are writing real applications in ASP.NET.)

# re: Is ASP.NET Too Hard? 3/17/2004 1:58 PM Dennis Pallett

I've tried using ASP.NET before, but found it too hard. Things that I could do within 5 minutes using classic ASP took me atleast 3x longer using ASP.NET. Granted, I haven't got VS.NET (can't afford it), and I was using Web Matrix so I didn't have any extensive GUI to help me out (no IntelliSense either).

Maybe I'll get VS.NET sometime, and give ASP.NET another try, but until then, it's good o'le classic ASP.

# re: Is ASP.NET Too Hard? 3/17/2004 11:14 PM Joey

I'd say PHP is probably an easier migration from classic ASP than.

# re: Is ASP.NET Too Hard? 3/18/2004 6:26 AM Zack Jones

I don't think ASP.NET is too hard I think the transition from asp to ASP.NET is what is hard. You really have to rethink how you do things in ASP.NET over asp classic.

Fortunately I work for a company that has jumped on the .NET bandwagon and I'm converting all of our asp classic apps over to .NET and I'll never go back to asp classic.

# ASP.NET is part of my thinking 3/19/2004 7:37 AM Justin Lovell's Blog

# Insomniac, Rebed anyone? 3/20/2004 4:32 AM AdminBlogs.com

# re: Is ASP.NET Too Hard? 3/20/2004 7:16 PM Dan Lundy

I have been *involved with* Object Oriented programming and development since the early 80s. I found moving to ASP.NET to be a "coming home" experience.

So, out of curiosity, is it the OO in ASP that is causing such pain? Is ASP.NET adoption happening mainly amongst those with an OO background?

# re: Is ASP.NET Too Hard? 3/21/2004 12:04 PM Scott Mitchell

Dan, I think ASP.NET adoption is happening most painlessly among those with an OO background. Here is a typical classic ASP developer: a relatively smart person who graduated in 1995 with a degree in biology, and an interest in computers. This mythical person takes a job at a lab doing research for various companies. It quickly becomes known that this person likes computers and even has a personal Web page, so his coworkers ask him to design some tools to help streamline processes. He builds a simple data-driven intranet app, leaning classic ASP from (shameless plug) Sams Teach Yourself ASP 3.0 in 21 Days.

ASP makes sense to this guy. You want X to happen, you put X at the top of the page between <% and %>. If he needs to determine how to do X - such as send an email - he goes to (shameless plug) 4GuysFromRolla.com and searches on email, and gets some source code he can cut and paste into his page. Simple.

ASP.NET, however, is different. There are now two files for every page. Events and event handlers might not make much sense to this person who's had no formal computer science classes or training. The code he finds on the Web might be in C#, while he only (cares to) knows VB. ASP.NET - for this type of person - is hard, and requires a substantial amount of retraining. The point is, the learning curve for classic ASP is much lower than for ASP.NET for people with no C.S. background.

# It's the ADO.net part 3/22/2004 9:59 PM Uwe

For me, I spent the longest time in writing USABLE query-/insert-/update-wrappers to manage the ADO.net beast.

Since I have these classes (and throw out all databinding-stuff like DataGrid and use a simple asp:Repeater instead), it feels lots more productive than ever.

So also ASP.net took me some time to adopt, the ADO.net took me way longer.

# re: If it's easy - it's flawed 3/23/2004 6:20 AM Memi.Reflection

# re: Is ASP.NET Too Hard? 3/23/2004 9:51 AM Not Confused

Hmm... I don't even have a college degree and I'm figuring this stuff out. Maybe my code is worse than I think?

Time to go check!

# re: Is ASP.NET Too Hard? 3/28/2004 8:34 AM Rodrigo Pineda-Icaza

Hi all

I think ASP.NET is WAYYYYYYYY harder to learn than microsoft want us to believe.

There are several reasons for this , first is a new language, not only a more complex , object oriented language, but new. Some people are doing VBSCRIPT , more proefessional shops are doing JavaScript ( Same client and server scripting ). In ASP.NET you have to switch to C# if you want to find meaningful examples, in fact I haven't found anything in JScript.net, even in Micosoft site.

Second point is you have to learn a new object model, remember the FileSystem object , Which ? Where ? Where is the Error object ?
and what the hell is system.data.SqlClient. In fact the .net Class libraries are so big that I'rather try Mount Everest and switch to Java, I bet the libraries learning curve is smaller. Microsoft created a brand new runtime layer that is causing people ( really) to consider Java, is similar, samae structure, same idea, Java must have been doing something good and are on version 4 not 1.1.

Third is the programming model on the server is event driven and encapsualted. Where is my HTML, my CSS, what is Microsoft doing?

Fourth is the tools, microsoft centric tools, is all about VS.NET, but what about my notepad I used or Homesite, I will not abandon Homesite, I want to see my code, type my code, I dont want to drop controls that add 10 lines of code in my source file, Did you realize that I never use Interdev, more than for debugging , Why do I have to use VS.NET

Any ways folks a personal one that I hate is that changing the page and running again takes more time, that's right, I as a programmer, making changes to my pages have to wait for that damm compiler. Where is all my investment in extreme programming going ?

I have more but I may write an article about it, for the moment this are my 2 cents.

Rodrigo

# re: Is ASP.NET Too Hard? 3/28/2004 6:15 PM Matthew Webb

Yes, ASP .NET took me a bit longer to pick up than ASP, but the benifits of ASP are far greater and has since saved me a lot time time through better error handling, etc.

Is it good that it is harder to learn? Sometimes yes because I have had to fix a ASP site made by a person who claimed to be a programmer. The code was such a mess. ASP .NET make is harder to take shortcuts and write messy code.

# re: Is ASP.NET Too Hard? 3/30/2004 2:40 PM Kevin Steffer

I am a bit concerned reading all these feedbacks and not one word about web APPLICATION.

ASP is in my point of view used for dynamic web content. ASP.NET is used for APPLICATIONS on the web.

That means when I want to write a website that displays data stored in a database I would choose ASP. When I write the backend I would choose ASP.NET because the backend might have to "talk" with webservices delevering external content from other online applications, It might need file uploads, file management, document management and on and on, applications with intuitive interface. I got all that available in ASP.NET. In ASP I have to write terrible much client side JavaScript to make the usability look like an application.

This is what I think is essential for ASP.NET vs ASP.

I would like to say that maybe Microsoft made some misunderstandings when marketing ASP to ASP.NET migration but all I see is that they want to tell us developers is that now you have the possiblity to write APPLICATIONS that run on your website.
This is a benefit for developers that have been trying building applications in ASP and client side JavaScript. Like Scott developers with a computer science background. Now you've got ASP.NET.

All others can easily hang on the ASP. What is the use of ASP.NET if you write dynamic webpages ? Nothing just more code that is harder to manage becuase of compilation and more cost of your time writing clases, interfaces and so.

But to the ASP developers I will say, if you ever want to be a programmer programming applications ASP.NET is a good place to start.

# re: Is ASP.NET Too Hard? 4/13/2004 11:57 AM Mike Linton

I think that ASP.Net simply has some problems in ideaology

For background, I am almost point-for-point that classic ASP developer Scott mentioned... good brain, problem-solver picks up things easily (except that I was a drama student who also got computers - but I was trying to major in both Drama and Biology - damn university had them on the same day though - spooky huh?). But I reject the notion that the reason the switch to ASP.NET is so hard is because it *foreign*

I get O-O code - really I do. I understand exactly what's going on. I went through Microsoft's 2640 course to make the transition and understood every bit of it. In fact, I thought .NET had some really great ideas behind it - and some great functionality.

But the scale of .NET is overwhelming - as Rodrigo mentioned, the libraries in .NET are vast. The learning curve is hot high - it's just long (if you get what I mean)... too long for those of us who weren't using O-O code in the first place. I just don't have the time to commit to that much of a learing curve - and since code exmaples are basically out the door, it's really a chore to get started. And if it takes so much to get started... well, you get the picture.

I think a lot of the classic developers could get into .NET if they had the time to invest to do what it takes to get started with ASP.NET. But really, it's a big leap and a lot of us just don't have the time to get ready to make it.

I Like .NET - I think it has it's places where it really shines and places where it doesn't, but most implementations I've seen really preclude not using it where it doesn't. MOst of which can probably be construed to not being able to share the viewstate (session) with the classic ASP Kernel... you just can't login with ASP.NET and also be logged in with any ASP pages you make.

Side note: I would like to mention though, that with everything I've seen with .NET, yes, it can write the interfaces for you, but the cookie-cutter interfaces are minimal at best. For example, can you sort by TWO criteria in the DataGrid, please? The interfaces that come with VS.NET are ok, but let's not pretend that they are by any means the be all and end all of interfaces... most people I have talked to basically have to code their own anyway.

Title:  
Name:  
Url:
Protected by Clearscreen.SharpHIPEnter the code you see:
Comments   

My Links

Ads Via DevMavens

Archives

Post Categories

 

I am a Microsoft MVP for ASP.NET.
I am an ASPInsider.
<July 2008>
SMTWTFS
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

Comment Stats

DayTotal% of Total
Sunday 1896.8%
Monday 39014.0%
Tuesday 46916.8%
Wednesday 51518.5%
Thursday 54419.5%
Friday 50818.2%
Saturday 1706.1%
Total 2785100.0%

Hour1Total% of Total
12:00 AM 682.4%
1:00 AM 712.5%
2:00 AM 632.3%
3:00 AM 752.7%
4:00 AM 572.0%
5:00 AM 1093.9%
6:00 AM 1114.0%
7:00 AM 1615.8%
8:00 AM 1756.3%
9:00 AM 1505.4%
10:00 AM 1736.2%
11:00 AM 1826.5%
12:00 PM 1906.8%
1:00 PM 1766.3%
2:00 PM 1605.7%
3:00 PM 1324.7%
4:00 PM 1124.0%
5:00 PM 983.5%
6:00 PM 913.3%
7:00 PM 993.6%
8:00 PM 853.1%
9:00 PM 802.9%
10:00 PM 833.0%
11:00 PM 843.0%
Total 2785100.0%

Comments by Blog Entry Date/Time

Day Entry MadeAvg.Total
Sunday 5.14144
Monday 5.35353
Tuesday 4.35444
Wednesday 7.58644
Thursday 6.87625
Friday 5.45414
Saturday 5.03161
Total 5.802785

Hour1 Entry MadeAvg.Total
12:00 AM 5.0035
1:00 AM 1.002
5:00 AM 0.000
7:00 AM 7.0035
8:00 AM 5.45109
9:00 AM 6.34279
10:00 AM 6.41250
11:00 AM 4.28184
12:00 PM 6.98342
1:00 PM 2.87112
2:00 PM 5.29222
3:00 PM 8.54299
4:00 PM 3.9190
5:00 PM 5.78156
6:00 PM 4.52113
7:00 PM 9.32177
8:00 PM 9.06154
9:00 PM 5.14113
10:00 PM 6.2381
11:00 PM 4.5732
Total 5.802785

Learn More About Comment Stats
1 - All times GMT -8...


Blog Stats

Favorite Web Sites

My Books

My MSDN Articles