This time around the developers only attended the developer track on the second day - today - but our systems administrator attended selected sessions from the IT Pro and Security tracks on both days.
We didn't go to day one because it was covering the forthcoming Visual Studio 2005. While this is a very important development environment for us, we reckoned we're already familiar with the material likely to be covered, as we are already involved in early adoption of VS2005. Day two was a different matter however. The Developer track was covering the equally important SQL Server 2005, which we intend to use as our underlying database.
We've heard much less about SQL Server 2005 than we have about Visual Studio. Presumably some of this is due to our greater interest in coding issues than in the database layer, but it was good to find out a bit more about what we can expect.
The much-touted integration of the CLR into SQL Server proved to be mildly surprising in that there was quite a strong recommendation to continue to use T-SQL for simple querying and only to use a .NET language for more complex tasks. While this seems no more than common sense, I had been wondering beforehand whether some silver bullet could be pulled out of the hat (to mix my metaphors) to make .NET languages the preferred way of performing tasks within the database. I'm both reassured and (unreasonably!) disappointed to find this isn't the case!
One speaker's recommendation for how to tell when you should rewrite your T-SQL in a .NET language was that if you step back, take your glasses off and squint at it, if your T-SQL looks like VB6 you should get rewriting!
There was quite a high emphasis on increased support for various aspects of Business Intelligence, ranging from some SQL extensions like PIVOT and RANKing to much more comprehensive dedicated tools living within the SQL Server environment. DTS has been re-written from the ground up, to become Integration Services, and Analysis Services and Reporting Services have both received a lot of attention.
One SQL improvement that might be of particular interest to us was recursive querying. As there are at least two tables in our current design that are effectively recursive, there is potential for this feature to make our life easier. This particular feature isn't a Microsoft extension, but brings T-SQL more closely in line with the SQL-99 standard - though not fully compliant, as the presenter pointed out.
The introduction to Analysis Services seemed quite useful. It would be interesting to know what my colleagues thought, as I don't think either of them have attended a presentation on the subject before. I thought the case for using Analysis Services rather than wasting effort developing individual short-termist reporting solutions was strongly made and the fact that OLAP "cubes" are actually n-dimensional - sometimes a source of confusion - was clearly pointed out.
Much was made of improvements to the mobile version of SQL Server, making it more like the server products than Jet, and interestingly Tablet PCs were pitched as being part of the mobile market, despite their x86 architecture as opposed to the ARM processors used in Pocket PCs, and the fact that they run a specialised version of the Windows XP operating system, rather than Windows Mobile. This means that there is a version of SQL Server Mobile Edition for each processor architecture, and developers can run it on their desktop machines.
All-in-all, another worthwhile technical day from Microsoft free of charge apart from the cost of being there rather than in the office, and transport, although if I'm honest I didn't find it as interesting as some of the more code-oriented sessions I've been to. I guess I'm still not a database developer at heart...