SQL Saturday #119: My review



Last Saturday (5/19/2012) I drove down to the DeVry campus in Addison IL to attend my third SQL Saturday event in Chicago. I’m always amazed at the number of people who readily give up a day off to learn from the local and national speakers who come to town to share their knowledge with the rest of us. It was even more impressive considering how nice the day was, weather-wise. We don’t get many 90 degree days in Chicago before May!

Before going any farther I’d like to thank everyone involved with the event. All the organizers for their hard work in putting everything together, the volunteers responsible for everything running extremely smoothly, the many speakers donating their time, the sponsors for their generosity with prizes and funding for the day, and DeVry for hosting. Thanks, everyone. You guys rock!   

As I mentioned earlier,  DeVry was the venue again this year, and it’s a perfect spot; central location in the area, lots of room, very comfortable place. There was a large, varied selection of speakers; 8 tracks of 5 sessions each for a total of 40. Plus the WIT panel and 2 sponsor sessions at lunchtime. The only problem is the same one all events like this face; too many good sessions at the same time. I had a hard time choosing a session in each time slot as there were always at least two I really wanted to see. In the end I finally chose these five.

First was an Introduction to FileTables in SQL 2012 with Warren Sifre (Twitter).  I’ve been playing with file tables a bit since they were first available in CTP3 but there’s a lot I still don’t know about. Warren walked us through the requirements and the different ways you can enable Filestream on the databases. His demos were effective, showing how easy it is to copy files to a filestream table as a Windows share. He made a good point in pointing out that security is actually necessary in two laces; on the database and again on the file share. Warren was happy to run unscripted demos from suggestions by the audience.

Next up was What’s Buried in the Plan Cache, thanks to Christina Leo (Blog | Twitter). I got a lot out of this session, getting some more insight in how SQL uses execution plans. We saw the difference between ad-hoc plans and prepared plans and how parameterization can affect the plan. My databases are mostly SQL 2005 so I didn’t know much about the Optimize for Ad-hoc option available in  2008 and above. Christina show how SQL will first create a plan stub which then can be used for other queries. Her demos walked through the different DMOs available to troubleshot the cache.

After a delicious lunch catered by Portillo’s (Side Note: If you come to the Chicago suburbs you have to try their beef)  I saw Allen Hirt (Blog | Twitter) walk us through setting up a clustering environment on a desktop or a laptop. A personal sandbox is perfect for experimenting with failovers and this will help me immensely when I’m ready. He didn’t show us how to install SQL on a cluster, just setting up the virtual environment. Allen used VMWare Workstation, but I’m sure most of what he demoed I can recreate in Virtual Box.

I ended the day with two sessions by Rob Farley (Blog | Twitter). The first was on Analytic T-SQL Functions in 2012. This was great just to see how wrong the documentation can be and how hard it is to find topics in the new version of BOL. For instance, did you realize that you need to go the OVER Function section to find a link to the Analytic Function section? Rob is an impressive presenter, talking directly without the benefit of slides. All his demos are live.  I don’t use analytics much but I still got a lot out of this.

Rob’s second session was on SARGability.  This opened my eyes somewhat. He showed us that what we think is a SARGable argument may not really be one. Its important to look at not just the seek predicate but also the residual predicate and table cardinality. Again, no notes and live demos.   

This was my second SQL Saturday event of the year so far, Madison WI being the other. And with ones coming up in Kansas, Minnesota, Missouri, Iowa, Tennessee, and Michigan, it probably won’t be my last!

Microsoft Press MCPD Exam Ref: 70-518 Review

I recently had a chance to review “Designing and Developing Windows Applications Using Microsoft .NET Framework 4.0” by Tony Northrup and Matthew A Stoecker. This book is one of the new Microsoft Press Exam Ref series books, meant for exam takers with more experience. They won’t replace the Training Kit series but they can be used together. Each has its place when working towards your ceertification.

This is a very well written, well organized book, and I highly recommend it to anyone who is currently studying for or is contemplating taking the 70-518 exam. But it is not written for beginners. The book is mostly theory, you won’t find many code examples or step by step walkthrough examples here. The points the authors made are clear, but I found myself having to do additional research before I was able to fully grasp some of the concepts. That’s on me, not the book.

I like the layout of the chapters. There are 5 chapters, each mapping to a section of the exam, with each sections’ objectives listed. At the end of each is a summary and review of the concepts of the objective. The five chapters are

  1. Designing the Layers of a Solution
  2. Designing the Presentation Layer
  3. Designing the Data Access Layer
  4. Planning a Solution Deployment
  5. Designing for Stability and Maintenance

My favorite chapter is Chapter 3, Designing the Data Access Layer. I’ve felt that one of the overlooked areas of application design is data access; how to get the data to users and how to return data back to the data source. This chapter goes into some detail on the different methods available in .NET 4; ADO.NET, LINQ, Entity Framework, and WCF for example. The author address each one in turn, discussing the pros and cons of each, and there’s a handy guide for when to consider using each. This chapter is a good resource for everyone, not just exam takers.

I’m not quite ready to take the 70-518 exam, but when I am I’ll be referring to the material in this book again and again.