A Technology Roadmap - The Basic Map

By Vince Barnes

The Roadblock

I've been a programmer for a while now and when I'm faced with a problem requiring a solution it doesn't take me long to realize what language or languages will be involved and which technologies I'll be using to put it all together.  Somebody just starting out however, might not intuitively know these things.  To them, they need a solution but don't even know which language references to turn to for help in finding it.  This can become a very frustrating show stopper; a complete roadblock.

What's needed for the budding developer is a roadmap, a step by step guide for getting from A to B, bypassing the blockages.  So here we present the Goodies roadmap to language and technology selection for Web Page development.  It should be pointed out at this time that this is not a start to finish solution finder, only a guide to language and technology selection -- if you need more than this there are other guides available in the HTML Goodies line-up, starting with the Non-Technical Introduction, through the Primers and Tutorials to the Webmaster Tips and Webmaster Toolbox.  You'll find these and all the other Goodies features in the index list over there on the left.

The Roadmap - Basic

There are always more choices -- and this is never so true as in this rapidly evolving technological world.  In the Basic Roadmap, however, the first choice is obvious.  Web pages will be coded using HTML (in the Advanced, you'll see this might not hold true!)

The next choice is going to depend on what you want to do and where that needs to happen.  Bear in mind, that "what you want to do" might involve several components, each of which might require a different language or technology.  As you look at your problem, try to think of each part of its process in turn, and treat each one as a separate question (hopefully, you'll see what I mean by this as we progress.)  There is a discussion here that you should read at this point, unless you are completely comfortable in knowing whether you should be processing on the client side or the server side.

Now that we can distinguish the Client Side from the Server Side, let's take a look at an example.  Most interactive web pages use a form of some sort. The form is sent down to the client where they start entering their information. If you want to perform calculations while data is being entered, such as extending a quantity and price to give an extended amount, or if you want to validate data such as checking that only numeric digits are entered into a number field, all this processing must occur in the client's browser, which pretty much determines (in the Basic Roadmap) that the language to use will be JavaScript (not Java, which is something else, and belongs on the Advanced map.)

When it comes to processing the form, which will happen when the site visitor (the user) submits the form, sending it back to the server complete with the data they entered, the processing must occur on the server side.  Note that in times past we could use a "mailto:" to simply put the information into an email and send it where we want it to go, but that, for security reasons, this feature is no longer supported by modern browsers.  There are discussions concerning this here, here and here.

Assuming that you read, or at least glanced over, those three discussions of processing forms, you will have seen mention of several server-side languages and technologies.  I have selected two of these, PHP and the FrontPage Extensions, for inclusion in the Basic Roadmap, deferring the others for consideration in the Advanced Roadmap.  My reasons for this are that these are the most common and/or easiest to use (Perl is also very common, but is not as frequently implemented on Windows based servers as is PHP, and was deferred for this reason.)


The FrontPage extensions, which have to be installed on the server hosting the website, provide very simple to use "webbots" for processing the information from your form.  These webbots include the abilities to send out emails, capture data to text or HTML files, interface with databases and to return confirmation pages.  The downside to this technology is that to use it you need to be using a FrontPage compatible editor, such as FrontPage itself, and, as preciously mentioned, the extensions must be installed on the server.  There is a lot more detail about FrontPage here.


PHP is my language of choice for basic server-side processing (and I don't mean Basic, which is a language for the Advanced Roadmap, despite its name -- I mean basic as in fundamental.) There is a tutorial series for PHP here, which includes discussion of database technology interfaces, using MySQL.


MySql is a very common DataBase Management System (DBMS) for the type of sites we are thinking of.  There are other common DBMSs more frequently associated with Enterprise applications, and other, less frequently found DBMSs that we might use.  MySQL fits all the criteria for our Basic Roadmap.  As previously mentioned, you will find an introduction to the use of MySQL databases in conjunction with PHP in our PHP Tutorial Series and you can find more at the MySL Website.


From our own Webopedia, .NET is defined as "A Microsoft operating system platform that incorporates applications, a suite of tools and services and a change in the infrastructure of the company's Web strategy.' .NET "erases the boundaries between applications and the Internet. Instead of interacting with an application or a single Web site, .NET will connect the user to an array of computers and services that will exchange and combine objects and data." For more information on .NET and what you can do with it, visit our sister sites 15Seconds and 4GuysFromRolla.


Thus, the Basic Roadmap, which provides the simplest, most common set of languages and technologies for the beginning or intermediate Webmaster includes HTML as the languages for the pages themselves, including the Form definitions, JavaScript for client-side processing, either FrontPage Extensions or PHP for processing server-side requirements and MySQL for a DataBase Management System.  There is a soup to nuts example of a simple application that uses all these technologies, with step by step explanations, in our Webmaster Projects section (A Simple Order Form.)

Next, we'll be taking a look at some more options in our Advanced Roadmap.

Make a Comment

Loading Comments...

  • Web Development Newsletter Signup

    Invalid email
    You have successfuly registered to our newsletter.
Thanks for your registration, follow us on our social networks to keep up-to-date