views:

848

answers:

14

There are a lot of webs still using classic ASP instead of ASP.NET but that is not the question - "never change a running project".

The question is if it is still a first choice as a base for a new web-project or would it be worth to switch to ASP.NET? Would you recommend a classic ASP programmer another language to switch over? There was no single update to classic ASP since it first release but a lot of companies are still using it for new projects. Deservedly?

+8  A: 

In my mind, there is absolutely no reason to use classic ASP compared to ASP.NET Webforms or ASP.NET MVC.

Unless you need to integrate with existing classic ASP applications, since some things (notably session) are not compatible across app boundries, leading to creative workarounds (WebServices running on your localhost...yuck).

FlySwat
+1  A: 

I think its high time to switch over to Asp.net. The better object oriented way of asp.net will definitely help you to reduce code management night mares.

Vijesh VP
A: 

well I honestly wouldnt... With asp .net you can take advantage of the .net framework, and object oriented programming... That alone is good enough reason for me to use asp .net instead of classic asp...

RWendi
+1  A: 

For any remaining ASP holdouts, I'd actually recommend jumping ship to PHP. It's a lot more like ASP than ASP.NET, and there's no shortage of new work in it.

That being said, I greatly prefer ASP.NET (both MVC and WebForms) myself - but, I left ASP development about 7 years ago. ;)

Mark Brackett
+9  A: 

While I would personally never willingly choose to create another ASP project over an ASP.NET project, the single biggest reason to do so is "skillset". I'd definitely recommend an ASP developer pickup ASP.NET, but if there is a project needed "now", go with what you know. Then learn ASP.NET before you have another project. :)

ASP.NET has a number of improvements over ASP, but we (the collective former classic ASP developer community) created a number of good applications using classic ASP.

daughtkom
+2  A: 

I'd be very hard pressed to recommend using "classic" ASP for a new project, but, as with any new project - it should always be about choosing the tool that's best for the job, rather than using "Tool X", just because it's:

  • newer
  • better
  • the "latest thing"

If, for example, "Company X" (who are a small company with 20 employees) needed a new web application for their intranet for logging holiday/leave requests and the intranet server was an ageing NT4 box, Classic ASP would be the way to go. I would make the recommendation that they upgrade to a newer machine that could handle a supported server O/S such as Win2k3, but it may well be the case that they simply don't have the budget/need.

Rob
+6  A: 

Coming from a classic ASP background I had the same questions. 3-4 years ago I took the route of moving towards ASP.NET/VB. I can tell you that the cross-over from ASP/VBScript to ASP.NET/VB is little to none. I was actually quite frustrated with the whole .NET platform for the first few months (more like the first year!) and kept rolling back to classic ASP.

In the long run, I ended up starting from scratch and picked up ASP.NET/C#. Oddly enough, I felt that the syntax of C# was more natural, even though my background was in VBScript!

For regular web development, ASP.NET is like using a sledgehammer when a simple ping hammer will do. However, the sheer power behind the .NET platform makes it invaluable in an enterprise environment where your web is often time blurred with your other applications.

Given what I know now, I would have likely made the move to PHP. Not only is the programming style similar, but PHP really is dedicated toward the web. Whereas it is quite easy to get lost in the mass of information the .NET platform provides. And the rate at which the new .NET techonologies have been coming out in the recent past can and has become overwhelming.

To directly answer your question: if you are staying in the realm of web development then I'd recommend taking a hard look at PHP for your new projects.

Metro Smurf
I'd say .NET is just as valuable in a simple project. Alone the controls and the extensibility of these controls make it all worth while.
roosteronacid
I'm a .NET-Programmer myself and also have used PHP for a few years. My current company mainly uses still classic ASP but we are slowly moving to ASP.NET - the main reason for a slow changeover are our libraries etc. we had made in classic ASP and we must rewrite with C#/.NET now
Anheledir
A: 

Its not the paintbrush, its the artist ;)

But! .net sucks and its overblown. if you're thinking to switch then switch to something which feels more lightweight. e.g. rails, php..

