Kalen Delaney: Geek of the Week

Kalen Delaney has been involved in SQL Server from the beginning. Her talks and her writings are always interesting but, most important of all, she was able to successfully take on authorship of the 'Inside SQL Server' series of books from Ron Soukup, and make them her own. Despite her own protests that she is a trainer first and foremost, she richly deserves our accolade of 'Geek of the Week'

Kalen Delaney not only has a gift for explaining technical concepts, but she has an extraordinary ability to multi-task. At conferences, she can usually be seen taking constant notes of everything being said during the session, and whenever a few seconds are not being filled, answering e-mails, doing web searches, and many other tasks. Few people can use their time as efficiently as Kalen. Perhaps it is this gift that explains how she has achieved so much for the SQL Server community, as well as living a full and happy life outside work.


Kalen has been working with SQL Server for over two decades having started her career with the Sybase Corporation in October 1987. where she worked in Sybase Technical Support when the first OS/2 SQL Server was set up in one of the company’s lab rooms. She did this for two years before being transferred to the Education Department where she taught all the Sybase courses, and was the specialist for the advanced course on Performance Tuning and Optimization. She was named Sybase’s Instructor of the Year in 1990.

In 1992 she became an independent trainer and consultant, after her family moved from the San Francisco Bay Area to the beautiful Pacific Northwest. Since then, she has worked with both the Microsoft and Sybase to develop courses and to do internal training for their Technical Support staff.

I first met some of the SQL
Server engineers when 6.0
was released, and there were
about 8-10 of them… …I
think it’s much more
difficult to manage
1200 people

Kalen was the Primary Subject Matter Expert (SME) for two Microsoft courses: 608: New Features of Microsoft SQL Server 6.5, and 665: SQL Server 6.5 Performance Tuning and Optimization. In 1998 she developed an internal course for Microsoft’s product support team, to help them learn the internals and new features of SQL Server 7 and did something similar for SQL Server 2000. Today, she has her own custom course on SQL server 2005 Architecture, Internals and Query Tuning, which she teaches both privately and publicly to a large number of people around the world including clients in Sweden and the UK.

In 1993, Microsoft awarded her MVP status (Most Valuable Professional) for her participation in the public SQL Server help forums on Microsoft’s news server (msnews.microsoft.com) where she is still a regular participant on the public forums.

In addition to all this, she has been writing about SQL Server for over 13 years, in addition to courseware development. She was a co-author of SAMS’ SQL Server 6.5 Unleashed (Oct 1996) and SQL Server in 21 Days (Feb 1998), also from SAMS. Her advanced SQL Server books include Inside SQL Server 2005: The Storage Engine was published in October 2006, and her latest book Inside SQL Server 2005: Query Tuning and Optimization was published in September 2007.

Kalen has contributed to Windows ITPro Magazine (formerly Windows 2000 Magazine), and from mid-1998 joined the editorial staff of SQL Server Magazine.

She now offers the most advanced SQL Server Internals training in the world at www.InsideSQLServer.com

Remarkably she has time for family life. She has one daughter Melissa, a regular blogger www.travelerslunchbox.com and 3 sons. Two of her sons are in college. Brendan is studying at The Evergreen State College in Olympia, WA, and Rickey studied Theater for a year at Southern Oregon University in Ashland, home of the Oregon Shakespeare festival. He just earned his AA degree in June this year. Connor has just finished his second year of high school.

Kalen’s husband Dan is chief instructor (Sensei) at an Aikido dojo, a non-competitive Japanese martial art that is practiced worldwide.

Dan and Kalen met when she joined Aikido classes at Berkeley in 1983, and practiced until the birth of her first son. She took up the martial art again after a 15 year break and was awarded her first degree black belt (shodan) two days after finishing the last chapter of Inside SQL Server 2005: The Storage Engine.

Kalen lives right on the shore of Liberty Bay, in Poulsbo, Washington, a ferryboat ride away from Seattle, and the Microsoft Redmond campus.

