I've designed, developed, and implemented a lot of wireless Web applications, so I know how difficult and tedious those applications can be. Maintaining a public Web site that's compatible with today's Web browsers and can exploit their unique features is difficult. However, that difficulty paled in the face of popular wireless Web applications and the more than 1000 devices—all with slightly different capabilities and features—that come with them.
So, if I told you that there's a product for IIS that automatically converts the HTML from your Web applications into the proper wireless format for the device that's connected to your server, would you be surprised? Well, don't be. The product's name is Echo, and Wireless Knowledge (a Microsoft/Qualcomm partnership) makes it. Echo is an Internet Server API (ISAPI) filter that determines the type and capabilities of the wireless Internet devices that connect to your IIS server. When IIS renders HTML, this outbound ISAPI filter intercepts it and converts it to the proper format. Put another way, when Echo receives a request for data from a Web-enabled mobile device, the filter determines the type of markup language the device requires and instantly translates the HTML output of your Web application into that markup language (e.g., HTML for Palm and Pocket PC, Wireless Markup Language—WML—or Handheld Device Markup Language—HDML—for phones). Yesterday, at the Microsoft TechEd Conference in Atlanta, my Echo demonstration during my Commerce Server 2000 presentation met with rousing applause.
It's that easy. The burden on your Web applications is negligible because Echo simply converts the outbound HTML. Echo isn't like an Active Server Pages (ASP) engine with an interpreter or a compiler that requires significant CPU and disk time. By custom-rendering the data after your application delivers the HTML and before that HTML is sent to the mobile device, Echo stays out of the application. And the best news is that Wireless Knowledge has a large team of engineers, testers, and quality-assurance people who stay current with the capabilities of new wireless Internet devices as they enter the market so you don't have to. Echo updates device capabilities quickly and painlessly through an XML file; you don't need to bring the Web server down to update the capabilities file.
Echo supports IIS 4.0 or later on Windows 2000 or Windows NT 4.0. Future releases will support other Web servers and operating platforms. The Wireless Knowledge team is even working on a server component for the .NET platform.
Echo is easy to use. Run the Internet Services Manager (ISM) in Win2K (or the Microsoft Management Console—MMC—Internet Information Server snap-in NT 4.0). Navigate to your Web site, right-click the site, then select Properties. During installation, Echo adds a Mobility tab to the Web server's properties; to turn on wireless capability for the entire site, a virtual directory, or a folder, select Enable Mobility, and you're off and running.
Before you get too excited about this product's power, you and your developers need to be aware of a few land mines. First, some of the pages on your site probably contain a large amount of data. You wouldn't want to send, for instance, the entire contents of the MSN home page to a cell phone. Echo could render it, but even if the cell phone's buffer could handle it, you wouldn't want to scroll 100 three-line pages to get to the information you need. Second, when you consider the design of your wireless applications, also consider eliminating the navigations on your site. (Top and left are the most common navigations, but many sites also use bottom and right navigations.) Navigations provide too much data and make the Web site unusable on a cellular telephone.
You don't need specialized hardware, software, or skill sets to mobilize your corporate applications with Echo. (Although Echo doesn't require well-formed HTML, it renders best when the HTML is well formed.) Read my in-depth article in the September issue of IIS Administrator for information about installing, configuring, and implementing Echo and the design implications associated with it.
You can also get more information by visiting the Wireless Knowledge Web site.