CL1 webserver: <Anantsystems<Ad info>

    AspnetEmail.com   AspNetPro.com

related sites: <FREE Help> <ASP> <Asp.net> <worldwide>  
feedback: <lovethat> <hatethat> <thanks> <credits> <contact us>

Why should you PERSONALLY use ASP Table of Contents PrintView CL1
<Previous> Finding ASP Jobs and User Groups

Choices of an ASP Programmer <Next>

The "Charles Explains..." column
write charlescarroll@learnasp.com with feedback

Why You should personally use ASP. How ASP is used everyday!


       

If you are still deciding how much time to spend on learning ASP or if to spend anytime at all, this essay by one of my students may give you some inspiration. This essay won Jennifer free tickets to www.Asp-Connections.com in Phoenix Arizona.

"How ASP Makes Tough Websites Easy for Me To Build"
by Jennifer Brogee, brogees@yahoo.com
Tuesday, March 07, 2000

How exactly can we define a "tough web site?" Is it a web site that can withstand millions of hits at one time? Such a web site is probably "tough," but I don't think that's the definition we're looking for. A web site about "toughness"- a biography on Muhammed Ali, for example? No. I don't think so. I believe a tough web site is a site that meets the needs of the people who will be using it. This definition could encompass those web sites described previously, however, a tough web site means more than being able to accommodate large numbers of users, and it means much more than what the content of the web site is.

In my experience, no matter how simple an idea a web site is based upon, once people start to actually use the web site, more and more functions are requested. As these functions are implemented, the web developer must add functionality while increasing simplicity of use. For example, I created a web site for HR managers who wished to view lists of job applicants who had applied through an automated phone system. They wanted biographical information on each applicant, answers to application questions, and the ability to make notes on each applicant's progress. After a few months of work, the web site was ready for deployment. I had spent days working on each screen, making sure it was easy to use, well-documented with help information, and functional. What I didn't realize was that the real work began after the users started to use and comment upon the site. They attempted to do things I never dreamed anyone would want to do on the site. They didn't understand parts of the site I thought were the easiest to use. I began to realize that the site would need to be constantly updated as I learned more about the users and as their needs changed.

How does ASP help in creating such a tough web site? The ability to instantaneously deploy changes to all of the users comes to mind. As a server-based technology, all the work goes on on the server. The problems associated with making sure the users' browsers are compatible and upgraded, as well as the issues involved with ensuring their machines can handle the work, are minimized. I can make a design change to the web site, which the users automatically receive. If I get a negative response, I can easily revert to the old way of doing things. If a good number of users request a change to improve the new design, I can easily give them what they need.

