Extend Your NT Web Server

Ed Tittel and Mary Madden predict a busy future for Web server extensions.

Ed Tittel, Mary Madden

February 29, 1996

15 Min Read
ITPro Today logo

Two years ago, World Wide Web pages that combined static hypertext andgraphics looked pretty good, and we enthusiasts widely dispersed HypertextMarkup Language (HTML) documents made with these elements. But soon users aregoing to yawn at the thought of browsing such static Web sites. Many newtechnologies that promise to breathe dynamic capabilities into the Web arematuring, promising to forever change the face of the Internet. You will be ableto turn your Web page into a fully functional multimedia presentation byintegrating sophisticated 2D- and 3D-viewing environments with your embeddedgraphics and hypertext.

While Web programmers developed, enhanced, and deployed HTML across theInternet, basic elements of the graphics industry were undergoing revolutionarychanges. Graphical presentation technology, multimedia development, and new 3Dgraphics standards, such as the Virtual Reality Modeling Language (VRML), beganto intersect with HTML to offer major presentation enhancements to the Web.

System support for new graphics applications also broadened. At one time,most of these tools required proprietary engines for their operation. Now,sophisticated graphics capabilities are built right into network operatingsystems via standard application programming interfaces (APIs). MicrosoftWindows NT 3.51 includes Silicon Graphics' OpenGL graphics capability, as wellas Reality Labs' API and DirectDraw. These APIs let you develop and displayhigh-quality 2D and 3D graphics directly from the Windows NT operating system.

At the same time, competition and other market factors have pushed thecost/performance envelope. Better, faster video accelerators and displays allowthe majority of desktop PC users to create and view the powerful, dynamic imagesthat these new, open graphics standards deliver. Your NT Server is designed totake full advantage of these advances.

Browser Extensions
HTML, which was originally defined by the researchers at CERN (the EuropeanParticle Physics Laboratory in Geneva, Switzerland), remains the basic vehicleto deliver information on the Web. HTML 1.0 was the first public manifestationof that standard, and we have been adding to it ever since. New formattingcapability in HTML 2.0 gave us the flexibility to create more appealing and moreresponsive pages.

But the pace of standards development is too slow for many people. Thephenomenal success of HTML and the Web have pushed the pace of Web developmentbeyond the ability of standards bodies to keep up. The Navigator 1.1 browser,released by Netscape Communications in 1995, included extensions to thecurrent standard, in the form of new HTML tags and modifications to existingstandard tags. Later releases have continued to include this extension standard.

Netscape's resounding success in the browser market indicates that othersmight adopt its extensions. These extensions might not end up as part of afuture "official" HTML standard, but Netscape isn't the only playertrying to set Web standards. Two other industry players, Sun Microsystems andMicrosoft, also have plans to extend the Web's capabilities. Both are sure tomake a mark on future standards as well.

Java
Sun Microsystems has introduced--or reintroduced--Java as anobject-oriented, cross-platform, client/server programming language. Originallydeveloped in 1990 for handheld Personal Digital Assistant (PDA) machines, whichwere never released to the marketplace, Java has found a new lease on life as atechnology for use on the Web.

Java is both a compiled and interpreted language that extends thecapabilities of client-side viewing environments, such as Web browsers.Java components include the source code, a compiler (javac), an interpretiveruntime environment, and full-fledged applications and applets. Once you havecompiled Java code into an architecture-neutral form, called bytecode,your server can deliver it across the Internet to a machine whose runtimeenvironment executes the code and handles any system dependencies. Java enablesyou to embed small programs (called applets) into Web documents. Theyload into memory on a client machine and run right in the window of aJava-enabled browser. Although applets are referenced on Web pages using specialHTML tags, just like sound files and static graphics, they are actually snippetsof executable code that are launched from a Web browser.

TABLE 1: Internet Studio Tools, Environments, and Resources

