ASP is Dead – Microsoft Slit ASP’s Throat and Left it to Bleed Out… Stop Trying to Save it.
Note: To preface this article, if you disagree with me I would love to hear your opinion, please leave me a comment with your thoughts on the topic.
ASP is dead. I think that all developers currently developing in classic ASP should move to ASP.NET or another language like PHP or JSP. If that isn’t an option, then they should give up web development. Like Internet Explorer 6, classic ASP was once a great tool for online development. Unfortunately, it has stayed on the shelf long past the expiration date.
I believe developers still developing in classic ASP are doing their customers a serious injustice. Don’t get me wrong, ASP provides a powerful set of tools that are very capable of creating successful websites. I cannot argue with the success ASP has had over the years. The injustice comes from the fact that Microsoft discontinued development of the framework shortly after the introduction of .NET several years ago. In addition to the lack of support and updates from the creator of the language itself, most universities training new programmers discontinued educating students on classic ASP several years ago. This means the pool of ASP familiar programmers is consistently diminishing.
It is already much, much harder to find skilled classic ASP programmers now than it was 2 or 3 years ago and this division will continue to grow quickly. The last major update to classic ASP was version 3.0 distributed with IIS 5.0 in November of 2000. To put this in prospective, this means that ASP hasn’t had a major update since before the September 11th attacks. With a technology product this is obscene. How could something nearly 10 years old still be relevant? The short answer is it cannot. It has been replaced with a much better and more powerful technology, ASP.NET.
I often come across developers still working with classic ASP and it makes me shudder. Unfortunately, customers working with these developers don’t realize how outdated the language or the server software running it often are. These customers also don’t realize they may soon be stuck with this developer because they will be unable to find other companies interested in supporting their outdated website. If you’re an ASP developer I encourage you to think about your customers and the value you are providing them. Please learn ASP.NET, it is not that different from classic ASP in many ways. I am sure you wouldn’t suggest your customer build a website that only supports Internet Explorer 6 so why program it with a comparable technology. Selling a customer a new website programmed in classic ASP is like selling them milk that expired when Britney Spears was a teen sensation and Bill Clinton was President.
If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.
Comments
Regrettably, I am one of those remaining “Classic ASP” developers at my day job. Our product is a sprawling web application, an example of “worst practices”, full of duplication and spaghetti code.
I haven’t been successful in selling management the idea of a rewrite. For the most part, I agree with Chad Fowler on avoiding The Big Rewrite, but how do you do that when moving beyond a “legacy” environment, towards a new platform (.NET, Rails, etc)?
There are select cases were ASP is still relevant:
a) Legacy code which is better served to maintain than rewrite. There are plenty of COBOL applications out there for this reason as well.
b) Low traffic, or basic quick/dirty applications, especially where the developer already has a more technical skill set with classic ASP than any alternatives.
Is ASP.net a more sophisticated language progression than ASP? Yes. Does it offer more features and better functionality? Yes. Does the customer give 2 you know whats about what language their project was programmed in if it meets all their requirements? No, they don’t.
Try to keep an open mind and don’t make such blanket accusations about a technology just because you prefer it. It still has plenty of business cases today, and will for some time to come.
Your argument could as easily be “COBOL” is dead, or “C” is dead, or “Perl” is dead. Sure, there are better languages out there, but obviously it doesn’t provide enough reason to completely cleanse yourself of it if there are business requirements which can be fulfilled by it, potentially by inexpensive developers who never upgraded their skills.
what’s old is new again. it seems that classic ASP held out long enough to see asp.net MVC which seems to be reborn as ASP++ or ASP#. why encourage them to move on ?
mikester
I think that MVC its the perfect opotunity for people with Classic Asp skills to learn and upgrade their site.
If I had a developer on my payroll who knew COBOL better than anything else, and I was in the business of bank software, I certainly would have them develop in COBOL.
It’s a business decision, think about it in dollars and cents and try to separate yourself from the religious debate about language preference.
Say I am a business owner, and I employ developers, should I jump ship on my developer’s best language set just because there is something new? Especially, if my ‘legacy’ language meets and fulfills all their system requirements (Speed, Reliability, Formatting, Durabiliy, etc)? Absolutely not, especially if I can continue to meet my requirements for my customers given my current language.
I won’t be developing any million hit/month websites with ASP, but there are thousands of small businesses around that meet this requirement.
I’m an ASP.net developer, and I’m not saying everyone should drink the ‘legacy code’ kool-aid, but I am saying that business decisions to use certain languages are based on fulfilling customer requirements and requiring minimal man hours and cost to the developer.
I agree with you about newer languages offering more features, but where I disagree with you is that they should be used in ALL cases.
@Kyle I have to disagree.
The talent pool with which to draw upon to maintain your VBScript / COBOL / language x system dwindles over time. It is in the business’s (and thus, their clients) best interests to stay current.
For such situations, I wouldn’t advocate walking the bleeding edge, but to at least upgrade to the current state of the art. In the short term, there’s an initial investment cost (learning curve, infrastructure changes, etc), but will secure you for the near-to-long term. At least until you have to do it all over again
Kyle what happens if your COBOL developer gets hit by a buss? Ed C. is right, think about product you’re selling and its long-term value. Sure developing this job in ASP might be more profitable today than if you tried to do it in .NET because of current knowledge. Eventually if you don’t upgrade your skills you will become obsolete and so will your company. You have to plan long-term in this business for both you and your customer.
Don’t forget that because ASP.dll is still available to IIS7 it will be around for a very long time. Though ASP.NET MVC is opening doors it is not the MVC itself that is going to move people from ASP.dll but the tools that are needed to make ASP.NET MVC work. These are the items that were missing in the beginning of ASP.NET. They are what Microsoft overlooked when trying to force adoption of ASP.NET and now they are coming back to them and delivering.
I assume that the author is referring to new projects. I agree that ASP classic is as out of style as the handbag and dress on the woman in the picture, but it might be an equal injustice to quote a client a price for rewriting a site in ASP.NET if it already meets their needs. We have a number of sites running on classic ASP and ASP.NET 1.1 simply because the client won’t pay for a rewrite.
I agree with Both Ryan and Ed C. You have to stay fairly up to date with current technology and trends, No one now days wants a website/web-app that looks old, they want new fresh design & technology, thus means using new technologies or frameworks to get the result.
Staying with an old technology is good for those older systems to keep them up to date yes, but what happens if your client who only had their system developed 6 months ago, comes back, ask’s for something new that your old technology can not do? or the developer on staff who worked on that project has left, and left you with some old spaghetti ?
I think, yes if you know an old technology, keep it in your back pocket, play with it when you need to, but keep up to date with what is going on around you, + there is better support for the newest technologies than the old…
BTW: Ry – Love the Brittany Pic, but we all know you still Idolize her
@Kyle: Does the customer give 2 you know whats about what language their project was programmed in if it meets all their requirements? No, they don’t.
Sometimes it’s to the developer to do what’s best for the client in the long run. The client might not care what language (or in this case, framework) it’s written in–but they’re not (necessarily) expected to understand why it’s important to care.
I see nothing in your article which explains why ASP.NET is better.
for those that dont know or care anything about ASP this was a pretty inside post.
Why not state the differences or something. Just because its old doesnt make it crap.
JSP is old (and crap) but you say its better than ASP.
Skilled ASP developers easier to find 2 to 3 years ago? More like this article should of been written 2 to 3 years ago. It’s been like 7 years since I’ve touched it.
Instead of .NET I think PHP would fit better for an ASP developer.
It’s based on the Request/Response model that most web frameworks/languages support an the one that ASP.NET tries to hide.
About universities teaching or not this language, I think it’s irrelevant, the idea behind a university education is to be able to prepare yourself, in this particular subject (computer programming) it’s not about the language that you are teached at school, it’s about the ability to learn languages.
Why would MS fix something that isn’t broken? I haven’t done much classic ASP in years but I do still use it to load native code into IIS.
I hate .Net and I wish it would die. And I’m not some luddite who’s never tried it. I actually like the .Net syntax, especially since 3.5, and the new frameworks are neat, but the underlying technology and the development environment are too slow.
I’d rather watch a video recording of the grass growing on my front lawn. In slow-motion. And my front lawn is concrete.
In the meantime, I’m reduced to coding .Net in Scite or Vi. I might as well be coding in php.
Is there noone at Microsoft competent enough to write an IDE that doesn’t take 6 seconds to switch between files in a large project?
As long as MS will keep it working in future IIS versions I’ll keep building NEW sites with it. Not a single ASP-related problem since starting with it in 1999 or so.
We did a couple small/medium works with ASP.NET (1.0).. but they were so problematic that we ‘back-ported’ them to Classic! And they’re still kicking.
MVC in web sites ?? I’ll enjoy my spaghetti, thank you
best,
Drex
I hear ya, PHP outdates them both & perl which is still used on /. is as old as it gets when it comes to server side (although I admit, I have written C++ CGI) and PERL 6 announced 7 years ago is still nowhere in sight.
I just feel that ASP develepors are missing although the cool stuff like server controls, master pages, a bangin’ IDE, etc..
Oh and MVC does notthing but take all that cool stuff I mentioned and throws it out the window so they can implement a 30 year old method instead of of a 5 year old one (.NET 1.0/1.1 didn’t have master pages). Yeah, that makes sense. Although I still think if one were to write an article like this it should have been done awhile ago.
Although I kind like the idea of maybe forking ASP to give it caching, etc… and a #Develop fork for it too if there really is allot of people using it and it has not become a COBOL.
I partly agree with you. I’m a asp.net developer in China. In China, lots of asp developers are coming to asp.net like you, but there are still lots of people and project (systems) focus on asp. I think asp is dying, not dead.
For the sake of God don’t mention PHP in your article please. I’d rather like to see people writing C/C++ modules that write static HTML to disk to be served by the web servers than lousy / injectable PHP scripts.
Lol, does anyone realize that asp.net pro magazine’s website is still legacy asp? Talk about ironic. .NET rules!
Doesn’t seem like they are as it’s been like this since their inception. You would tend to see incremental migration, if that were the case. But, if it ain’t broke…
I not only taught classic ASP at the college level, I used it every day of my life since its inception. I can’t remember that last new application/web site I wrote in classic ASP but, unfortunately, I still have clients who cannot afford to have their entire sites re-written. So, if I add an entirely new feature I use .NET. If I am asked to re-write a site I would recommend PHP, which I find to be a great language and can’t believe that I ignored it for so long. So, I use whichever tool is necessary for the occasion. Hopefully I get to use the latest and greatest but that isn’t always possible. I am glad ASP is dead (even though it paid for my house). Now I let the newer languages pay the bills. I think the bigger problem is developing for older browsers. The back end technology doesn’t affect the front-end user the same way that using nested tables does. I would guess that most (and I mean most) users have no clue what ASP, .NET, PHP, etc. are. But I fired up NN4.7 yesterday and was horrified.
I still work with Classic ASP. Usually working on stuff that was built years ago. It works, and people are always coming out with AJAX components that work with it, so its still able to keep up with the way the internet world is changing when clients want new features. I’ve had lots of instances when working with ASP.NET where I’ll waste an entire day trying to fix a single bug. I’ve never had that kind problem with Classic ASP; its just way too simple. And my customers have never complained. They just want their website to _work_.
I’ve done my share of classic asp, as well as asp.net. Where did the old classic asp programmers go? Did they die? There should be just as many people capable of programming classic ASP now as there was 5 yrs ago. I agree that there will be no newbies but how could there actually be less. I guess they may choose to use asp.net or php but they are still out there.
I am a Classic ASP developer. I agree that .NET has a lot more to offer, but that brings up a question, do I really need all that stuff?? It is like “Everybody let’s throw out your tvs, because HDTV is here!!” Come on… If there is no signal anymore that my old tv can handle, I might say ok, what the hell, get one… but until, I can watch those few stupid shows I like and it makes no difference if it is in 640×480 or 1900×1080 pixels resolution…
The goal that has to be accomplished is usually very simple in my case, and ASP can still cover these needs.
Since I have a huge workload, it is tough to switch to another language when you hardly have time to finish your new applications, especially when you feel safe using classic ASP. ASP is still relevant, my sites works and my customers are happy, that is all what counts… I slowly move on to new things, because eventually it can happen that it really dies but I would not say that ASP is dead. Nothing is dead until it works! When you develop something you want to get from A to B… Nobody cares what you did on your way if you got to B. I still see that 80% of my customers has no clue about internet technologies, it even gives a hard time to them to find the address bar in Internet Explorer… I choose to live in the present time not in the future, but I try to open my mind to newbies as much as my time let it for me. If my sites ever stop working then I will be forced to change, but luckily we are far not there yet. Classic ASP is safe, because not many people works with it (like php) and very simple to code, I know exactly what my program does. With .NET it is a whole different story… I guess if I will be a .NET expert one day, I will have different feelings, but that will take for years and for now, that is a too big fish for me.
The whole world is trying to push people to change, buy new hardware, new software, learn new technologies but it is impossible that fast. That is why there are such big need for .NET developers now… there are still not enough… and tomorrow they will bring out something new so then should you drop all your things again reset your mind and start everything over? I do not think so…
so, how much did microsoft pay you to write this babble ?
I agree with Ayac – Classic ASP has made a comeback with serverside jscript and libraries like jquery for clientside
With jquery you don’t need the complexity of .net which is far, far, too complex to learn.
Gentlemen, Gentlemen, Gentlemen,
First of all, if Classic ASP was so bad, why did President Obama use it for this campaign website?
Classic ASP is here and will always be, but yes it does have limitations. Let’s get down to brass tax, ASP, PHP, and JSP (maybe) can give you the quickest bang for the buck. If your a business owner, what do you look for?
Don’t get me wrong, asp.net is awesome (i have experience) … but it’s a ton of build/server processing that is unnecessary. but hey, that’s MS for ya.
The truth…..
Classic ASP programmers don’t want to change because the language can get them everything they need!
.NET Developers (the good ones) don’t understand that programming time and the costs reverted back to the company.
Ladies and Gentlemen.. this is a no brainer,
All ASP sucks. Classic and .NET.
And Obama did not use ASP for his sites: Most of his campaign websites where built on Drupal…which is PHP.
You are all holding on too tight.
I am in the middle of that problem. I am trying to maintain and old site which is html, classic asp and try to re-write in asp.net. I think the way is when ever there is a chance to introduc a new feature do that in asp.net and remove part of classic asp or htmal. My boss do not want to rewrite all html and asp pages as it may affect google ranking and other links from other sites. (Google gives higher rank for old web page, so it is important to keep the old pages.
Classic ASP coding can be done the bad and the good way. The same is true for .net and php.
Coming back on the Ryan’s point: Is ASP dead? Microsoft added support for Classic ASP intellisense in Visual Studio 2008 SP1. So it’s not true that ASP is fading out. It *just* keeps coming back. And it will for many years to come.
I develop QuickerSite webCMS. It is a classic ASP application. I have NEVER received a request to convert it to .NET. However I have had many requests to convert it to PHP.
I wished classic ASP could be extended with some features, like handling images, zip files and pdf files. You need 3rd party components to get this done in classic ASP.
Classic ASP developers are left alone by MS. So we should gather and make sure to create new applications. Because the more we code, the more code we share, the more users we will get. And the more users, the bigger the chance will be that Microsoft reconsiders the future of ASP.
I agree with Pieter, that “we should gather and make sure to create new applications. Because the more we code, the more code we share, the more users we will get. And the more users, the bigger the chance will be that Microsoft reconsiders the future of ASP.”
I enjoy the beautiful simplicity of ASP. I find it easy to learn and fun to use, and now enjoy integrating Ajax into some of my code. I will switch to PHP if I have to, but I have no plans to learn NET.
@Lil : Could you please tell us why you have no plans to learn .NET?
After all switching to PHP would also require learning..
I’m use classic ASP from a long, long time. Also, i’ve begin use PHP since 2001 and convert a lot of my projects from ASP to PHP. What can I say, there is much, too much tasks which can be fine executed via ASP – much simplier and easy. Also – with extended support from new version of IIS – mean security, etc. – my clients feel OK with there quick and short ASP tools. Well, PHP provide to me much more power and ASP provide to me speed (for development) and simplicity.
My reply to Andrei: I continue to enjoy coding with Classic ASP very much and even more so now with Ajax. I have begun using PHP, and am pleased to find that it is similar enough to Classic ASP that it feels very familiar to me. There are some things that I find to be even more simple with PHP. I am not interested in learning NET at this time because if I’m going to take the time to learn a different coding technology, then I’m going to go with the one that is open source and can be run on Linux servers.
On Google this day:
allinurl: “asp” 9.210.000.000
allinurl: “aspx” 8.090.000.000
allinurl: “php” 25.270.000.000
If Microsoft stops support for VBScript and other lightweight scripting-languages in asp they will loose 9.000000000 pages to php. The rest will migrate to .NET
Classic ASP for ever!
It is great to read all these girls and guys, you made my day! Now, I am going back to my “old” ASP application…
Right now, it is not hard to find 3rd party components for Classic ASP and even if these are not free, most of the time they are not very expensive at all. It is my general experience that many times 3rd party products are a lot better than the original Microsoft ones, just think about Windows and its user friendly tools…
By the way, it is a nice thing to keep PHP and ASP available on the same box, and use the advantage of both technology.
Keep up coding!
I myself dabbled with ASP in 2000. I then went to college and studied other areas of computers for years. When I got back into web development on a serious level, it was obvious PHP had emerged as the blu-ray of languages. And .NET had been around for a good minute. So my knowledge of classic ASP has died. I now do a lot of xhtml/css/javascript static sites, and I use Drupal or WordPress for everything else. I always find myself dealing with hosts that use Linux+Apache, and support for ASP/ASP.NET is usually nonexistent. So my experience has all but evaporated. Bummer, though, cause a lot of “web developer” jobs in my area focus heavily on Microsoft technologies. So they usually pass me up when I apply solely because I’m not an ASP pro. Shame, because I agree with some people here. Don’t limit yourself. It’s a disservice to your clients, and a disservice to your company for not tapping into so many widely used solutions. Use ASP all you want. But don’t ignore things that are highly useful, like PHP.
This may be of interest: http://www.prweb.com/releases/dmxready/asp/prweb3955004.htm
@elmio
I know of an ecommerce system which uses an alternative to “.asp” as the file extension but is actually classic ASP vbscript. This means all the customer’s shops are ASP – but won’t show up as such in google searches like yours. (sure many PHP sites also don’t have .php in the url – but I’m just making the point that there are even more classic ASP sites in existence and under active development than people may realize)
I suspect there are many other ASP sites out there which do this to ‘hide’ the fact that they use it.
I really think Microsoft’s big mistake regarding .NET was not providing an easy way to mix .asp and ASP.NET – thus allowing piecemeal migration. You can do it.. but you seem to have to jump through hoops to share session state. It’s such a hurdle – that it’s just as easy (actually easier) to move to PHP.. and I believe they lost a lot of their developer-base that way.
If MS were smart – they’d reinvigorate ASP with a focus on Javascript. I predict that serverside javascript systems such as node.js will become very popular. javascript on both the client and server sides seems the way of the future to me.


All I can say is that image is freaky creepy. It looks like her torso is on her legs backwards, or vice versa (her feet/knees are pointing the other way)