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.
ASP.net MVC is interesting, however, not as agile as classic ASP.
The fact is that ASP was and still is a scalpel while .net is a mallet. There are thousand s of built in objects to call. In ASP if you want an object, you have to make it…. Functions, subs and classes etc.
The impression I get is that Microsoft tried to kill off classic ASP in favor of .NET because .NET was their platform which allows more people to play. Developers, coders, programmers in various languages, who previously were not web designers/developers.
They will never be able to kill it off, so long as there remain developers who choose to write their own code, their own tools and objects, rather than simply call one ready-made by Microsoft.
Viva ASP!
Yeah, I’m pretty much part of that “if it ain’t broke, don’t fix it” crowd. I’ve worked with Classic ASP for a while — not as a hardcore programmer, but as a softcore “modifier” (I’ve built several websites using DMXReady apps and modifying them as I needed…)
I think a big part of the whole debate is the “cool” factor. Programmers have followed that for decades now — programming in PHP is cool, programming in Classic ASP is not. I suppose part of that is because Microsoft withdrew its support.
But really, so what? Languages don’t always need upgrades. You can still do everything you need to with Classic ASP — as someone pointed out above (in a roundabout way), it is perfect for small businesses because it is an easy language to work with *and* it is still capable enough to handle what small businesses need.
Classic ASP is not going anywhere anytime soon. Too many big websites — including government sites — use it for it to be dumped. Besides, with today’s cloud servers, there’s no reason to not support it.
And as long as Classic ASP is around, there will always be programmers somewhere who will work with it.
~Graham
Agreeing with the dude above and against the fanboys of .NET ballsack lovers, this article is ridiculous. There are too many million sites developed and running in ASP, even today. Why would you want to be limited by what poppa wants you to be able to do, instead of having total control of how your site works?
Let me break this down for you. I can do everything you can do in .NET and more in Classic ASP. Why you ask? Because in Classic ASP, I have 100% full control of the code execution from start to end. Will it take more code? You bet it will. That’s the price you pay for having full control over your code’s execution.
You little boys fresh out of college that only ever learned the shit that Microsoft likes to call .NET just suck at coding. Don’t blame us real programmers that know how to code with out a WYSIWIG editor.
It amazes me how often I hear about some snot nosed little .Net brat not being able to write the simplest of code in Classic ASP because the Classic ASP engine doesn’t think for them. Well news flash. Classic ASP requires actual programming skill. Shocker!
Now go back to your WYSIWIG language, and shut the f*** up.
@Classic ASP Programmer: I’m totally agree with you. classicASP is a core program language and require logic and fundamental skills, just like PHP i say. So, i still use classicASP in my projects, still have clients who want ASP applications. And I believe that won’t be change soon.
we had our law firm website written in classic ASP some 3-4 years ago by my decision, because of some old website pages that needed to be integrated with the newly designed site. reading these threads made me anguish at first that perhaps soon i should start changing things over to PHP5, my preferred language. but now, i nod with approval and ascent that asp might be the thing that’s not broken that doesn’t need fixing! what time frame do you guys see as being a date/year where for sure a 250-person company should convert their website code to something more current such as the latest PHP version?
@Dave I don’t think there is any reason to run out and convert your website from ASP to PHP5 if your current website is working for you and you have a stable hosting environment. I do think the lack of language patches and updates is something to be concerned about but if your website was well coded in the first place you should be fine. What I am really suggesting in this article is that it wouldn’t make much sense to build a brand new website in ASP since it has been discontinued by Microsoft. I learned web programming with ASP and it is a good solid scripting language, however, at Zipline we will only maintain ASP sites we will not create new ASP based websites even if it were requested. We would use ASP.NET (C#), PHP5 or another currently developed language so the website lifespan is maximized. Many have disagreed with me but I stand by my opinion that it is irresponsible for web developers to charge customers to create websites using antiquated and discontinued technology even if it still works.
Since my previous comment here, I had a good reason to learn PHP (inherited a site already coded in it) and found that because of its similarity (in many ways) to Classic ASP, it was very easy to learn.
Nowadays, I usually do a new project in PHP. Overall, I am very pleased with the speed with which PHP pages are rendered, and the many inbuilt PHP functions and amazing availability of some excellent open source code.
However, there are still a few things that I personally find to be easier with Classic ASP, so I still use it often to complement my PHP applications.
I just got a new job and asked to redesign the User interface of my companies website. It’s written in ASP. I just found it’s not written in Asp.Net. Am not a core programmer and now trying to learn Classic Asp so i can accomplish this feat! I do agree, if your looking at the long term to avoid developing new websites on classic asp but if the old website is doing well on classic, then by all means keep it so.
However am surfing the net for good fast tutorials to get me started. Any help would be appreciated.
I still develop everything in Classic ASP. I have fiddled about with asp.net MVC etc, but still find Classic ASP a fine tool.
If you need help your best port of call is experts-exchange.com. They have a classic ASP section which will get you up and running in no time. I regularly answer questions… time permitting. Best regards
A
Well… i read the article and many of the posts above, which have happened over a couple of years…
here is the thing… I think it is a harsh statement when telling a developer to give up programming like IE6 if they are unwilling to move to .net.
frankly, for the small, innocuous work that I do, I see no reason to build it in .net. Further, I love the simplicity of classic ASP.
I am all for growth, change, evolution, and taking on the new best thing. but, there will always be a new best thing.
if you are building a big site, lots of traffic, etc., yep, I am fully behind the change. but, if you are building something small, with very little, or no need whatsoever to worry about the masses, then, I believe ASP is just fine.
truth be told, I have not adopted well to .net, but that is probably because I am not a developer for a living, and I only do small projects for fun on the side. I am not the smartest guy when it comes to development and often rely on the teachings of others.
finally, what I think is most important, is not to concern oneself with the change, or lack there of in others, but, what works best for each individual circumstance.
I hope ASP stays around for a long time.. at least long enough for a solid, simple replacement (and no, I don’t mean PHP, as it has its challenges).
Best
DG
I’ve developed dozens of large and complex sites in Classic ASP (using the jScript programming language, not VBscript). At no point did I feel that I was missing anything. I can easily incorporate all of the front-end bells and whistles found in .Net sites, AJAX, and clean, modern interfaces, and my code is quite tidy.
In fact, I still have some major data-driven community sites under development in Classic ASP, and don’t feel any need to switch them. I don’t think I’d ever consider moving anything to ASP.Net, which I find to be cumbersome at best.
Thanks to WordPress, I’ve found myself working with a lot of PHP lately as well. I feel that for a Classic ASP developer, especially one working in jScript, and coding with a text editor, making the move to PHP is a much smarter choice than trying to grasp the complex and slow Visual Studio IDE and ASP.Net.
I’m happy to see I’m not the last classic ASP developer. I’m a free lance and I’ve got a lot of asp sites developed in asp, I can’t rewrite them all (who pays me?). Now I write in PHP an classic ASP; not .Net, please! it’s too cumbersome.
To the ASP developers on this page who think they don’t need to change, you do not know how to write software and obviously know nothing of software design, it’s likely you don’t know what a framework is and have no understanding of the advantages OOP brings.
You’re not BUILDING applications, you’re just throwing mud at the damn walls
Mark
Take your head out of the sand.. I started developing oop in the early 90′s using c++. You’re mixing apples and oranges.
I doubt anyone would disagree for robust, intense sites, classic asp is no longer the best route, but for simple sites, easy to dev, maintain, implement, and promote, there is nothing wrong with the ease of c asp.
It’s funny when people think they have all the answers. Instead of listening to perspective, they just insult those who say the opposite. For me, that is a true sign of weakness.
I’d do a code challenge with you any day of the week and twice on Sunday’s, using any language of your choice, and I’m certain, I can hold my own.
So, I’d say, please keep your comments constructive, or to yourself
As long as .ASP still run on the latest Microsoft IIS server, can talk to MSSQL servers, and I can deliver what the client wants in the timeframe and budget they have, for me ASP is still alive and well. Been doing this for 12 years now as an independent contractor and I’ve not run out of jobs or clients yet. Take that!
Clients don’t care what language their website uses under the hood, as long as it performs the job. End users also don’t care either, they could care less whether your website is PHP, ASP or .NET if it delivers the service they came for. And heck no, ASP is not just for small websites. I develop and maintain database-driven websites that serves several millions of user sessions every year… and doing it reliably since 2000. Heck, now we even have mobile sites running on ASP with MSSQL backend. The iPhone/iPad/Android user could care less that I used .ASP for our mobile site. As long as it’s running and functioning correctly and delivering the news/stories they came for.
For me, CSS, media queries, HTML5, jQuery, and other frameworks just extended the life of .ASP. Business logic and database access using ASP, and front end/user interface using jQuery/HTML5/CSS is still a winning combination.
(Indian programmer)I have been coding in ASP from 2002 and .NET from 2006, Currently our Client has Thirty two ASP and Six .NET applications, they don’t see any differences in their Apps. Neither do I.
Microsoft has preached newbies to hate ASP and love .NET. No wonder ASP haters learn a whole lot of jargons , bells and whistles to do something as simple as loading a table with Data and paging it.
Once a junior member in our team asked our Client if they need to re-write their code in .NET. Clients were furious and even accused him of eying a huge profit on re-inventing the wheel.
Yes .NET is better but you don’t need .Net in all your new Apps , I mean some of the Apps are too simple where you don’t need those .NET features.
Re-writing time tested ASP apps is a time-money killer, and can land you in trouble with new bugs.(A hair dresser who has no customers can shave a cat, but is it worth his time?) I have earned (and still earning) a lot of my fortune i made thru ASP and VB6, ASP is still my bread, our company supports a huge number of ASP apps. Now with recession nobody has the money to re-invent the wheel with ‘.NET’
To all ASP developers
Classic ASP is just that, classic. Does it still work? Yes. Is it still in production environments? Yes. Is it a good solution to implement moving forward? Depends.
I have been a professional developer for 15 years now and I started my career developing in ASP. I actually resisted moving to .net as long as I could because I thought that it was overly complicated. It is now second nature to me.
The original purpose of the article was the opinion of one developer stating that you should not develop new sights in classic ASP for all the reasons that he has laid out and while I agree with him, I will capitulate that you still need to do what is best for you.
If your expertise is in classic ASP and no other language, then you are going to be more efficient implementing an ASP solution and there is nothing wrong with that. By all means continue to make your money.
To those who piled onto Mark. I will say this, classic ASP does not lend itself well to common OOP principles such as test ability, single responsibility & seperation of concerns, not to mention more advanced aspects such as interface segregation or Liskovs substitution. ASP handles these things with includes which can get out of hand very quickly and it offers no support for domain objects or automated testing.
Can you program all these things by hand in ASP, absolutely, but why would you want to? It would take forever and we all live by the deadline.
MVC is the next evolution of web development on the Microsoft platform. I say this not because I am a fan boy, but because its true. What I find interesting is that there posters here that say that because I use a tool like Visual Studio that I am somehow not a “real” developer.
I use to wear the fact that I did all of my development in a true text editor like a badge if honour, but the simple fact is that I don’t need to anymore. I can still deliver robust applications in a fraction of the time while still implementing good development practices like Repository & Unit of Work patterns.
In conclusion, if you want to continue to develop in classic ASP by all means that is your right, but going back to the original reason for this posting, don’t be surprised if one day down the line you get the rug yanked out from under you, because the one thing Microsoft is good at is putting to bed older technogies.
Novell
By all means, let me know how you guys feel about it.
I am amazed at everyone who is defending classic asp. VBS is a joke of a language, and does not even support basic things such as if statement short circuiting. Its riddled with boneheaded design decisions such as IsNumeric(empty) returning true and an inconsistent syntax (wend to denote end of while loop block, next to denote end of for loop block). It doesn’t even allow you to determine if an include file has already been included, leading to include hell.
Everything about classic asp is terrible. For everyone saying .net programmers can’t handle a real programming language where you have to code everything, that’s just dumb. First off, VBS is not a low level language. C is. And C btw, is vastly superior in design to VBS. VBS is just bad. Perl, Php, Python are all languages where you can have full control of the lower level details, and they are all better in design, functionality, and power when compared to the joke that is VBS.
I once worked at a company that did classic asp. Never again. Here’s the biggest danger of working on classic asp, any company still using an obsolete technology is going to have a spaghetti code base. Because if they didn’t have a spaghetti code base, they would long ago have migrated to something that didn’t suck.
I am still laughing at everyone defending this terribad scripting language. I hate it so much I even wrote a longer rant here.
http://jieyanghu.com/category/asp/
@mark
ASP is coding. Real software development.
What .NET guys are doing is using WYSIWYG form designers and code generators – both of which are inherently inefficient. That is why .NET never performs as fast or as reliably as ASP.
Website broken this morning? Did one of a hundred .NET Framework updates in last nights update change something? Not a problem is ASP. It’s stable. very stable.
You can concoct all the scenarios you want, but in every one of them, in terms of performance, ASP will win every time. That’s because we code the thing to exactly the product we want. If that means pixel level screen adjustments, then we make pixel level screen adjustments. Try that with your WYSIWYG form designer. When your webform renders, you are lucky if it’s “good enough” to get by. And if it’s not, there’s nothing you can do about it. I mean, really, literally, nothing.
ASP contains no unnecessary fluff or nonsense. Every byte of code there is there because the developer wrote it. Again, not so with .NET. Your code is bloated with all kinds of excessive baggage that comes along with whatever “plug-in” framework component you are trying to use, and you have no direct control of anything. In ASP, I can at least chose not to incorporate a jquery component – or if I do, and I do not want it’s excess baggage, I can refactor the code. You can’t refactor the .NET Framework. You either swallow the whole pill, or you don’t use it at all.
With ASP.Net, if there isn’t a .NET framework component that does what you want, you are stuck. In ASP, if you want something that doesn’t exist, YOU CAN WRITE IT YOURSELF.
Using a code generator and then calling ASP developers “non developers?” That’s kinda lame. And of course we know what OOP is. What do you think the “O” in ADO stands for? You think we do not know that the “open” in “rs.open” is a method invocation? Or that the “.AbsolutePosition” is an object property?
I’ve personally NEVER thought to myself, “OK, I’ve got the database results, I’m on the correct row, the HTML has been output… The TBODY has been sent, …. DAMN! If only I could write this data right here.” In ASP, I can ALWAYS write whatever I want “right here”.
Furthermore, implementing third party libraries such as jQuery, node.js, ext.js, and various javascript libraries is FAR easier to accomplish in ASP than in .NET. Again, the reason is because ASP developers are working in CODE, and .NET guys are working in form designers with limited access to code. Unless your form designer gives you an event call to work with, “you aint writing no code there.” You’re just gonna have to wait until an event handler opens up for you to get in and code.
I code any place I need to because I have complete control of the code and it’s execution.
Now who’s the “real developer”?
Kirby your whole point, which has been repeated by other classic asp developers before, is rendered moot because you can simply write a generic handler (.ashx) and parse the raw request (body, headers, and all) and format the raw response (body, headers, and all) to your liking in C#. No GUI, no components, just raw bytes. And I would much rather write a generic handler in a superior language like C#, than to write another line of VBS, which is the worst joke of a scripting language of all time. To even call it a scripting language is an insult to vastly superior scripting languages like Python.
So what advantage does VBS and ASP have over C# and .NET? Oh that’s right nothing. Anything you can do in VBS you can do in C# but better.
Besides, if we take your argument to its logical conclusion, then programming web sockets in C is more manly than ASP, because you are dealing with the low level nitty gritty details. But hey, forget C, that’s too high level, what about Assembly?
Programming for the web is not a beauty contest. It’s about fulfilling client’s needs and desires with the environment you are fluent in.
VBScript might be a primitive scripting language, you can’t deny that it’s being also used in Office by milions of people and not really close to die yet.
Classic ASP let you mix scripting languages, so you are free to switch to JavaScript anytime in your code if you are stuck with VBScript (there are also some python- like ActivePython – and even ruby scripting engine available).
JavaScript dominates the browsers’ world, which means that you can leverage and reuse you code when using it also on the Server Side with CASP. This is an advantage that few other environments can be proud of.
And if one day you need to change the architecture (from multi thread single sessions to an event loop, real time and scalable one), you can even leverage your knowledge of scripting language by building real time applications on node.js (with iisnode for a perfect inclusion in IIS).
I would recommend to CASP developpers not to switch, but first to make JavaScript their main scripting language for their favourite server side environment… and to have a serious look at node.js to get new skills.
Good article: http://anderly.com/2012/07/06/why-microsoft-developers-should-care-about-node-js/
Maybe the real downside of CASP is that we aren’t proud of the environment we use daily, and this should change if we want Microsoft to continue to support it in next Server updates.
Let’s be proud and continue to follow a different path.
I have been putting businesses on the web since 1996. I know around 14 different programming and scripting languages. For years I sold a corporate intranet I developed in ASP online. When ASP.Net came out, I immediately started redeveloping my software in it. Not only did it take twice as long to develop, but the code base was huge in comparison. For every line of ASP, I had to write 3 to 5 in ASP.Net. If you just looked at the source code created for each page, it had at least twice as many lines. I developed it in 1.1 and, when 2.0 came out, my nearly finished project would not compile for 100s of errors from library changes. When I finally got it converted to 2.0, I had to close my business a few months later. Where as my ASP version was wildly successful, no one bought the ASP.Net upgrade that didn’t want a refund because no one could install it and get it to work at their place of business.
Over the years, I have programmed 100s of eCommerce websites, social networking-type sites and complex online applications for very large, industrial companies in ASP and only once have a come across a time that classic ASP could not handle something well…and quickly…which was dynamically resizing images, which I used PHP to do.
Overall, I think ASP.Net was great when it came out for people who were hardcore programmers in c or c++ or newbie programmers familiar with Visual Basic–Visual Basic/Visual C++ being what it was an upgrade to…not classic ASP. And it sure is easy using Visual Basic’s interface to throw a form together for people starting out now, so I can see the appeal there. But I can throw a fully functional, complex, tested and secure website together from saved pieces of classic ASP code in less time it would take to create that form in ASP.Net. And, not only will it run faster, I could save it to a floppy–if those antiques were still around–and copy it over to any Windows machine and have it up and running in 5 minutes…assuming the database was on another server.
In closing, there is a reason that Windows Server 2012 still supports ASP. And, when I have to finally lay ASP down to rest, it won’t be ASP.Net I pick up again, I will turn to PHP–its competitor turned more popular cousin.
ASP is dead. Long live ASP!
(Sorry to my old college buddy who works at ASP.net–the website.)
I’m MCP since 1998. Very disappointed when Microsoft kill ASP Classic + VB6. We build big ERP with ASP classic 6-7 years ago for several clients, and now it’s dying. Yes, it’s getting harder to find a new ASP classic developers.
Not interested with ASP.NET. Even simple apps resulted a ton of messy code, hard to be maintained and customized.
Really disappointed and don’t wanna get into MSFT trap twice. For this reasons -sadly, no other choice, for future project- I move out to PHP. D*mn you MSFT.
ASP classic rocks!! Good bye ASP classic =(