In June you wrote that your brother had ‘ the absolute worst opinion of Microsoft’… ‘despite the fact that he uses Microsoft software for word processing and other daily activities, I have never heard him say a good word about Microsoft. He’s mostly opposed to what he perceives to be Microsoft’s business practices, but he has been unable to prove to me that the companies he does like are any better.’

A lot of people seem to think Microsoft evil or unethical in the way it does business. Why do you think this is? And have you managed to un-pick your brother’s viewpoint?

My brother lives on a different continent, so we don’t have a lot of chance for long discussions. My guess would be some of his reasons stem from the fact that his first post-college job was with a Microsoft competitor. That doesn’t make it wrong or right, but I think he just has a streak of loyalty, just like I do. My first post-college job was with Sybase, so my bias towards SQL Server and Microsoft is heavily based on that.

I also think people just love to hate the big, successful companies. In some ways it’s very American to root for the underdog, the little guy. I support local business whenever I can, and avoid the big box stores. If I have a choice between products or companies with similar features, and one has a very bad environmental or human rights record, I’ll choose to give my money to the company that does better things with it.

I know there are rumours about some unethical behaviors of BillG’s in the early days, but rumors are rumors. Right now, what Bill and the Gates Foundation are doing are facts. And they’re doing some great things, and I don’t mind supporting them at all.

How did you get involved with Sybase and how did you make the move to SQL Server?
I mentioned in the first question that Sybase was my first post-college job. However, the full story is that my college jobs lasted 12 years, because as soon as I started graduate school, I started teaching at the University. And I kept teaching as a Lecturer even after I got my Masters Degree. So it took a long time to get away from college. I actually was ‘let go’ from my Lecturer position when I got pregnant. While unemployed, I ran into one of my former students, and she told me about this great new company that she was working for, right in Berkeley. She said they were hiring. I submitted a resume to Sybase and was hired within a week. I had wanted to work in their training department, but they only had two trainers and weren’t looking for more at that time, so I took a position doing Product Support.

It was still the really early days of Sybase, and they had no formal employee training. I was given a few manuals to read (no Books Online in those days) and within two weeks I was on the phone. It was almost another two weeks before I could deal with any customer problem without having to consult with a co-worker. I don’t know how they put up with me, but they didn’t kick me out. Once I started learning a bit more, I tried to pay it forward, and help out the new people as much as I could.

I was working in Product Support when the first SQL Server on a PC (OS/2) was released and I thought it was the most exciting thing I had ever seen. A SQL Server that you could actually carry around with you! I wanted one for my very own. ï After about 5 years with Sybase, my husband and I decided we wanted to take our kids out of the SF Bay Area, and raise them out in the country somewhere. So we moved to Washington State, about two hours from Seattle and I took a job with Sybase’s consulting subsidiary as a training manager, which allowed me to work from home a lot. I started doing more work with Microsoft, who was still a partner with Sybase at that point. Right about the time of the Sybase/Microsoft split, I lost the training manager job due to a reorganization within the company. I didn’t want to move back to Berkeley, so I hung up my own shingle and started getting to know the local Microsoft folks. Since Microsoft let me have my very own SQL Server, and made it very easy to get access to the software, with things like the MSDN subscription, it was an easy choice to focus my private consulting and training on the Microsoft product, instead of the Sybase product.

