Iwanna Learn Web Site Programming

The intent of this page is to gather beginner resources for website scripting and programming. I assume you've already learned some HTML (if not, see LearningHtmlAndCss).

WebSiteProgramming? is different from WebApplicationDesign. If you are more interested in the client side programming aspects, see WebDesignCurriculum instead.

MyWebsiteLearningExperience is to make sure there is some awareness of WebsitePatterns, but then get your hands dirty (CodeSmells) as soon as possible. The journey towards HtmlZen is long and windy.

Let's start with CGI (CommonGatewayInterface). In today's world you need to be mindful of CgiScriptSecurity. CGI is used as ServerSideIncludes in almost all environments.

CGI scripts are often associated with PerlLanguage (see note), but personally I think PythonLanguage is better for beginners, so IwannaLearnPython too. See also CgiVsServlet for more overview in regards to the former.

Server functionalities without CGI

This is going to negate a bit what was said in the previous section. There are other ways to provide server functionality.

?Lightweight Functionality on the webserver The next section cover high end CGI alternatives that are 21st century technology marvels.

Server programming for the ServiceOrientedArchitecture driven companies

It could be useful for the uninitiated to visit ComponentDesignPatternsContext and JavaBeans pages before the pages listed in the rest of this section is visited.

In this arena there are two major camps of technology providers, JavaPlatform (3 main providers) and Microsoft. The views are discussed in EjbVsComPlus.

Heavyweight server typically implemented on separate machines Q What do I miss out if I get focused on ActiveServerPages VbClassic (or VbDotNet) and forget about CGI / Perl? Are there essential functionalities not represented in MS-specific technologies? -- dl To get your hard work tested you need your WebSite tested. Various hosting services have different server environments you need to be aware of, and if you are lucky, you may be able to get by with some FreeHosting.


PerlLanguage and CommonGatewayInterface

First, the CGI model is not tied to a specific language. And I am unable to parse the above... more powerful than what? But, traditional CGI under Unix is not a good model for web applications that must scale. Not only must a normal CGI process fork a shell on each request, it must also rebuild things like DB connections on each request (yes, I know that there are workarounds for this). If you want to run Perl CGI scripts under high load, you should take a look at ModPerl's Apache::Registry(?) module.

World of ApplicationServers

See Rahul Kumar's excellent article (2000) called "Exploring the World of Application Servers". One source is http://www.serverwatch.com/tutorials/article.php/10825_538781_2, but it appears to be partly broken (incomplete). Worthwhile to track down for a good copy as it discusses all aspects related to servers, (i.e., security, management, load balancing, etc.)

Website InformationSecurity aspects

It is certainly worth understanding the security implications of taking data from non-trusted users. There are some pretty convoluted exploits out there. A main focus area is to program very defensively against deliberate exploits.

Examples: Security related Resources

See also WebApplicationSecurity

IwannaLearnCgiScripting? as a better name? The current name connotes "writing html"

Anyone got comments on LincolnStein book "How to Set-up and Maintain a WebSite?" (ISBN 0201634627 )
See also WebApplicationSecurity WebApplicationProblemDomain

View edit of February 6, 2009 or FindPage with title or text search