Because Internet Studio is still in beta, resources available on theInternet are limited. The best places for you to gather information andresources are listed in the sites below: Microsoft's primary Web location includes some useful information onInternet Studiohttp://www.microsoft.comFor a current list of NT-related Web sites: http://www.winntmag.com

Before Java's debut, clients who wanted to view animation on the Web had toconfigure at least one, and possibly several, external viewing applications foruse with their Web browser. Many users found the complexity of all thisconfiguration a little daunting, and many never even tried. But we couldsimplify things for the clients by using Java to create special cross-platformapplications that load from a Web server right onto a client's machine. Suchapplications would eliminate the need for multiple-browser configurations.

How does all this look on your server? Java applets are dynamic,distributed, real-time client/server applications, they don't take up anyoverhead on the server side and they run thriftily on the client side (apositive legacy of their PDA roots). Better yet, Java-enabled Web pages aren'tlimited to static text content. You can update tables, charts, and fields "onthe fly" and embed video segments, animation, audio, and even SQLstatements on your Web pages when you use Java. If your clients have aJava-compliant browser, they can actually participate in the creation andpresentation of Java-enabled pages.

Java's Appeal
Part of Java's appeal is its ability to run on multiple platforms withoutrequiring you to recompile or recode applications. Often we developcross-platform applications first for UNIX, then port them to Windows, and thenlater to the Mac. Because these adaptations add to development time, fullrelease of an application is often delayed. If you use Java, however, you canwrite and deploy applications once and not have to rewrite them for specificplatforms.

Java can make your life simpler in other ways, as well. After compilation,roughly 80% of the program will be in binary bytecode format that runs onmultiple platforms as-is. The remaining 20% of the uncompiled code isinterpreted within Java's runtime environment, implementations of which aretailored to a specific hardware platform. It is this relatively high level ofportability makes Java particularly suitable for the Web, where multipleplatforms are inescapable. Equally appealing are Java's syntax, expressions, andstatements, which are almost identical to those of ANSI C++. This helpsprogrammers who are familiar with C or C++ avoid a lengthy learning curve. Javaalso provides a multithreaded programming environment which contains features,such as synchronization, to make programming friendlier than it is in othermultithreaded programming environments.

Java Tools
Java and HotJava are free if you use them for noncommercial purposes. Thesource code for the Java compiler, runtime interpreter, and HotJava browser arealso free, although there are some restrictions. Make sure you check thelicensing information (http://java.sun.com/) before you start using any ofthe Java components.

As with any new technology, Java's acceptance and deployment will depend onthird-party adoption and support. One of the great advantages of Java is its C++-like nature, which promises to attract programmer interest. But plenty ofvendors have already announced support for Java. As of December, 1995, thefollowing vendors have licensed or taken steps to work with Java technology:

  • Microsoft has signed a letter-of-intent to license Java technology andplans to work with Sun Microsystems to optimize Java for the Windowsenvironment. Microsoft users can expect Java technology to be integrated intothe Internet Explorer browser during 1996.

  • Netscape and Sun Microsystems intend to develop an open scripting languagecalled JavaScript.

  • Silicon Graphics/Macromedia and Sun Microsystems plan to co-develop forJava multimedia APIs and file formats that will permit you to integrate 3D andinteractivity into Web pages.

  • IBM has licensed Java technology and plans to port it to AIX, OS/2, andWindows 3.1.

  • Adobe Systems has licensed Java technology and plans to integrate it intoits PageMill and SiteMill Web authoring and management tools. It also plans toenable Acrobat to support embedded applets.

  • Sybase plans to license Java technology for use with its databases andcommercial tools.

Although Java is on its way to becoming a sound and accepted technology,it's still in a pre-beta state and there's much work ahead to liberate Java fromits "hard-core programmers-only" image. Currently, novice developerscan't jump in and start writing code (that's why Sun Microsystems and Netscapeare collaborating on JavaScript). As more third-party vendors jump onto the Javabandwagon, we should see a reduction in the level of complexity.

