Learning Web Development With ASP
Q. I would like to learn more about creating a website, and administering a website.
As far as creating a web site you will need to focus on four inter-related technologies you will need to learn: HTML (or XHTML), JavaScript, CSS and a server side language such as ASP, PHP, JSP, or Perl. You also need to know about threats to web sites and bad design practices.
For administration of a web site, you will need to learn about administration of the web server software (IIS in the case of ASP) and how it relates to the server's OS. You will also need to learn FTP or WebDAV and or learn how to use those in whatever
web page editor software you choose.
How much you need to learn about the server software may not be much, unless you host your own server or development server. In a shared hosting environment you will not have direct access to IIS and will have some third party control panel software to allow some limited configuration and whatever technical help system the ISP provides to ask for technical assistance.
Q. I especially would like to learn more about ASP. Can you recommend any books or do you know of any programs currently in place?
The current (and last version apparently) of ASP is 3.0. A reference is available here: http://www.w3schools.com/asp/asp_ref_response.asp. Because ASP is orphaned, as far as I know you will not be able to buy new books. You can however get used books from Amazon affiliate dealers. I always favored the WROX books and remember looking these three as being pretty decent;
- Beginning ASP 3.0,
- Professional ASP 3.0, and
- ASP 3.0 Programmer's Reference.
Of the three I favored Professional ASP 3.0 as by far the best.
I never really used any of those, but did purchase them for the programmers when I was a manager of one sort or another at various companies. I also had extensive programming prior to using ASP-VBScript so I only needed a reference which Microsoft used to provide in the form of a compiled HTML help file (asp.chm).
One of the things with ASP is that it isn't terribly useful alone. You will also need to use other Microsoft technologies; say for database access; and those are separate APIs with separate references, (although they will be covered to some extent in the ASP books.)
You will certainly need to learn ADO (Active Data Objects) and CDO (Collaboration Data Objects) although I probably wouldn't recommend you buy a book on those. VBScript is the language most used to program against the ASP objects and it also has
a separate reference. All of these, (ASP, VBScript, ADO and CDO,) have compiled HTML help files which were available from Microsoft and I find those as convenient as a book.
I can not imagine any classic ASP situation that does not have an article and example code. There are some very good tutorial and code sites, (all of which will be focusing on .NET on their home page, but you will find the "Classic" ASP examples somewhere.) I always learned more from those sites than from books (again with the caveat that I already had been programming for a long time prior to learning ASP.)
I have looked at schools in the area to find an outlet for classes, but none are offered.
You will not find a class for ASP because Microsoft stopped developing ASP in favor of ASP.NET in 1999. In Windows Server 2003 ASP is disabled in the default install. Dot Net was not embraced widely by developers in versions 1.0 and 1.1 but has been picking up steam since version 2.0. Still, I estimate 60-70% of the web sites hosted on IIS use ASP versus ASP.NET but the number is falling as .NET gains traction. When MS released .NET and Windows Server 2000, they lost a lot of market share in the web server market. At the time IIS (5.0) was very insecure and was a popular target for hackers. By the time they got the security issues handled in Windows Server 2003 (IIS 6.0 which is completely new code) the number of IIS servers had fallen from nearly 50% to 20-25%.
At this point it is clear to me that Windows Server 2003 and IIS 6.0 is more robust and secure that Apache on some Linux, but it is probably a too little too late situation for IIS. (Update: With IIS7, Windows 2008 and Microsoft's new friendliness with PHP, it would appear IIS will continue to increase its market share.)
Comment: Should You Learn ASP?
As of April 2006 I would say probably not, unless you have to for work. Otherwise you would be better off learning ASP.NET, PHP, or even (shudder) some Java variant such as J2EE or JSP.
If you are leaning towards ASP because it is accessible to Windows users you should know PHP will run on a Windows Server just as well as ASP. In fact I run ASP, ASP.NET and PHP on the same Windows Server.
If you happen to have a Windows development server (2000 Professional, XP Professional, or Windows Server) you can use either IIS or Apache, and you can use ASP, ASP.NET and PHP. All are available free and can run on Windows. ASP does not have any apparent future. ASP.NET and PHP do. Unless you plan to work in a medium to large scale team environment, I would recommend you choose PHP as the server side script to learn first.