Two years ago, World Wide Web pages that combined static hypertext and graphics looked pretty good, and we enthusiasts widely dispersed Hypertext Markup Language (HTML) documents made with these elements. But soon users are going to yawn at the thought of browsing such static Web sites. Many new technologies that promise to breathe dynamic capabilities into the Web are maturing, promising to forever change the face of the Internet. You will be able to turn your Web page into a fully functional multimedia presentation by integrating sophisticated 2D- and 3D-viewing environments with your embedded graphics and hypertext.
While Web programmers developed, enhanced, and deployed HTML across the Internet, basic elements of the graphics industry were undergoing revolutionary changes. Graphical presentation technology, multimedia development, and new 3D graphics standards, such as the Virtual Reality Modeling Language (VRML), began to 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 operating systems via standard application programming interfaces (APIs). Microsoft Windows NT 3.51 includes Silicon Graphics' OpenGL graphics capability, as well as Reality Labs' API and DirectDraw. These APIs let you develop and display high-quality 2D and 3D graphics directly from the Windows NT operating system.
At the same time, competition and other market factors have pushed the cost/performance envelope. Better, faster video accelerators and displays allow the majority of desktop PC users to create and view the powerful, dynamic images that these new, open graphics standards deliver. Your NT Server is designed to take full advantage of these advances.
Browser Extensions
HTML, which was originally defined by the researchers at CERN (the European
Particle Physics Laboratory in Geneva, Switzerland), remains the basic vehicle
to deliver information on the Web. HTML 1.0 was the first public manifestation
of that standard, and we have been adding to it ever since. New formatting
capability in HTML 2.0 gave us the flexibility to create more appealing and more
responsive pages.
But the pace of standards development is too slow for many people. The phenomenal success of HTML and the Web have pushed the pace of Web development beyond the ability of standards bodies to keep up. The Navigator 1.1 browser, released by Netscape Communications in 1995, included extensions to the current standard, in the form of new HTML tags and modifications to existing standard tags. Later releases have continued to include this extension standard.
Netscape's resounding success in the browser market indicates that others might adopt its extensions. These extensions might not end up as part of a future "official" HTML standard, but Netscape isn't the only player trying to set Web standards. Two other industry players, Sun Microsystems and Microsoft, also have plans to extend the Web's capabilities. Both are sure to make a mark on future standards as well.
Java
Sun Microsystems has introduced--or reintroduced--Java as an
object-oriented, cross-platform, client/server programming language. Originally
developed in 1990 for handheld Personal Digital Assistant (PDA) machines, which
were never released to the marketplace, Java has found a new lease on life as a
technology for use on the Web.
Java is both a compiled and interpreted language that extends the capabilities of client-side viewing environments, such as Web browsers. Java components include the source code, a compiler (javac), an interpretive runtime environment, and full-fledged applications and applets. Once you have compiled Java code into an architecture-neutral form, called bytecode, your server can deliver it across the Internet to a machine whose runtime environment executes the code and handles any system dependencies. Java enables you to embed small programs (called applets) into Web documents. They load into memory on a client machine and run right in the window of a Java-enabled browser. Although applets are referenced on Web pages using special HTML tags, just like sound files and static graphics, they are actually snippets of 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 the
Internet are limited. The best places for you to gather information and
resources are listed in the sites below:
|
Before Java's debut, clients who wanted to view animation on the Web had to configure at least one, and possibly several, external viewing applications for use with their Web browser. Many users found the complexity of all this configuration a little daunting, and many never even tried. But we could simplify things for the clients by using Java to create special cross-platform applications that load from a Web server right onto a client's machine. Such applications 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 any overhead on the server side and they run thriftily on the client side (a positive legacy of their PDA roots). Better yet, Java-enabled Web pages aren't limited to static text content. You can update tables, charts, and fields "on the fly" and embed video segments, animation, audio, and even SQL statements on your Web pages when you use Java. If your clients have a Java-compliant browser, they can actually participate in the creation and presentation of Java-enabled pages.
Java's Appeal
Part of Java's appeal is its ability to run on multiple platforms without
requiring you to recompile or recode applications. Often we develop
cross-platform applications first for UNIX, then port them to Windows, and then
later to the Mac. Because these adaptations add to development time, full
release of an application is often delayed. If you use Java, however, you can
write and deploy applications once and not have to rewrite them for specific
platforms.
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 on multiple platforms as-is. The remaining 20% of the uncompiled code is interpreted within Java's runtime environment, implementations of which are tailored to a specific hardware platform. It is this relatively high level of portability makes Java particularly suitable for the Web, where multiple platforms are inescapable. Equally appealing are Java's syntax, expressions, and statements, which are almost identical to those of ANSI C++. This helps programmers who are familiar with C or C++ avoid a lengthy learning curve. Java also provides a multithreaded programming environment which contains features, such as synchronization, to make programming friendlier than it is in other multithreaded programming environments.
Java Tools
Java and HotJava are free if you use them for noncommercial purposes. The
source code for the Java compiler, runtime interpreter, and HotJava browser are
also free, although there are some restrictions. Make sure you check the
licensing information (http://java.sun.com/) before you start using any of
the Java components.
As with any new technology, Java's acceptance and deployment will depend on third-party adoption and support. One of the great advantages of Java is its C++ -like nature, which promises to attract programmer interest. But plenty of vendors have already announced support for Java. As of December, 1995, the following vendors have licensed or taken steps to work with Java technology:
- Microsoft has signed a letter-of-intent to license Java technology and plans to work with Sun Microsystems to optimize Java for the Windows environment. Microsoft users can expect Java technology to be integrated into the Internet Explorer browser during 1996.
- Netscape and Sun Microsystems intend to develop an open scripting language called JavaScript.
- Silicon Graphics/Macromedia and Sun Microsystems plan to co-develop for Java multimedia APIs and file formats that will permit you to integrate 3D and interactivity into Web pages.
- IBM has licensed Java technology and plans to port it to AIX, OS/2, and Windows 3.1.
- Adobe Systems has licensed Java technology and plans to integrate it into its PageMill and SiteMill Web authoring and management tools. It also plans to enable Acrobat to support embedded applets.
- Sybase plans to license Java technology for use with its databases and commercial 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 from its "hard-core programmers-only" image. Currently, novice developers can't jump in and start writing code (that's why Sun Microsystems and Netscape are collaborating on JavaScript). As more third-party vendors jump onto the Java bandwagon, 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 Web
server, and a browser. Internet Studio is an object-oriented environment, and it
enjoys a special relationship with and use of Microsoft's Object Linking and
Embedding (OLE), just as Microsoft Office does. Currently, its beta releases can
be used only on Microsoft's Network, with Microsoft's Internet Information
Server (née Gibraltar). The viewer can handle only those pages that were
created with Internet Studio. Although Internet Studio doesn't exactly comply
with HTML standards, it isn't a new development language. It's a full-fledged
Web publishing environment, and Microsoft plans to use it to create a new
standard for Web publishing. Eventually, Internet Studio will operate directly
on the Internet and be able to read ordinary HTML documents, and thus interact
with a full range of Web servers and services.
Internet Studio uses a Visual Basic (VB)-style language, which differs from the C-based Java language. To develop a Web page with Internet Studio, you start with a blank page on which you create text, graphics, animation, and sound elements with familiar desktop tools, such as Macromedia's Freehand or Microsoft Office. You can then integrate your creations into the Internet Studio environment for Web access--all without any HTML coding. Because Internet Studio is VB-oriented, it might have a wider appeal than Java does. Internet Studio's tight integration with NT promises to make it uniquely well-suited for this platform, whether you want to use it for in-house "intranets" or to access the Internet at large. (Consult Microsoft's Web site for more information.)
Blackbird Language
The Internet Studio uses its own proprietary format, called the Blackbird
Markup Language (BML). It's similar to HTML, but it has additions to make it OLE
2.0-aware. Microsoft has already released BML's current specifications and plans
to continue this practice in later releases. Even though Microsoft has announced
its intention to license Java, some industry pundits contend that Microsoft is
vying to make OLE a standard to compete with Java for dynamic client-side
capability. Others believe the two will be married within Microsoft's newly
minted Internet architecture.
What kind of development environment does this architecture currently support? Besides being able to leverage the convenience and capability of the Microsoft Office products, you can use any application that complies with the OLE document standard to create content for Internet Studio. Support exists for a variety of graphics files and formats, including .BMP, .TGA, .TIF, .PCX, .WMF, .GIF, .DIB, and .JPG. Special controls let you include Macromedia Shockwave (see subsequent section) content on your pages and display and view forms and file formats such as Acrobat Portable Data Format (PDF) files. Microsoft also has licensed InterVista's VRML environment and Caligari 3D development tools for inclusion into Internet Studio. For NT-based developers, it's the closest thing to a state-of-the-art Web production facility available today, even if it requires 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 for a VRML viewer (or information about VRML):
|
Virtual Worlds
Born at the first Web conference (1994) in Geneva, Switzerland, VRML
promises to provide an intuitive, interactive way to navigate the Internet.
Although HTML may be properly credited with the current growth of the Web, HTML
can render only 2D images and text; plus it requires a variety of "helper
applications" to support multimedia. VRML could create a new interactive
paradigm for Web usage. Its developers fully intend for VRML to become a Web
standard for graphical presentation.
VRML's capabilities let you build the 3D objects and scenes to create simulated multi-user interactive worlds. Web browsers that are capable of launching VRML viewers permit users to navigate and participate in these worlds on the Internet. If you aren't sure what virtual reality means to you or your business, imagine your clients being able to sit at a computer and interact fully with your products, your information server, and other Web-surfers. If they find a product that interests them, they can rotate and view it as if it were being manipulated manually. Although VRML's capabilities aren't quite that advanced yet (the current 1.0 VRML standard doesn't support interaction), you'll eventually be able to interact with people who are visiting those virtual worlds. Today's VRML specification for virtual worlds is limited to scalable objects in which details become fine-tuned as a client "approaches" them. The specification allows the objects to have links to other VRML worlds or HTML documents. Future versions of VRML will permit clients to interact in real-time and will include motion physics and embedded animation. (For more information on VRML tools and specifications, visit the Web sites listed in table 2.)
Easy Animation
Although VRML holds promise for the future of the Web, currently available
animation software and hardware offer plenty of options. The software and
hardware you'd use to create your animation depends on your scope. To find out
more about animation in general, check out the Animation frequently
asked-questions (FAQ) site at
http://www.cis.ohio-state.edu/hypertext/faq/usenet/animation-faq/faq.html, or go
to the sites listed in table 3.
So that you can leverage your multimedia presentations, including animation, for use on your web page, Macromedia has introduced a new Web browser extension, Shockwave for Director. With more than 250,000 practicing developers, Macromedia's Director is already widely used in the multimedia publishing community, particularly for creating CD-ROM titles. Director 4.0 for Windows and Macintosh is a popular tool for combining text, animation, sound, video, graphics, and interactive media into seamless production units. Director gives you control over text-sequencing and external hardware components, such as videodiscs, VCRs, and CD-ROM players. With Director, you also can import file formats from most Windows and Macintosh applications for use in a presentation. Director's robust qualities bring life to the endless progression of static text pages in presentations.
Macromedia's Shockwave works with your client's Web browser: It ports the multimedia presentations you created in Director to the Web environment and plays them back within Web documents. Shockwave's processor for Director files, Afterburner, compresses Director presentations by as much as 60% while optimizing them for downloading from Internet servers. Clients with Shockwave-enabled browsers can view an entire Director presentation in the time it now takes to download a few static GIF files.
Gateway Technology
Access to a corporation's database is the key to the development of many
important interactive Web business-applications. Managing, publishing, and
providing secured access to that information is at the heart of business
computing. With a Web server that is linked to a relational database, users can
access information through a variety of views defined at runtime.
Most of us use general-purpose development environments, such as Sybase's PowerBuilder, 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 critical links between data and the Web. The most common link is the Common Gateway Interface (CGI), which is a standard for interfacing Web servers with external applications on information servers. Clients use their Web browsers to invoke CGI programs, but CGI programs run on a server and reside in a special directory on the server (usually ".../cgi-bin"). You can write CGI programs in any 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 must compile 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. For this 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-end applications.
Connectivity Products
Although custom CGI scripts and applications are viable options for
Web-based database access, there are several products that can do the job for
you. For instance, Allaire's Cold Fusion uses 32-bit Open Database Connectivity
(ODBC) drivers to communicate with a variety of relational database systems in
the NT environment. Cold Fusion uses some static CGI elements to provide
database access but lets clients create custom queries. Leading database engine
suppliers, such as Oracle and Sybase, also have tailored tools for the Web
environment. Oracle's InterOffice Server is a new breed of enterprise server
that integrates Web server capability, multimedia, messaging, text, and a
database server into one product. Sybase has deployed its Sybase web.sql, a
product that provides a high-speed link between Web servers and Sybase database
servers. Sybase also is integrating support for Java into all of its Internet
products.
TABLE 3: Macromedia Software Tools & Resources |
Netscape Communications plans to bundle Macromedia's Director into its browser (Navigator), which should lend further credence to its success on the Web. The following sites provide information and pointers to animation and multimedia software:
|
These products have turned traditional proprietary database engines into powerful Web tools. Check out the DB Web site at http://dweb.csie.ncu.edu.tw, or related 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 are
already making the Internet more palatable for consumers of the television
generation. This generation has grown used to marketing presentations that "jump
out 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 must
promise to add impact to data presentations and to increase the scope and reach
of the data that the Web can deliver.
Today, these innovations are mostly experimental, or at best they are still in the very early stages of deployment. But as the Web matures, you can expect these innovations to mature apace. Advances in hardware and software are destined to give the Web the kind of interactivity and user involvement that users just can't get from television. Besides, television was never intended to include its viewers.
Cold Fusion |
Allaire * 612-831-1808 Web: http://www.allaire.com |
Shockwave |
Macromedia * 800-945-4061 Web: http://www.macromedia.com |
Director |
Macromedia * 800-945-4061 Web: http://www.macromedia.com |
Internet Information Server |
Microsoft * 206-882-8080 Web: http://www.microsoft.com |
Internet Studio |
Microsoft * 206-882-8080 Web: http://www.microsoft.com |
Interoffice Server |
Oracle * 800-633-0596 Web: http://www.oracle.com |
Java |
Sun Microsystems * 800-821-4643 Web: http://www.sun.com |
sql:web |
Sybase * 800-792-2731 Web: http://www.sybase.com |