Saturday, November 2, 2024

A Technology Roadmap – The Basic Map

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.)
 

FrontPage

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

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

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.
 

.NET

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.

Summary

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.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Popular Articles

Featured