Microsoft Internet Studio
Also pushing the envelope of Web capability is Microsoft Internet Studio,Microsoft's Web publishing system. It includes an authoring system, a Webserver, and a browser. Internet Studio is an object-oriented environment, and itenjoys a special relationship with and use of Microsoft's Object Linking andEmbedding (OLE), just as Microsoft Office does. Currently, its beta releases canbe used only on Microsoft's Network, with Microsoft's Internet InformationServer (née Gibraltar). The viewer can handle only those pages that werecreated with Internet Studio. Although Internet Studio doesn't exactly complywith HTML standards, it isn't a new development language. It's a full-fledgedWeb publishing environment, and Microsoft plans to use it to create a newstandard for Web publishing. Eventually, Internet Studio will operate directlyon the Internet and be able to read ordinary HTML documents, and thus interactwith a full range of Web servers and services.

Internet Studio uses a Visual Basic (VB)-style language, which differs fromthe C-based Java language. To develop a Web page with Internet Studio, you startwith a blank page on which you create text, graphics, animation, and soundelements with familiar desktop tools, such as Macromedia's Freehand or MicrosoftOffice. You can then integrate your creations into the Internet Studioenvironment for Web access--all without any HTML coding. Because Internet Studiois VB-oriented, it might have a wider appeal than Java does. Internet Studio'stight integration with NT promises to make it uniquely well-suited for thisplatform, whether you want to use it for in-house "intranets" or toaccess the Internet at large. (Consult Microsoft's Web site for moreinformation.)

Blackbird Language
The Internet Studio uses its own proprietary format, called the BlackbirdMarkup Language (BML). It's similar to HTML, but it has additions to make it OLE2.0-aware. Microsoft has already released BML's current specifications and plansto continue this practice in later releases. Even though Microsoft has announcedits intention to license Java, some industry pundits contend that Microsoft isvying to make OLE a standard to compete with Java for dynamic client-sidecapability. Others believe the two will be married within Microsoft's newlyminted Internet architecture.

What kind of development environment does this architecture currentlysupport? Besides being able to leverage the convenience and capability of theMicrosoft Office products, you can use any application that complies with theOLE document standard to create content for Internet Studio. Support exists fora variety of graphics files and formats, including .BMP, .TGA, .TIF, .PCX, .WMF,.GIF, .DIB, and .JPG. Special controls let you include Macromedia Shockwave (seesubsequent section) content on your pages and display and view forms and fileformats such as Acrobat Portable Data Format (PDF) files. Microsoft also haslicensed InterVista's VRML environment and Caligari 3D development tools forinclusion into Internet Studio. For NT-based developers, it's the closest thingto a state-of-the-art Web production facility available today, even if itrequires the use of numerous third-party components.

TABLE 2: 3D Software Tools & Resources

If you want to place yourself in a 3D pilot's seat, visit these Internet sites fora VRML viewer (or information about VRML):

InterVista's WorldView: a VRML viewer for Windows 3.11, Windows NT, andWindows 95http://www.hyperion.com/intervista/technology.html/

Silicon Graphics' WebSpace: currently supports only high-end SiliconGraphics workstations, but expect a Windows version of WebSpace soonhttp://www.sgi.com/Products/WebFORCE/WebSpace/

NeTpower's VRML Studio: a 3D viewer and VRML development toolsethttp://www.netpower.com/

Vream's Web Interactive Reality Layer (WIRL): a 3D viewerhttp://www.vream.com/vream/index.html

The VRML Repository site at the San Diego Supercomputer Center providesgood links to VRML-based softwarehttp://www.sdsc.edu/vrml/

The VRML FAQs contain nearly everything you want to know about VRMLhttp://www.oki.com/vrml/VRML--FAQ.html

Chat Worlds offers the same 3D Web technology environment used by StevenSpielberg's Starbright Pediatric Network for hospitalized childrenhttp://www.kaworlds.com/

The VRML Repository is an impartial resource for the distribution ofinformation pertaining to VRMLhttp://rosebud.sdsc.edu/vrml/

Newsgroups and mailing lists pertaining to VRMLhttp://rosebud.sdsc.edu/SDSC/Partners/vrml/repos_mailing.html

A great site with links to other VRML locations http://www.vrml.org/

The VRML 1.0 Specificationhttp://vrml.wired.com/vrml.tech/vrml10-3.html

Virtual Worlds
Born at the first Web conference (1994) in Geneva, Switzerland, VRMLpromises to provide an intuitive, interactive way to navigate the Internet.Although HTML may be properly credited with the current growth of the Web, HTMLcan render only 2D images and text; plus it requires a variety of "helperapplications" to support multimedia. VRML could create a new interactiveparadigm for Web usage. Its developers fully intend for VRML to become a Webstandard for graphical presentation.

VRML's capabilities let you build the 3D objects and scenes to createsimulated multi-user interactive worlds. Web browsers that are capable oflaunching VRML viewers permit users to navigate and participate in these worldson the Internet. If you aren't sure what virtual reality means to you or yourbusiness, imagine your clients being able to sit at a computer and interactfully with your products, your information server, and other Web-surfers. Ifthey find a product that interests them, they can rotate and view it as if itwere being manipulated manually. Although VRML's capabilities aren't quite thatadvanced yet (the current 1.0 VRML standard doesn't support interaction), you'lleventually be able to interact with people who are visiting those virtualworlds. Today's VRML specification for virtual worlds is limited to scalableobjects in which details become fine-tuned as a client "approaches"them. The specification allows the objects to have links to other VRML worlds orHTML documents. Future versions of VRML will permit clients to interact inreal-time and will include motion physics and embedded animation. (For moreinformation on VRML tools and specifications, visit the Web sites listed intable 2.)

Easy Animation
Although VRML holds promise for the future of the Web, currently availableanimation software and hardware offer plenty of options. The software andhardware you'd use to create your animation depends on your scope. To find outmore about animation in general, check out the Animation frequentlyasked-questions (FAQ) site athttp://www.cis.ohio-state.edu/hypertext/faq/usenet/animation-faq/faq.html, or goto the sites listed in table 3.

So that you can leverage your multimedia presentations, includinganimation, for use on your web page, Macromedia has introduced a new Web browserextension, Shockwave for Director. With more than 250,000 practicing developers,Macromedia's Director is already widely used in the multimedia publishingcommunity, particularly for creating CD-ROM titles. Director 4.0 for Windows andMacintosh is a popular tool for combining text, animation, sound, video,graphics, and interactive media into seamless production units. Director givesyou control over text-sequencing and external hardware components, such asvideodiscs, VCRs, and CD-ROM players. With Director, you also can import fileformats from most Windows and Macintosh applications for use in a presentation.Director's robust qualities bring life to the endless progression of static textpages in presentations.

Macromedia's Shockwave works with your client's Web browser: It ports themultimedia presentations you created in Director to the Web environment andplays them back within Web documents. Shockwave's processor for Director files,Afterburner, compresses Director presentations by as much as 60% whileoptimizing them for downloading from Internet servers. Clients withShockwave-enabled browsers can view an entire Director presentation in the timeit now takes to download a few static GIF files.

Gateway Technology
Access to a corporation's database is the key to the development of manyimportant interactive Web business-applications. Managing, publishing, andproviding secured access to that information is at the heart of businesscomputing. With a Web server that is linked to a relational database, users canaccess information through a variety of views defined at runtime.

Most of us use general-purpose development environments, such as Sybase'sPowerBuilder, along with proprietary toolsets from vendors such as Oracle,Informix, and Ingres, to create front-end applications to query these databases.We also can use a variety of other methods and products to create the criticallinks between data and the Web. The most common link is the Common GatewayInterface (CGI), which is a standard for interfacing Web servers with externalapplications on information servers. Clients use their Web browsers to invokeCGI programs, but CGI programs run on a server and reside in a special directoryon the server (usually ".../cgi-bin"). You can write CGI programs inany language that the server system can execute, such as C, C++, TCL, or Perl.If you use a full-blown programming language to create a CGI, obviously you mustcompile the program to create an executable file before it can run. But scripts,written in Perl or TCL, must merely reside in the appropriate directory. Forthis reason, most of us prefer to write scripts instead of full-blown programs:Scripts are easier to debug, modify, and maintain than are typical front-endapplications.

Connectivity Products
Although custom CGI scripts and applications are viable options forWeb-based database access, there are several products that can do the job foryou. For instance, Allaire's Cold Fusion uses 32-bit Open Database Connectivity(ODBC) drivers to communicate with a variety of relational database systems inthe NT environment. Cold Fusion uses some static CGI elements to providedatabase access but lets clients create custom queries. Leading database enginesuppliers, such as Oracle and Sybase, also have tailored tools for the Webenvironment. Oracle's InterOffice Server is a new breed of enterprise serverthat integrates Web server capability, multimedia, messaging, text, and adatabase server into one product. Sybase has deployed its Sybase web.sql, aproduct that provides a high-speed link between Web servers and Sybase databaseservers. Sybase also is integrating support for Java into all of its Internetproducts.

TABLE 3: MacromediaSoftware Tools & Resources

Netscape Communications plans tobundle Macromedia's Director into its browser (Navigator), which should lendfurther credence to its success on the Web. The following sites provideinformation and pointers to animation and multimedia software:

Macromedia's home page, where you can find information about Director andShockwavehttp://www.macromedia.com

Macromedia's Cool List page of links to other multimedia pages on theInternethttp://www.macromedia.com/Brain/Survival/universe.html

The Berkeley Multimedia Research Center (BMRC) at the University ofCalifornia, Berkeleyhttp://www-plateau.cs.berkeley.edu/

A good site with lots of multimedia informationhttp://medi.igd.fhg.de/papers/multimedia/contents.html

National Multimedia Association of America's pagehttp://www.nmaa.org/

These products have turned traditional proprietary database engines intopowerful Web tools. Check out the DB Web site athttp://dweb.csie.ncu.edu.tw, orrelated sites:

  • Cold Fusion: http://www.coldfusion.com/cfusion

  • Oracle: http://www.oracle.com/info/products/bandwgon

  • Sybase: http://www.sybase.com/www/Press

  • CGI: http://hoohoo.ncsa.uiuc.edu/cgi/intro.html

Dynamic Web
Animation, 3D presentation, and dynamic Web authoring and publishing arealready making the Internet more palatable for consumers of the televisiongeneration. This generation has grown used to marketing presentations that "jumpout and grab" its attention. The Web industry is sure to follow this track,where nothing short of a spectacular presentation will do. New Web products mustpromise to add impact to data presentations and to increase the scope and reachof the data that the Web can deliver.

Today, these innovations are mostly experimental, or at best they are stillin the very early stages of deployment. But as the Web matures, you can expectthese innovations to mature apace. Advances in hardware and software aredestined to give the Web the kind of interactivity and user involvement thatusers just can't get from television. Besides, television was never intended toinclude its viewers.

Cold Fusion

Allaire * 612-831-1808Web: http://www.allaire.com

Shockwave

Macromedia * 800-945-4061Web: http://www.macromedia.com

Director

Macromedia * 800-945-4061Web: http://www.macromedia.com

Internet Information Server

Microsoft * 206-882-8080Web: http://www.microsoft.com

Internet Studio

Microsoft * 206-882-8080Web: http://www.microsoft.com

Interoffice Server

Oracle * 800-633-0596Web: http://www.oracle.com

Java

Sun Microsystems * 800-821-4643Web: http://www.sun.com

sql:web

Sybase * 800-792-2731Web: http://www.sybase.com

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like