Another reason ASP simplifies the development process, is the straightforwardness and prevalence of its scripting languages. VBScript prevails among Microsoft technologies (see http://msdn.microsoft.com/scripting for VBScript documentation). I believe it is a sensical language to learn, and a relatively easy language to work with. Documentation abounds on the web detailing both VB- and Java-Script.

The ASP community provides support for all, from beginning programmers to experts, in creating tough web sites. I was able to start writing in ASP in a couple days by checking out ASP help sites. Now, whenever I come across a problem I cannot solve, I search my favorite ASP sites -- http://www.learnasp.com, http://www.15seconds.com, http://www.4guysfromrolla.com , the web, ASP listserve archives - http://www.asplists.com  , and if I cannot find the answer by then, I ask the question on one of the many listserves (see http://www.learnasp.com/start/listserver.asp  for info on listservers) I've subscribed to. I usually receive at least one good creative answer to my problem, and many other answers that help me to think in different directions.

Database connections - once a nightmare, have now become simple with ASP. DSN-less connections amaze me in their simplicity and in the fact that I can access my database on the first try! (Have you ever written in COBOL…?) Here's an example of the code I use to connect to a database:
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "PROVIDER=SQLOLEDB;" _
& "SERVER=HRSERVER;DATABASE=Sample;UID=user;PWD=password;"
conn.open
%>

I put the above line in an include file, and it's there whenever I need it. I didn't have to do anything on the web server to make the connection work (as long as the web server can see the SQL Server on the network). More info on DSN-less connections at: http://www.learnasp.com/learn/dbopen.asp  and http://www.microsoft.com/accessdev/articles/daoconst.htm.

Debugging, as developers know, takes up a majority of development time. Error catching with ASP may not be top-notch, as we all wish we could use something besides "On Error Resume Next." However, once I got the hang of what I needed to do to catch an error, I don't really miss using "On Error GoTo…." I have set up a sub routine that is called after every important piece of my code, and if an error is found, I am emailed. This simplifies my testing process, yet it is also helpful when that rare bug finds its way into the actual web site. My beeper rarely gets beeped anymore. As a matter of fact, my phone company beeped me the other day because they thought the beeper had been lost. It hadn't-it just rarely gets used. Instead, I get an email notification of an error the first time any user comes across the problem. The email contains important information about the error caught, the page on which it was caught, the last database call made, and which user encountered the error. For example, here's a copy of an email I received the other day:
Description: Cannot create a row of size 8182 which is greater than the allowable maximum of 8060.
Number: -2147217900
-------------------------------------------------
SearchQuery:
-------------------------------------------------
UpdateQuery: UPDATE DataSheet SET [Answer 3]=' ' … (full query not displayed)
-------------------------------------------------
InsertQuery:
-------------------------------------------------
Error Message: The verification was not able to be updated.
-------------------------------------------------
User: Jim Sample
-------------------------------------------------
Path: /VerificationRespond.asp
-------------------------------------------------
Query String:

The email gives me the error received, who received the error, the SQL statement that caused the error, the message given to the user, and the page on which the error occurred. All of this is made easy with ASP. By the time the user tries that same function again, I've fixed the problem. Which leads me to a reason why ASP makes creating tough web sites easy on the developer.

With an eleven-month old daughter, I make every effort to spend time at home. Since I've started developing in ASP more time at home hasn't been hard to accomplish. When I need to work, I just pull up FrontPage and type away. I can then copy the page(s) to the server and any problem is solved, quickly. All I use is Note Pad to edit my pages. (Actually, I just switched to UltraEdit, because a colleague pointed out to me the benefit of numbered lines.) When I first set ASP up, I couldn't believe how quickly I was able to get it going. Once Internet Information Server was configured correctly, I didn't have to do anything special. I got out FrontPage, added a new page, called it default.asp, and I was ready to go. I can't tell you how many times while developing in other languages, the platform and the software I was using to develop got in the way of the development process. Right now, for example, when I am creating a VB component, VB crashes almost constantly during the testing process. I can't figure out the problem, because once I compile the component into a .dll, it never crashes. I assume therefore that something is wrong with the installation of VB, or it is conflicting with a program on my development machine, or it may be something else entirely. I will eventually spend a lot of time re-installing VB, checking for conflicts, etc, and as a developer, that is a waste of my time. The tools that are supposed to be saving my time, making the development process easier, more often take up more of my time. Yet ASP has never bothered me that way. It has never crashed my text editor, it has never informed me of an error in my code before I'm even done writing the page, it has not intruded on me in any way. I did not need to spend a lot of time learning the development software (File, open and File, save suffice), nor has it cost me extra money (UltraEdit is around $30). Instead it lets me do what I need to do-develop tough web sites.

Even though I wish I could do without, I do admit that I spend time in VB writing components. Because with components, the sky's the limit with ASP. For example, one of the toughest problems on the web for the sites I build is providing nicely formatted, printable reports with headers and footers that the users can either print out or send on to a colleague. This problem was solved much more quickly than I thought it could be by purchasing an inexpensive software package, Active Reports (http://www.datadynamics.com) and creating custom reports through VB. By packaging the reports I need into a component, I can specify exactly what the data source of the report should be, as well as the format of the report (.pdf, .rtf, etc.). With a few lines of ASP code…
<%
set Rpt=Server.CreateObject("Rpt.ReportServer")
Rpt.Report="DataSheet"
Rpt.OutputFormat="pdf"
Rpt.DataSource="SELECT * FROM DataSheet WHERE Date > '1/1/2000'
Rpt.FileName="C:\NewReport.pdf"
if Rpt.RunReport() then …
%>

…my users can create reports with infinitely changing criteria, they can choose the format they need at the moment and they can easily view, print and/or email the reports on the fly. I once thought this task was going to be daunting. Now, when someone nicely requests a new report I can smile and say, "Just give me a few days."

ASP allows for great flexibility in programming, while providing great functionality. As you can see, I believe in ASP. I believe it makes tough web sites - those web sites designed for its users to easily accomplish their tasks - easy to build. It also makes creating tough web sites easy on the web developer. What else could any of us ask for?

Why should you PERSONALLY use ASP Table of Contents PrintView
<Previous> Finding ASP Jobs and User Groups

Choices of an ASP Programmer <Next>

CL1 webserver: <Anantsystems<Ad info>

    AspnetEmail.com   AspNetPro.com

related sites: <FREE Help> <ASP> <Asp.net> <worldwide>  
feedback: <lovethat> <hatethat> <thanks> <credits> <contact us>