What are your favourite new features of SQL Server 2008, and why?
I hope most people reading this realize I am not a developer, so the development features are not most prominently on my radar. My specialties are storage management and query tuning. So my new favourite features are in those areas. I really like the new sparse columns feature, but NOT because it allows us to have 30,000 columns in a table. I know there are applications, such as SharePoint, that need lots of columns, but I get concerned when someone has 100 columns in a table! But the sparse column feature can be a benefit even if you don’t have 100s or 1000s of columns. Along with data compression, sparse columns allow you to store more data in a lot less space. And the great tuning feature that works well with sparse columns is filtered indexes. I am really looking forward to getting to use this feature.
What feature is SQL Server missing that you would like to see in future versions?
I’m probably not the best person to ask this question of, since I don’t have a lot to compare to. I know people who have worked with other database systems want some feature that compares to something they have used elsewhere, but I don’t have any ‘elsewhere’. I would like to see more attention paid to tempdb, because now with row-versioning, which can be used internally even if you don’t specifically enable snapshot isolation, there is a much greater load on tempdb. There is one tempdb shared by all applications on all databases. I would like to see some way to control how the tempdb space is used, and maybe even have multiple temp databases for different purposes.
What’s your opinion of how the Microsoft SQL Server team has grown over the years? It started with a very small team, and now has over 1,200 people. Has it got more bureaucratic?
I first met some of the SQL Server engineers when 6.0 was released, and there were about 8-10 of them. The very first SQL Server conference I ever went to was for the release of SQL Server 6.5 and all of the engineers spoke at it. I think it’s much more difficult to manage 1200 people, but I haven’t noticed anything I would call bureaucracy, at least in a negative sense of the word. The biggest problem is that each person is now dealing with a very small part of the whole product, and to completely understand some feature, to the depth that I like to understand the features, I have to talk to at least 2 or 3 different people. And it’s never easy to find out who the right person is.
While it’s great to see TSQL continue to evolve and develop, in the absence of some sort of open standard to govern this evolution, isn’t there a strong danger that it will just become bloated and confusing?
Microsoft is trying to adhere to the standard wherever possible, and the standard just keeps growing. Most of the new features of the last couple of versions were added in compliance of the standard, so I’m not sure what you mean by saying there is no ‘open standard’. I think the days are past when Microsoft will just be adding some feature to the language just because it’s cool.

Of course, the metadata access has been enhanced drastically, and that is outside the standard. You might occasionally think the metadata is bloated with 100’s of views that provide details about what the SQL Server is actually doing. However, I don’t think this bloat is a major problem. It’s sometimes hard to know exactly what view might be the best to use, but the other side of the coin is that there is so much more information available. It’s better to have two different ways to get the information you need, than to have no way.

Among many other attributes, you’re a prolific author and blogger do you have a set writing schedule? Where do you work when writing? If you have a question you can’t answer, who do you go to in order to get the answer?
I wish I had a set writing schedule, and could stick to it. Most of my income comes from training or conferences, which are usually scheduled for a week at a time. So my life is scheduled a week at a time. The weeks I am not teaching, I am supposed to be writing. I have a desk in my home office. But it is hard to just write all day long, so it’s quite easy to get distracted with other things. When the dog wants to play Frisbee, it’s hard to resist him.

When I’m not on the road teaching or at a conference, I try to go over to Microsoft Redmond one day a week and meet with friends and colleagues, or engineers who can answer questions for me about whatever aspect of the product I am currently working on. I do have a lot of great contacts on the SQL Server team, including people who know what everyone else is working on. It sometimes takes a while to find out who can answer my questions, but I usually find the right person eventually.

What books are you working on right now? Do you like the writing process or do you find it difficult in any way?
We tried splitting Inside SQL Server 2005 into 4 volumes, with 2 volumes for the engine and 2 for TSQL. The TSQL volumes were written by Itzik Ben-Gan and he has now pretty much separated those books from my books. So I am reinventing my main SQL Server internals book, and combining my two volumes into one book, called SQL Server 2008 Internals. It will cover storage and query processing, from a “How does it work” perspective. I have some terrific co-authors writing chapters including Kimberly Tripp, Paul Randal, Adam Machanic and Conor Cunningham.

I am also working with over 60 other SQL Server MVPs to write a book including tips, tricks and ideas covering the whole SQL Server product, including Application Development, Database Design, Administration, Architecture and Performance Tuning. All the proceeds from this book will be going to charity.

It’s not really an ‘or’ question. I like the writing process and I find it difficult sometimes. As I mentioned above, I am a great procrastinator. But I love explaining difficult concepts, as long as I’ve had sufficient research time to really understand the concepts at a deep level. The most difficult thing about writing is dealing with editors who want me do more than just write. If an editor wants me to do all my own editing and formatting, and create all my own diagrams, it’s very difficult. I am not an editor or a visual designer. I wish I could do the things I do best and let people who are good at editing and good at creating diagrams do what they are good at.