LOS ANGELES — Amid the flood of details about Windows Vista, Office 12, Sparkle and Longhorn Server made at Microsoft’s Professional Developers Conference this week, one small announcement could have a huge impact on developers.
Jim Allchin, president of Microsoft’s platform group, introduced Language Integrated Query, or LINQ, a sort of Rosetta Stone for data.
The extension to Visual Studio will let developers write queries to databases and XML data from within Visual Studio. LINQ allows developers to treat .NET objects, XML and relational data in the same way, from inside Visual Studio.
The biggest benefit, developers said, would be eliminating the hassles of querying SQL databases.
“Today, developers have to use one programming language to write the application, then a wholly different way to get data out of a database,” said Daniel Fernandez, a product manager in Microsoft’s developer division. “It’s a difficult process, and you have to learn a different one for each specific domain. LINQ says there should be one way to program against all data.”
Although Microsoft didn’t blow out the announcement, Burton Group analyst Peter O’Kelly said it might be the most important revelation of the week.
“LINQ is an example of breakthrough simplicity that required major effort by Microsoft,” O’Kelly said. “What developers are doing now and what they propose to do with LINQ is a radical change.”
LINQ automates the process of writing code to connect to databases, hiding it from developers, said O’Kelly.
“It’s raising the level of abstraction that developers can work with. They don’t have to deal with low-level coding,” he said. “LINQ generates SQL code when you work with SQL Server, and it generates XML when you work with XML.”
Jay Roxe, a product manager in Microsoft’s developer division, said the company hopes for plenty of feedback from customers and ISVs on LINQ. The plan is to include LINQ in the .NET framework and Visual Studio tools.
“This is a very large impact play on something developers have told us is a major pain point for them in development,” he said.
Billy Hollis, a Microsoft regional director and .NET consultant who specializes in applications for health care, foresees two primary usage scenarios for LINQ.
“One is the run-of-the-mill developer writing smaller-scale apps directly against the database,” he said. “Think departmental stuff. I suspect Microsoft used that as their primary use case, and it looks like it’s going to work fine. But that’s not the way I will usually use LINQ.”
Hollis expects to continue to use a traditional data layer to call information from a database and pass it in a container to the client, and then use LINQ to manipulate the data on the client.
“Think, for example, of the ability to zero in on a medical condition diagnosis code. There are 15,000 of them, and various ways a user might want to filter them to find the one he needs. I suspect LINQ will make that much easier than the way I would do it today.”
Roxe emphasized that LINQ is still at square one, and the company will decide much later exactly how it will ship.
The technology was created by Anders Hejlsberg, a Microsoft technical fellow and the person responsible for Borland’s Turbo Pascal and Microsoft’s C#.
“If there is any programming language architect on the planet who has the experience and insight to pull this off, he’d be on short list,” O’Kelly said.
Patrick Hynds, a Microsoft regional director and the CTO of consulting firm CriticalSites, said the preview already has legs.
“It is still a long time off,” he said, “so while it should evolve more with usability tests, I was impressed on how usable it already appears.”