Day Two at PASS started out on a sour note. Rewind about 36 hours, to when I was checking in to the hotel. “Mr. Mitchell, would you like a wake-up call for tomorrow morning?” asked the teenage clerk behind the counter. No, I replied, I prefer to use the alarm clock in the room. Which would have worked fine, except that in my haste I set the alarm to PM instead of AM. So when I finally woke up on my own… at a quarter to eight… I had to rush around just to make it to the 9:30 opening session.
However, the day did get better at that session. I attended a breakout on Indexing Best Practices presented by Kimberly Tripp. If you read my post from yesterday, you know how highly I regard her expertise; the early session this morning only bolstered this opinion. I learned more than I ever though possible about indexes in only 90 minutes.
After lunch (another excellent meal from the Gaylord staff), I attended Practical SQL Server. Presented by Microsoft veteran Bob Ward, this session was half sales pitch and half 10,000-foot view of the new SQL Server. Although the information was relevant, I had hoped for more ‘meat’.
The midafternoon session found me in another Microsoft presentation on the integration of the CLR with SQL Server 2005. The information was helpful, but audio problems made the presenter difficult to understand, making it a very long 75 minutes.
During the late session, I sat in on an extended course on using cursors. A more appropriate name for this session would have been “Avoiding Cursors”. The presenter, James Luetkehoelter, maintains that there are some specific business cases that will benefit from the use of cursors, but generally they are overused and should be avoided whenever possible in SQL Server. Luetkehoelter and I see eye-to-eye on this issue; in all of the SQL code I have ever written, I have used a cursor exactly twice. The information he provided was helpful and informative, and I’ll certainly reference his list of cautions if I ever decide to implement cursors. After the last breakout session, the show floor was opened up for a two-hour reception and another excellent dinner meal.
Along with today’s sessions, I spent a great deal of the day wrestling Server 2005 on my laptop. I was running an older version (Beta 2) of SQL Server 2005, and when I noticed that some of the semantics had changed, I opted to install the September CTP. For those who have never tried this, let me educate you: the Beta 2 version and the September CTP do not play well together. I tried to simply install the CTP over the latter, but I was met with a message indicating that this could not be done without first uninstalling the older product. No problem, I’ll do that now. Except that my first choice to uninstall was the .NET Framework 2.0 Beta. This uninstall went off without any problems, but the uninstaller would not allow me to remove any of the other SQL 2005 elements because the 2.0 framework was not installed. Further, when I tried to reinstall the framework, I received the same error message as before. And thus began a day-long session of experimentation, file moving and renaming, registry hacking, command-line switching, and a near-death experience for my laptop (it almost got thrown down a flight of stairs). I finally got it working about 5:30, only to break it again by installing Visual Studio 2005 Beta 2 – another product that does not play well with the CTP. After another extended trip through the filesystem and registry, I established a fully functional SQL Server 2005 CTP install about 10pm last night. Today was stressing, to be sure, and was not as satisfying as the excellent experience I had yesterday. However, I am not dissuaded from my excitement about this product. I am looking forward to the sessions coming in the next two days, and even more excited about getting back to work and putting what I’ve learned into action. Read more tomorrow….