Comparison of CGI, Java and JavaScript

Question

CGI

Java

JavaScript

In your capacity as managers, should you know about this? probably yes, esp. if you work on building or changing the company web site (even on the most general level) yes, certainly; unless/until its popularity fades, you are likely to face many decisions about whether to use Java in its different roles; e.g., whether to base your online store on Java up to you; you really need it only if you work on the details of the company web site
Proprietary? no yes, Sun yes, Netscape
Intended applications? database access, form processing, shopping cart application interactive web pages, shopping cart, database access, simulations, games, online conferencing; in general, anything: Sun builds computers on which everything is written in Java, including word processors and web browsers only control of the browser: interactive forms, site navigation, interactive graphics
Where can the programs run? on the server computer usually within the client's browser; but in general, on any computer that has Java Virtual Machine within the client's browser
Where can we see a nice demo? DataSpot Warp Page IE-style Site Navigation
Interactive HTML Table Tutorial
How are applications developed? any existing programming language can be used; e.g., in order of popularity, Perl, UNIX shell scripts, C, C++. a full-scale language in its own right; powerful and simple, but very slow a "toy" language that only allows to control the browser; cannot be compared to real programming languages
Makes the pages slower to download/view for the client? no; only the output of the program is sent, not the program itself yes; classes may be quite big, and it may take some time for Java applet to start almost as fast as regular HTML
Creates a big load on the web server? yes no no
May hang or slow down the visitor's browser or even computer (e.g. due to errors in programming or incompatibility)? no yes no
Allows to create complex behaviour? yes yes limited (whatever can be programmed in a couple of pages; anything larger is too difficult to design/maintain)
Allows interaction with data stored at the server? yes yes, but takes more time (must set up an HTTP connection with the server and wait for data to come to the client) yes (same comment as for Java applies)
Allows graphical output in the visitor's browser? yes, but all that graphics would need to go through the web, hence may load very slowly yes yes
Allows changing the page in real time (i.e. without any communication across the Internet)? no yes yes
Author can hide their code from visitors? yes yes no
Security problems for the server? yes, but only if CGI program is not written carefully enough no no
Security problems for the client? no yes yes
Requires special compiler to create? yes, unless the script is in UNIX shell language yes no
Compatibility problems? no slight (Netscape 3.0, IE 4.0 are ok) slight (Netscape 3.0, IE 4.0 are ok)
Where can we find additional information? NCSA
MSA
Making Sense of Java
Jivin' to the Java Beat
Sun's Java Pages
Java Programming Resources
The JavaScript Source
JavaScript World