Michal
Rails is very slow compared to .NET. Which is not at all "overblown" in my opinion. For server-side performance-demanding websites, .NET is the best choice at the moment.
roosteronacid
"For server-side performance-demanding websites, .NET is the best choice at the moment." i wounldn't be so sure about that. a lot of performance-demanding sites such as facebook, flickr, yahoo (to name a few) run on php and run well..net rocks though!
gnomixa
+2  A: 

For existing projects it's no option to switch to another language in my opinion until you have to make some radical changes / additions. Reprogramming is time-consuming and your customer will not pay for it normally.

PHP is a nice web-language in my eyes, no question. But I wouldn't use it for very large projects because it is not pre-compiled which makes a good speed-up (my experience). But I left PHP-Development a few years ago, maybe there are some good improvements to this now. Also I wouldn't run PHP on an IIS nor would I run Apache on a Windows-Server. So when your whole server-equipment is based on windows you would have to setup a new server with linux/apache/php - more costs for your company the customers will not pay for.

I agree with most answers, there is no good reason to stay with classic asp for new projects forever and there should be made plans to make a changeover to another language. We program most new projects still with classic ASP at the moment because we have a lot of selfmade libraries to use with our CMS etc. and we have to rewrite them with .NET/C#. Also there have to be established some new coding-conventions (e.g. how to make a navigation, folder structure, ...) so we are working alongside on a sample-project in .NET and after finishing with it we will only make small changes to existing projects until we have a chance to redeem the rewrite at least partially with another assignment of the customer.

It's a slow process but I believe it have to be done sooner or later. (And I'm a big fan of the .NET-Framework, too! :-) )

Anheledir
+1  A: 

Like another poster mentioned, the skill set of the staff would be the deciding factor.

If it's a Classic ASP shop and something has to be done ASAP (what doesn't, right?), then it might be hard to convince management that there's a need for .NET, especially if it impacts the timeline. This is where adding in some .NET pages for one-off projects comes in handy, since it lets the dev team become familiar with the language and decide when to switch from Classic ASP to .NET.

Going forward, it's important to remember that while Classic ASP still runs and runs well, it's not going anywhere and you can't count on any updates/changes to the language/tools going forward.

That being said, from my experience, I've found that jQuery/Ajax/DOM scripting gives the Classic ASP pages a new shot of life and add some of the "fancy/cool" stuff that my clients want to see on their sites.

+2  A: 

You might consider looking at some of the differences between ASP classic and ASP.NET. Having had to maintain both in the past, I can tell you that there are numerous pleasures to present in developing in .NET vs. ASP Classic. Transitioning to any web-trendy language (PHP, ASP.NET, Ruby, Python) is going to be worth it if for nothing more than to realize where ASP Classic lacks.

Russell Myers
A: 

Our team has twice been asked to significantly "upgrade" a classic ASP site and in both cases, it was such a nightmare that we converted/re-wrote it in ASP.Net. I know the "Don't rewrite what's working" mantra, but knowing that we or someone else would have to continue to maintain the codebase and seeing how horrible the ASP code was to maintain, we decided to make a clean break.

For that reason alone, I see nothing to recommend ever writing anything else in classic ASP. If ASP.Net is not an option, I'd go with PHP or Ruby.

CMPalmer
+1  A: 

I wouldn't write a new app/website in classic asp. Why? number of reasons:

1) no classic asp bugs are fixed any longer by MS, eventually the support will cease to exist, it has to. 2) .net is much faster performance wise 3) .net has a lot of useful extenstion (AJAX for example) 4) skillset - when thinking of a technology you have to be sure that you can find someone to maintain it easily in the future

.net has been around for awhile and it's tested, so it's safe (and recommended) to switch over, for new projects for sure.

gnomixa
A: 

Hi Anheledir,

I'm an ASP Developer and I still see a lot of advantages in ASP. I try to explain some of the ideas behind my beliefs in this article: http://zend.lojcomm.com.br/entries/asp-a-misinterpreted-technology/

Hope it helps you to make a decision about this wonderful platform.

Best Regards, nagaozen

nagaozen