At the recent Internet developers conference in San Francisco, California, Microsoft unveiled "Nashville," part of a sweeping plan to move Internet and intranet features into the core of Windows. Nashville is a shell that integrates a Web browser, a disk browser, and business software such as Word and Excel. This shell should be available in the third quarter of this year as an upgrade, or extension, to Windows 95 and Windows NT 4.0. Nashville is part of Microsoft's commitment to use Hypertext Markup Language (HTML) as a key technology and will work with Microsoft's long-term plans to create a unified product that lets you integrate client-side applications with HTML on the desktop.
Nashville has several key components, and realizing how they interoperate is important. Let's start from the perspective of Microsoft's Internet Explorer (IE) Web browser. One of Nashville's main components is the ActiveX control technologies from the Object Linking and Embedding (OLE) team. ActiveX controls are the same OLE custom controls (OCX) from Visual Basic (VB), Access, and Visual FoxPro with some new interfaces to support DocObjects, for example. Indeed, you'll be able to use most OCX objects as ActiveX controls.
With Nashville, you will design an HTML page and use ActiveX controls to reference external objects and programs. If the users don't have the necessary ActiveX controls on their machines, they'll be able to download the needed controls on the fly and install them. These ActiveX controls then operate like any other OCX, but in the context of an HTML document. Authoring ActiveX controls is important because until now, you had to use Visual C++ (VC++) to create OCXs. Microsoft says that you will now be able to create these controls using VC++, the Jakarta Java toolkit, and even VB5.
Getting Java applets to interoperate with ActiveX controls is a neat trick. Until now, the standard Java environments treated Java applets as fully protected, sealed-off worlds, hidden from the quirks of the local host platform. Microsoft and Sun MicroSystems have dealt with this isolation by extending the Java virtual machine model. Now, all Java classes are available to component object model (COM) and OLE objects as native COM interfaces. The opposite is also true; all COM and OLE interfaces appear as Java classes to Java applets. So, interoperating among Java and OLE, COM, and ActiveX will be no problem. Imagine being able to take advantage of OLE objects from within a Java applet.
Onward to IE3
This interoperability is a key point because it irrevocably joins the HTML system with the native file formats that we've used up to now. So moving between such applications as Word and Excel via hotlinked HTML pages is just a matter of pointing and clicking. Microsoft is making the most of its existing OLE DocObjects container and storage methods, taking them straight into the HTML and intranet world. Phase one of this migration is the merging of HTML and read and write documents into one Explorer shell. This merging happens in IE3, which is due with the release of Windows NT 4.0. The second stage is Nashville.
If you think about this strategy carefully, you realize that having a Web browser, a disk browser, and various tools (Word, Excel) for day-to-day data doesn't make sense. Integrating all these functions into one shell does make sense. This approach doesn't let you know where anything is coming from because, to be honest, you don't need to know. It's all data.
Nashville--Integration Is All
A good way to think of the Nashville shell is as a way to merge the IE3 environment, Office applications, and any other OLE DocObject-compliant tools you have with the desktop Explorer. In other words, Nashville promises a totally seamless desktop integration of your information with the Internet environment. Indeed, this shell promises to go even further. The screen shots shown at the Internet developers conference imply that Nashville will integrate the Exchange Client with the forthcoming News Service and other services. (You can see an example of a Nashville display in screen 1.) Rumor has it that Microsoft is targeting the forthcoming Office97 release at this integrated shell environment.
Using Nashville, Microsoft demonstrated how you can move among disparate information feeds in a proper read and write fashion without knowing where or how something is stored. As you can see in screen 2, when you open a version of IE in Nashville, you will see the tree down the left side and an active window on the right. The contents of the window on the right will depend on what you're browsing.
If you think about it, this integration is especially important for Cairo's debut next year. Microsoft will finally roll out its NT Object Filing System (NTOFS) and NT Distributed Filing System (NTDFS) for servers. With these tools, you probably won't know where something is stored, nor will you care. So the Nashville wave of integrating everything on the client side into one seamless information retrieval and editing environment lays the foundation for Cairo. In fact, it was getting difficult to see how Microsoft could easily transition the Win95 shell into such a DFS environment if applications such as Office remained application-centric (as they are today), rather than data-centric (as they need to be and will be under Nashville).
Because Microsoft is embracing HTML so wholeheartedly, including HTML as the desktop design and implementation environment makes a lot of sense. Microsoft demonstrated how you can change your desktop's look and feel by using embedded HTML code and HTML forms to redefine window designs. Using ActiveX controls to design HTML forms promises to be a crucial piece of technology. In "Exploring Cairo: Forms Database Engine" (Windows NT Magazine, January 1996), I speculated on the need for a Cairo forms engine based on OLE user-rebuildable objects and collections of forms. Well, I was right on the money but about 90 degrees out of phase. Instead of using a registry store for these things, you can store them as active HTML forms using ActiveX controls.
Microsoft also demonstrated a sort of SuperPlusPack feature that lets you define an active desktop using HTML and ActiveX controls. Imagine designing an active Web page and then making it your screen backdrop. The possibilities are endless--a set of realtime data feeds indicating production outputs in a factory, the latest hot news from inside a company, a realtime news feed, etc.
Microsoft also announced a few minor pieces to go into the Nashville package to spice up an already potentially red-hot package. In addition to a plethora of ActiveX controls, Nashville will have an Integrated Services Digital Network (ISDN) wizard, Direct MPEG drivers, a desktop tool (like the remote desktop facility currently found in Systems Management Server--SMS) for data and audio conferencing over LANs and the Internet, a Win95 peer server version of the Internet Web server engine, and improvements to user profiles and ratings.
The Way Forward
Once you look carefully at the implications of ActiveX, the interoperability of OLE and COM and Java, and the new HTML-centric mindset, you see that Microsoft has a clear path to finally deliver its grand information-at-your-fingertips plan. Until now, Microsoft's vision has consisted of big promises and arm-waving with some smart demonstration software. However, Microsoft is now committed to using HTML, ActiveX, and the Nashville extensions to Win95 and NT 4.0 to deliver on these promises.
If Microsoft can come through on these plans (Brad Silverberg, senior vice president of Internet platform and tools, was confident they would happen in the time outlined), Microsoft has finally defined the focus it needs for the turn of the century. And this focused direction comes not a minute too soon.