A web site is a software package. By definition, a package is a ready-made program that is available to users for use to perform some tasks. These users include non-IT professionals. Thus, a web site qualifies to be a package like Microsoft Office, Peachtree Accounting packages.
Before the revolution of The Web (WWW), development of software package was the exclusive preserve of skillful programmers. Programmers or software developers develop the logic of programs which a package will eventually use to function. This logic building aspect of software development requires high level of intellect. This together with the intricacies of mastering programming languages made the development of packages uninteresting and unattractive to a large spectrum of people.
Following the revolution of The Web, it became possible for non-programmers to develop packages right from the inception. These are web-based packages and of course, web sites, requiring no programming skills. The result was the creation of a new type of profession called Web Design. A web designer is someone who organizes a web page by arranging texts, pictures, animations, forms etc on a page and formats them to produce good presentation. All he needs do is to make use of any of the appropriate web development tools like Macromedia Visual Studio and Microsoft FrontPage. Through the Design section of Macromedia Dreamweaver, for example, you can design a whole web page without using HTML codes. What you have is a web site. A web site is one or more web pages. These web development tools are the equivalent of what the popular package Adobe PageMaker does which is to organize and format pages of books, magazines, newspapers etc. No programming is required.
The limitation of web designing is the creation of static web sites which may be suitable for some applications but not all. They produce non-interactive and non-dynamic web sites that are unsuitable for certain applications and needs. For example, online registration. The role of a web designer stops at this point and that of a web programmer begins. As a result of the limitation of static web sites, the need to move further arose. People wanted sites where they could post forms for tasks like creating accounts online and authentication of passwords. This led to the development of web programming languages otherwise known as scripts. Examples are JavaScript, ASP, ASP.NET, JSP, PHP, ColdFusion etc. The result was the creation of the profession of web programming. A web programmer is someone who develops programs for the purpose of performing automated tasks on a web site. Some prefer to call them software developers. Example of such tasks are:
- Data validation.
- Form submission.
- Sign Up.
- Database search.
Thus, it became possible to develop dynamic and interactive web sites capable of doing what conventional software could do on stand-alone computer and network using non-internet technologies. Online banking, stock broking are examples. These functions can now be carried out entirely on internet. To develop functional scripts for such automated tasks, logic building and mastery of the programming language to use in terms of syntax are required. Most of the programs are written from scratch.
Can you be a web designer and a web programmer? Yes, you can. There are people who double as web designer and web programmer but specialists are noted for doing better in their respective fields of specialization than non-specialists. Some sites do not require more than web designing but many sites nowadays require both web designing and web programming like the multi-tier applications that have presentation layer, the logic layer that interfaces the presentation layer with the database, and the data layer that contains the database. There are even database specialists who design database and write what is called stored procedures and triggers right inside the database. The use of stored procedures increases the overall efficiency of site execution as it minimizes the number of times SQL statements are parsed, compiled, and optimized during execution. You can see that site development is quite deep.