Some integration efforts are great ideas, but others are not sure bets. Such as the inventor who wanted to make carbonated vegetable drinks. Sure, the idea integrates the great nutrients of vegetable juices and the effervescence of sodas. But, in this case, 1 + 1 = 0.
I’m wondering if Microsoft’s newest language development idea, called LINQ (for the .Net Language Integrated Query), is a sure bet or not. LINQ was announced at Microsoft PDC (Professional Developer’s Conference) yesterday and was created by .Net grandfather, Anders Hejlesberg. LINQ is intended to solve the problem of how to integrate various sources of data into applications built with object-oriented programming models.
LINQ does this by adding new data-query capability to .Net languages. Now, this is not just relational databases, this applies to all forms of data such as XML documents from the VB.NET and C# code. You will then use the LINQ syntax for querying data rather than using SQL (the Structured Query Language).
Am I in favor of this direction? Well, there are two sides to this coin. Developers are going to love not having to learn new languages, and the additional debugging, troubleshooting, and performance tuning techniques for a whole new language. On the other hand, as an enterprise DBA, I don’t like it.
Every enterprise IT shop I visit these days has multiple database platforms in place. As a database professional, you’ll need to be able to move between these platforms. You won’t need to move smoothly, but you should be able to at least write a decent SELECT statement on each of your major databases. Will LINQ enable you to do this – almost definitely not – unless the database platforms of your enterprise IT shop consist solely of Microsoft SQL Server.
The silver lining in this cloud on the horizon is that it is far, far off on the horizon. LINQ probably won’t be here for a long time. It requires new work in both Visual Studio and SQL Server, and we all know how long the last iteration of those products took. Still, it’s something to think about and keep in mind.
Let me know what you think. Is LINQ more bark than bite?