Researcher Peter Kuhn felt disconnected from the three-dimensional world.
He and his colleagues at The Scripps Research Institute (TSRI), one of the world's largest independent, nonprofit biomedical research organizations, have a triangular situation. They use sophisticated three-dimensional viewers to study cells, they present their findings to their fellow researchers in PowerPoint, and they keep documents and other related research in a Microsoft SharePoint portal. Yet the only way to tie together their 3D renderings with related research was through sticky notes and water cooler conversations.
Kuhn, associate professor in the Department of Cell Biology at TSRI, was looking for a richer user experience that could bring these worlds together in a collaborative environment that reduced duplication and streamlined their efforts. "It's got to be an elegant, simple solution that connects the triangle of our world," he said, "as long as it performs brilliantly and is inexpensive to maintain."
Fitting the bill is a prototype application utilizing prereleased versions of Windows Presentation Foundation (WPF), the presentation subsystem in Microsoft .NET Framework version 3.0; the Microsoft Windows Vista operating system; and Microsoft Office SharePoint Server (MOSS) 2007. The application was developed for TSRI by InterKnowlogy, a professional services organization specializing in .NET-based custom application development and network services and a Microsoft partner.
Tim Huckaby, CEO and co-founder of InterKnowlogy, said the issue wasn't that TSRI lacked technology. "TSRI has all these wild proprietary devices in 3D, then they have a bunch of brilliant people writing Post-it notes as they're staring at these bazillion dollar devices, and there's no way to tie to the research."
At the same time, the institute's problems were typical of any business -- duplicating work, making mistakes and needing a "one-stop shopping portal," Huckaby said. "The same application needed to manifest in two ways: a smart client inside the firewall, but all over world they might not have access to Vista or a smart client so they [need to] get to research on a portal," he said.
When Kuhn's and Huckaby's paths crossed, Kuhn already had the new Microsoft technology in mind. "Much to my surprise, Dr. Kuhn, one of world authorities on cancer research, starts dictating the Microsoft platform to me, some stuff that won't ship for years. I was shocked," Huckaby said.
But he was excited by the possibilities, so Huckaby contacted Microsoft and the two partners funded the proof of concept for Kuhn's lab, and the researchers inside and outside TSRI that they collaborate with.
"Our engineer built the 3D rendering in two weeks, not because he's inordinately brilliant or has 3D experience, but because WPF is that good. The entire project consisted of two developers and a half-time project manager for six to eight weeks," Huckaby said. "To build that type of thing five years ago would've taken a team of 20 people two years, and they would have had to do it in C++, and they'd be no portal to leverage."
One developer focused on the WPF part while the other did the SharePoint interfaces. Both worked in C#.
Huckaby said using SharePoint 2007 offers a huge advantage, since it now gives TSRI a place to host its workflow documents. "We're not using a relational database. It's a design pattern that's pretty revolutionary, and we'll probably see more of it because the new SharePoint is just that much better," he said.
As for WPF, while Huckaby's developers were enamored with its power, they had to write a lot of code by hand. "We had an internal joke that if you stared at the 3D code you would quickly find out why you should've listened in high school calculus," Huckaby said. This issue, however, should be alleviated with Orcas, the next version of Visual Studio, he said.
The application utilized Extensible Application Markup Language (XAML), the declarative, XML-based user interface markup language for WPF. "XAML allows us to host that WPF control in different places. It's basically a XAML wrapper around the code," Huckaby said. "The bold promise is reusability without recompiling. If we did it again might have done it differently, but we were learning."
Huckaby also said a smart client application like this one clearly doesn't have the broad reach that a browser-based application would.
Parimal Deshpande, senior product manager for the Windows Presentation Foundation at Microsoft, agreed. And Microsoft has both sides covered for developing a rich user experience, he said. "Any time there is a need for a differentiated smart client application for Windows, WPF is the way to go. If [you want] a standards-based Web experience, Atlas is the way to go." Altas is Microsoft's framework for developing Ajax-style applications.
WPF's goal is to deliver the integration of the UI with media and documents in one API set, Deshpande said. And the use of XAML is intended to bridge the gap between application developers and Web designers. "[T]heir communication isn't done by markups and printouts. XAML will ensure the design fidelity is maintained," he said.
Besides TSRI, organizations that have WFP prototypes or pilots include The North Face, with an in-store kiosk application that blends 3D views of apparel with video animation; iBlogs, a hosted blog service that is utilizing WFP for media mashups; and The New York Times, which developed the Times Reader that dynamically reflows text as readers change font or window size.
For TSRI, the prototype worked so well they took the fairly unprecedented step of taking it into production before the technology officially ships.
"A big benefit was the fast development pace. We didn't have to go through an 18-month spec cycle and 17 years later get a prototype," Kuhn said. "The biggest timing investment was we had lived at the bleeding edge of MOSS and Vista, and when you're at the bleeding edge the wind blows hard sometimes."
In return, though, the value has already manifested in their work. Kuhn said. "Last week I had a hallway conversation with a chemist and I couldn't quite bring my point across. We stepped in front of a computer with the application, and I toured him through a 3D molecule of what we were thinking. I'm not chemist, he's not a structural biologist, but within the 10 to 15 minutes I toured him through, he said 'I get it,' and now he's excited because he understands the concept. So I didn't just ask for his technical expertise. Now I get his brain involved."