This summer, we at SQL Sentry have decided to do a fun riff on the National Lampoon Vacation movies starring Chevy Chase. And I'm asking you to participate as you take your own vacation, whether it's a week at the beach or a "staycation" catching up on chores around the house.
In my case, I’m going to load up the 5 of the 7 members of the Horde in a minivan (no dog or mother-in-law on this trip) and drive a circuit of the big cities between Nashville and Chicago, speaking at a different SQL Server user group meeting each day. Your first way to participate is to come to the user group meetings:
• 15-Jun-2015, Louisville KY, Lunch session
• 16-Jun-2015, Indianapolis IN, Dinner session
• 17-Jun-2015, Chicago Suburbs IL, Dinner session
• 18-Jun-2015, Chicago IL, Dinner session (Limited seating. Be sure to REGISTER).
• 22-Jun-2015, Springfield IL, Dinner session
• 23-Jun-2015, St Louis MO, Lunch session
• 24-Jun-2015, Evansville IN, Lunch session
• 26-Jun-2015, Nashville TN, Lunch session
I’ll be giving away some custom t-shirts (take a look at the design below) and getting the SQL Server family pumped up during the otherwise slower months of summer.
Your second way to participate and to get in on some prizes is to join in the social media fun. Just put out the word on social media (Twitter, Facebook, what have you) about your own #SQLVacation plans and activities and you'll get entered into the regular prize drawings and as well as the grand prize drawing, at the end of summer.
I hope you’ll take part in the social media fun! You can read all of the details about the contest, rules for participation, and such at http://sqlsentry.com/sqlvacation. (Some conditions and rules apply, so be certain to read up)! If we get a lot of community participation, we'll do it again next year to a whole different set of cities!
I hope to see you in person! Best regards,
-Follow me on Twitter!
The //build Tour
If you build software using Visual Studio or code against the Microsoft stack, you don't want to miss the //build traveling road show.
The Microsoft //build tours bring the Build conference experience to you for in-depth, usable knowledge about Windows 10 and much more. There's coding sessions and lots of new product demos. You'll also get facetime with Microsoft Technical Experts to ask those tough questions, partner showcases, and opportunities to connect with your fellow peers. Register today, it's a FREE event.
Two dates are just around the corner:
On Wednesday, June 10, 2015, Build Tour Chicago
On Monday, June 15, 2015, Build Tour Los Angeles
- Best of //build announcements and insights.
- Windows 10 developer platform for app and web developers.
- Coding sessions and demos across devices.
- Q&A with Microsoft engineers.
Attend sessions and demos, watch the keynote, and deepen your knowledge of Microsoft Universal Windows Apps, Web Apps Platform, Lighting-up new devices and capabilities and Cross-platform development.
The Windows10/Office Tour
In addition, the “USA Tour on Windows 10/Office/EMS” is coming to a city near you. This mini-conference is focused on Windows 10, Office 365, and productivity offerings to ensure you are on the leading edge of Microsoft software, devices, and services. Topics include: Windows 10, Next Generation Windows Devices, Internet Explorer and Project Spartan, Office 365, Delve, Sway, & Skype for Business, Windows Phone 10, Surface Hub, and the new Enterprise Mobility Suite. Register for these upcoming cities:
- Indianapolis, IN on Thursday, June 4
- Charlotte, NC on Tuesday, June 9
- Jacksonville, FL on Thursday, June 11
Let me know if you decide to attend. I'd like to hear what you thought of the event.
-Follow me on Twitter!
Great topics for further reading about tuning SQL Server performance:
Exploring SQL Server 2014 SELECT INTO Parallelism
Joe Sack (b | t) provides us with a peak into the performance improvements and new behaviors of SQL Server 2014 in the way it can now parallelize large SELECT INTO operations.
Parameter Sniffing, Embedding, and the RECOMPILE Options
Parameter sniffing is a term used to describe the processes by which SQL Server attempts to reuse execution plans where certain parameters might frequently change. If you’re only familiar in passing with the term, it probably has negative connotations for you. But parameter sniffing is merely a behavior, which is neither always bad nor always good in and of itself. Read this interesting article by Paul White (b|t), and be sure to read the lively discussion that follows.
Finding Performance Benefits with Partitioning
Erin Stellato (b | t), of SQLSkills.com, is back with another great read. This time she’s covering performance benefits that come from partitioning and in which cases partitioning is not going to provide a performance boost.
-Follow me on Twitter!
If you've been reading my blog for a while, you know that I travel and speak quite a lot. (Bizarre fact - I've been blogging since 2004 when blogging was a new thing). A frequent question I'm asked at these events and afterwards in email is "I want to start blogging, but don't know where to start. What do you recommend?" This is a such a common and natural question as to be almost existential at it's root. In most every context where we move from the known to the unknown, from taking that first international trip to learning how to swim to changing jobs, we might first begin by saying "I'm uncertain. Where do I start?"
Success in any of these situations can be distilled down to a single word - DOING. You can plan and plot for months, attempting to foil every possible risk and mitigate every unpleasant possibility, but you will never progress without the doing of the thing. As Nike says, "Just do it".
I have had the benefit of talking to a lot of really talented writers, from poetry to fiction to non-fiction, and no matter what tact they take they always have to knuckle down and do it. Some like to plan ahead for all of their major points, and they're successful in that approach. Others like to start writing without a plan, letting their characters and the thesis of their article take shape as they write. But in all of those situations, they sit down and write.
So my first piece of advice is to carve out a pre-defined, well-bounded block of time to write every single week. In my case, I have blocked off Monday mornings on my Outlook calendar for writing. And that's what I do every Monday morning. You should too, even if it's just a half-hour once per month, you'll make much more progress than if you say to yourself "I'll write when I have time". Block off the time and respect it - don't dodge it or blow it off as something that's disposable. In other words, don't let your own self-discipline be your biggest obstacle.
FIND YOUR VOICE
Another common follow-up question I get is "I know I want to write, but I don't know what to say". On this point, I have a couple tips to get you started. I find, however, that once someone has spent some time blogging reliable, this becomes much less of an issue. But here are some ideas about how to find your voice as a blogger:
- Write advice to your younger self: You've struggled to get the knowledge and experience you've accumulated. Some of the things you've learned were hard won. You wished you'd had it easier. Conversely, there are tens of thousands of IT professionals who are now struggling with exactly the same exasperating situation(s) you'd conquered in the past. Use that as your starting point - write a blog post explaining that trying time and how you'd handle it then if only you knew what you know now. (Incidentally, as I went to publish this post, my buddy Brent Ozar (b | t) did this very thing in this blog post called Sentences to My Younger Selves. It's a great read).
- Catalog your own knowledge: Similarly, some things that we learn are hard to retain or we have to train a bunch of people on the topic several times a year. Maybe me know a tough process so well that others in our organization are constantly asking us about it. Maybe writing something down helps cement something we've learned into our permanent memory. Maybe we don't use a technique or process very often. For example, I write a newsletter for SQL Sentry every month. Personally, if I do something only once per month, I never really and truly learn it by heart. Knowing that, I wrote a post for myself (and perhaps for use by my successor) to document in step-by-step detail exactly how I manage this rather complex, multi-person process. You could do the same for the things you learn working with SQL Server. And you'll feel a unique sense of pride months or years later when you do an Internet search on that topic and your post appears as the top hit from Google or Bing.
- Write about what you want to learn: This is an approach that my buddy Aaron Bertrand (b | t) is a master of and is something you can see demonstrated every week in his new blog posts on SQLPerformance.com. In this case, you might be wondering about a specific technical questions and, finding no good answer to the question with an Internet search, set about researching the topic yourself. For example, you might be wondering "What's faster? Option A or Option B" Well, guess what? There are likely to be thousands of others wondering the same thing across the Internet. That means they are the audience you'll be answering by researching the answer and blogging your findings. You'll literally be improving their lives. Wow!
- Speak to your values: Even in purely technical writing, we have personal values to are reflected in what we have to say. For example, let's say you've written a blog post about various kinds of high-availability and disaster recovery options that your enterprise has thought about implementing. When you write about your conclusions, be sure to describe the values that drove your conclusion. Was low-price a bigger factor than resilience? Was ease of management a bigger factor than performance? When you explain your motivations and values in light of technological questions, your readers begin to connect with you on a deeper level and from that connection you can build stronger rapport with your readers.
If you start writing from one of those three points of view, you'll always have something valuable to say.
NUTS AND BOLTS BLOGGING ADVICE
Here are a few tips about the more procedural, nuts and bolts of blogging:
- Start reading http://www.problogger.net/: They literally wrote the Bible on blogging. Reading their stuff will both: A) blow your mind with their awesome information, and B) make you feel really inadequate. Option B is what I spend most of my time experiencing, since I already know a lot of their recommendations. But don't have the time or (frequently) the drive to implement their recommendations. But even if you implement a fraction of their recommendations, you'll be better than 90% of the other bloggers out there. And they have a great book of the same name. Buy it.
- Fully invest in social media and make that a part of your blogging: You might not be very active on social media. That's a mistake. Get at least a Facebook, LinkedIn, and Twitter account. If you prefer, create separate accounts for your professional life, so that your friends don’t see your technical content and your blog readers don't see how cute your kitten. (In my case, I started on social media before the recommendation was self-evident. Now, public and private personas are hopelessly entangled). Fwiw, the SQL Server community is HUGE on Twitter. So don't ignore it, if for no other reason than to publicize your posts to the Twittersphere.
- Include a picture: I didn’t know about this until recently, but it makes a big difference in how Google ranks your pages when someone searches on a given topic. Also, when naming pictures, use a naming standard such as “johnqpublic.net – powerpivot example 014.jpg”. That way, if someone searches on Google Images, you’ll get the full dose of SEO goodness.
- All things being equal, go with a Wordpress blog: If you haven't chose a blogging platform, you won't go wrong with a Wordpress blog. It's fast. It's easy. There are lots of inexpensive consultants who can help, if you ever need it. And there are plenty of good, plug-in widgets add nearly endless customization and special features. Want a widget to announce your your new blogs to your social media channels? There are a dozen (or more). Want a widget to automate backups? Lots of those. Want better SEO ranking? Already written. For that matter, let's talk about a couple specific examples....
- Wordpress widgets. Make sure to get some of the other really useful Wordpress widgets:
A) Grab Yost SEO, Moz, or Jetpack SEO plug-in.
B) Get one of the social widgets I mentioned earlier. I use Sociable for Wordpress. These do two things for you. First, they enable you to post directly to your social media channels either on a schedule or immediately upon publication. Second, they enable little “Share Now” links for readers to post to their social media channels as they read. SEO goodness!
C) Get a Wordpress backup widget of some kind. I currently use WP-DBBackup at the moment, but it only backs up the post text, not images or other files like slide decks. Afaik, I'll have to spend a little money for a full-site backup widget.
D) Askimet for spam comment filtering.
E) You might like a Related Posts widget. Since I’ve been blogging a long time, I’ve got a lot of content. This widget automatically puts a little entry at the bottom of a blog post which says “You might like to read these:” and shows links to other posts by me and others.
And don't forget to pace yourself. There's no need to hurry. You’ve got a lot of good things to say. But you don’t have to say everything at once. I recommend a pace of no more than two blog posts per week. As time goes on, you can alter the pace (if you want to). It’s not really a very bad thing to put out a bazillion posts in the early days of your blog. However, you haven’t caught a lot of traction with a lot of readers yet. So when you string it out over a longer period of time, you can build your readership with a steady, consistent release schedule. As I always say, when dealing with people it is better to consistently exceed expectations than to be occasionally brilliant AND occasionally absent.
Does this all make sense? What sort of questions do you have?
-Follow me on Twitter!
Here are some oldies, but goodies that I recommend you read:
Two Partitioning Peculiarities and Aggregates and Partitioning
Most of us know that partitions are one of the best ways to scale very large databases or very large IO workloads. However, there are risks, two of which are explored in detail by internals master Paul White (b | t).
The Price of Not Purging
Holding on to data long after its useful lifespan contributes to bloat and added preventative maintenance headaches. Read this informative post from Erin Stellato (b | t), of SQLSkills.com, where you’ll find a lot of useful information about the direct role that database size plays in the duration of all sorts of transactions and administrative operations.
Why is my intermediate result set so huge?
Over at our SQL query tuning forum on Answers.SQLPerformance.com, you should read this entry to see a strong real-world example of why table-valued functions (that should set of warning klaxons!) can be a mixed blessing or, in some cases, even a curse.
Follow-up on Summer Performance Palooza
I like Q&A articles, often because someone smarter than me has thought of a question I should have thought of but didn’t. Aaron Bertrand (b | t), the editor-in-chief at SQLPerformance.com, recaps his performance presentation for the PASS VC Summer Performance Palooza including an expansive Q&A section covering all of the questions that came in during and after the presentation.
What's in your recommended reading list? Thanks,
-Follow me on Twitter!
Do you do a bit of query tuning? Then check out this treasure trove of performance tuning advice!
Optimization Phases and Missed Opportunities and
Working Around Missed Optimizations
Paul White (b | t) writes two fascinating blog posts that go hand-in-hand concerning query optimization. He goes into some deep details about how the query optimizer works, comparing various versions of SQL Server, and shows you several useful ways to assess query performance. Plus, there’s one handy trace flag too!
Observer Overhead and Wait Type Symptoms
Joe Sack (b | t) does a deep dive on “observer overhead”, that is, the overhead caused by whatever tool or method you use to monitor SQL Server performance and the impact which this overhead exerts on the wait statistics accumulated by SQL Server. Wait stats are my first-line defense in the war against poor performance, so this is a very important article for anyone learning or using wait stats.
Understanding What sp_updatestats Really Updates
If you assume that sp_updatestats does pretty much the same thing as the Update Statistics command, like I did, then you’d be wrong. Read this informative post from Erin Stellato (b | t), of SQLSkills.com, and also discover a useful script to help determine when a manual update of index statistics is needed.
I learned a lot from these articles. What about you?
-Follow me on Twitter!
Great Articles at SQLPerformance.com
There are so many good articles from SQLPerformance.com this ICYMI article that it’s hard to know which are best to highlight in the limited space. So, I’ll be arbitrary and simply choose a few of my favorite entries as we look back:
Troubleshooting SQL Server CPU Performance Issues
This outstanding article from Joe Sack (b | t) of SQLSkills steps you through a methodical and insightful series of DMVs and queries that can pinpoint CPU issues on your SQL Server instances.
Don’t just blindly create those “missing” indexes!
Aaron Bertrand (b | t) discusses ways to get better and more balanced information used in decisions about creating new indexes than offered as suggestions by native SQL Server tools.
The Myth that DROP and TRUNCATE TABLE are Non-Logged
Paul Randal (b |t) at SQLSkills.com refutes the age-old myth that TRUNCATE TABLE and DROP are not logged operations. I love the full T-SQL reproduction of the issue so that you can see the internals in action.
Query Tuning Insight at Answers.SQLPerformance.com
More great query tuning tips and techniques are coming in at http://answers.SQLPerformance.com every week. Get involved! Start uploading your own difficult SQL statements, read the clever solutions to other query tuning challenges, and provide your own feedback. I always learn from Paul White (b|t), when I read his solutions to tough query turning problems. Here are a couple of my favorites:
Why doesn't Query optimizer eliminate unneeded left join in view with Pivot?
Microsoft MVP Michael Swart (b | t) and Paul White discuss a query which delivers a bad plan and, in the process, go into a deep dive about how and at what stages the SQL Server query engine might simplify a query execution plan by removing unnecessary joins.
I want to optimize this query execution to improve its duration
Paul White dives into an interesting situation where a normal-seeming query causes intermediate work sets to spool to physical disk, thereby causing the query to run much too long.
How does SS determine JOIN operator row estimates?
Once again, Paul White teaches me new things. This time he shows how to better understand and fix JOIN cardinality estimates.
Let me know what you think! Thanks,
-Follow me on Twitter!
Don't miss these great articles on SQLPerformance.com from the industry’s top experts:
A Look At DBCC CHECKCONSTRAINTS and I/O
Erin Stellato (b | t) of SQLskills takes a deep look into the I/O impact of running DBCC CHECKCONSTRAINTS, including explaining why some check methods may consume a lot more I/O than others.
The Halloween Problem, Part 1 of a 4-Part Series
Paul White (b| t) provides unique insight into a long-standing data modification issue, the infamous Halloween Problem. Much has been written over the years about understanding and optimizing SELECT queries, but rather less about data modification. This series examines an issue specific to the data modification statements of INSERT, UPDATE, DELETE and MERGE queries.
-Follow me on Twitter!
Update 09-Mar-2015: The original PASS links I provided were behind a firewall. Thanks reader MMcDonald, we have a working link on YouTube.
One of the benefits of joining PASS is that you get access to their expansive library of conference videos. (Membership is free. So join now. What'dya want, a hand-written invitation?!?) I want to take a moment to point out a good one that I think anybody who writes SQL code on SQL Server should watch.
If you know anything about the staff here at SQL Sentry, then you’re probably expecting me and my colleague Microsoft MVP Aaron Bertrand (b | t) to be doing double-duty at any conference we attend in both the booth and as a conference presenter. Well, you certainly wouldn’t be wrong. :-)
Between the two of us at the PASS Summit 2013, we participated or led in:
- Three “First Timer” Orientation Sessions, with Microsoft MVP Kendal Van Dyke (b | t)
- The opening night Reception and Quizbowl
- The Women in Technology (WIT) Luncheon
- Two Spotlight sessions with a technology focus. (Click the picture at above to watch the video for the session Ten Query Tuning Techniques Every SQL Programmer Should Know. Aaron has posted extras like PowerPoint and Samples as well!)
- Two regular sessions with a professional development focus
Now, it's time for Aaron and I to figure out what we're going to submit to the PASS Summit 2015. What kind of suggestions do you have for us?
-Follow me on Twitter!
The SQL Sentry forum for SQL Statement Tuning
Have you ever looked at our community site specifically dedicated to helping users tune their SQL queries, http://answers.SQLPerformance.com?
You can easily upload an execution plan directly from our free Plan Explorer tool or from good ol' SQL Server Management Studio. Once uploaded, our internal team and forum members will provide plenty of tips and input on how to improve the plan and/or explain what the plan is actually doing. The renown SQL execution plan expert, Paul White (b|t), is the moderator of the site. But there are many other experts like our CEO, Greg Gonzalez (b | t), and Aaron Bertrand (b|t) on hand to provide additional insight. I pipe up from time to time as well.
Call to action – start posting your own execution plans, reading about the issues in other plans, and take part in the conversation!
You might not think of a discussion-based website as part of a product. But in this case, it truly is an integrated part of our Plan Explorer tools. You can upload an execution plan directly from our free Plan Explorer tool with a single click or you can use good ol' SQL Server Management Studio to save and then manually upload your execution plan.
Fancy yourself as a SQL expert? Then help tune this monster query!
Take a look at this most recent posting that was our 2015 SQL Cruise Hairy Execution Plan winner at https://answers.sqlperformance.com/questions/2595/sqlcruise-carribean-2015-hairy-execution-plan-winn.html. I'm not sure if you can read the small print in the plan steps below, but those are TRILLIONS of records moving between plan operator steps!
Now, we don't usually take pride in a really bad SQL query, but the entries in the Hairy Execution Plan contest are an exception to the rule. These are queries that are so horrific, they're like a car wreck on the highway - you have to slow down to examine them in greater detail, and then breath a sigh of relief that it's not your job to fix them. :-)
Here are a couple early examples of what you can expect at Answers.SQLPerformance.com:
Optimize this Sort operation
Paul White (b| t) gives a questioner a comprehensive analysis of a difficult execution plan. It’s well worth a read if for no other reason than to see in action Paul’s mastery of these difficult problems. It’s literally free consulting of the highest caliber!
How to tune a slow query using spatial indexes
Aaron and Bob Beauchemin (b|t) of SQLSkills.com give pointers on how to improve this long-running query which uses spatial indexes and data types.
Why the Lazy Spool operation?
Paul White (b| t) gives a highly-detailed exposition on how SQL Server uses the lazy spool operation in this query to achieve better performance. (Image above is from this entry).
Plan Explorer is so Free, We don't even ask for an email address!
If you’re a user of Plan Explorer but are not familiar with http://answers.sqlperformance.com, be sure to read Aaron Bertrand’s post about these new features at http://www.sqlperformance.com/2013/02/t-sql-queries/plan-explorer-upload-feature.
And, if you haven’t already, download a copy of the free or PRO version of Plan Explorer at https://www.sqlsentry.com/products/plan-explorer/sql-server-query-view.
Do you have a Plan Explorer story to share? I'd love to hear it.
-Follow me on Twitter!
Want to learn more about SQL Server? Now's a good time to get a full day of inexpensive high-quality training on the coast in March and the west coast in April.
I hope you'll join me for a full-day troubleshooting and performance tuning workshop on the Friday preceding the Richmond, VA SQL Saturday in March. And in April, I'll be on the west coast presenting a full-day high-performance configuration tuning workshop preceding the Huntington Beach, CA SQL Saturday.
As you probably know, I speak at a lot of conferences and events. Here are other upcoming events where I'll be speaking:
- Mar 04, 2015 - Mar 07, 2015, SQLBits XIV - London, United Kingdom: SQLBits is one of our favorite conference events among the many around the world that we attend. Both Aaron Bertrand (b | t) and I will be delivering sessions. Come join us at the biggest and best SQL Server event in Europe!
- Mar 21, 2015, SQLSaturday #381 - Richmond, VA: I’ll be delivering a full-day, pre-conference seminar and sessions at this SQLSaturday at the SouthSide ECPI Campus located at 800 Moorefield Park Drive, Richmond, VA 23236.
- Apr 11, 2015, SQLSaturday #389 - Huntington Beach, CA: I look forward to visiting friends and family on this trip, plus deliver a full-day, pre-conference seminar and sessions at Goldenwest College, 15744 Goldenwest Street, Huntington Beach, CA 92647.
- Apr 27, 2015 - Apr 29, 2015, Microsoft Ignite - Chicago, IL: It used to be called Microsoft TechEd, now it is called Ignite. This is where the best and brightest minds in the Microsoft world get together at one event. Come see the whole team as we hang out in the Exhibit Hall!
- May 16, 2015, SQLSaturday #392 - Atlanta, GA: SQLSaturday is a free training event for SQL Server professionals and those wanting to learn about SQL Server. And we’ll be in Atlanta, for the biggest SQLSaturday of them all. This event is at Georgia State University, 3775 Brookside Parkway, Alpharetta, GA 30022.
- May 18, 2015 - May 21, 2015, SQLintersection - Scottsdale, AZ: Aaron and I will be delivering sessions at this SQLintersection, an event for developers and IT professionals alike.
Let me know what you think. Thanks!
Follow me on Twitter at http://twitter.com/kekline.
Have you read any of the great articles on SQLPerformance.com? The deep-dive technical info comes from the SQL Server industry’s top experts. Here are a few great articles from the early days of the website, January 2013:
Generate a set or sequence without loops
Aaron Bertrand (b|t) provides detailed performance information about a variety of methods used to generate sets and sequences in this first in a three part series.
Selecting a Processor for SQL Server 2012
Glenn Berry (b|t) of SQLskills.com sheds light on the best CPU to select for your new SQL Server 2012 installation, an especially important insight considering Microsoft’s move to core-based licensing. The wrong choice could cost you a fortune. A lively discussion also made this article even more enjoyable.
Trimming More Transaction Log Fat
In a follow-up to his December 2012 article, Paul Randal (b|t) of SQLskills.com dives into subtle performance problems that can cause bloat in the transaction log and slow its performance.
Let me know what you think!
-Follow me on Twitter!
When I walked into the welcome reception at the 2014 PASS Summit in Seattle last year, I have to tell you that I was a little verklempt. I had a moment of "My baby has all grown up!" The event was so packed with people, so well executed, and so flashy. Thomas LaRock (b | t), the current president, and the rest of the board of directors have simply done a fantastic job growing and leading the organization. Comparing the 2014 Summit to the original 1999 Summit in the conference space of the Chicago Sheraton that cold September was quite a bit like seeing your little daughter coming down the stairs in her prom dress to when she was in pig-tails on the backyard swing set. You just have to take a deep breath and rejoice, with a hint of sentimentality and nostalgia.
And just like with my teenage daughters, I'm not above giving the PASS board of directors a piece o'my mind. So here are a few suggestions that I think could further improve the organization and offer a lot of value back to the community. And rest assured, none of these will include "Get back up there and put on something decent!"
PASS Summit 2014 By The Numbers
1. Salary & Workplace Survey: I speak at a lot of SQL Saturdays around the world every year. A common question I get, usually in private after delivering a professional development session, is "Am I being paid fairly?" A similar question I get is "I was offered a job at the rate of 123. Is that good?" Usually, just in asking the question, I know the answer is "Probably not". After all, if you don't know what you're worth, you're not likely to get it. Sometimes, you might work for an unusually fair-minded organization which pays at or above market rate. But that's a rarity and not the norm. The best advice I can offer for most people is to point them to the Information Week yearly salary survey, which is the best survey of salary and pay rates in our industry that I'm presently aware of. (If you know of other good salary surveys, let me know in the comments). However, it is a broad but not deep IT industry survey with as many responses from devs and admins as from data professionals, let alone Microsoft SQL Server professionals. One of my words of advice to IT pros in leadership trying to find a way to establish their "cred" is focus on the thing(s) that only YOU can do. If, for example, you're the only person on the dev team who is a really competent presenter, then do more presentations - to other teams, to management, to new hires - since lots of other people on the team are competent developers. It makes you memorable and invaluable. To continue the analogy, a well-executed salary survey is something that PASS can do in a way that nobody else can. And in our community, who wouldn't want to know how we're doing as a profession - by industry, geography, company size, and a bunch of other dimensions? Ideally, PASS would conduct a yearly salary survey, also collecting valuable information about workplace attitudes, parameters for productivity, and employer relations. This could also be a new opportunity for PASS to flex some data analysis and visualization muscle, and to give a team of volunteers some cool opportunities.
2. Third-Party Software Assessments a la Consumer Reports: The buy-or-build decision is more important than ever as executive management puts increasing pressure on IT organizations for greater responsiveness and speed of execution. And one of our best ways to be responsive and fast is to buy a good product that meets our requirements rather than build it ourselves. (By third-party software, I mean products designed to satisfy a specific line of business need, such as an inventory management system, a resource scheduling system, etc). And yet, we're encountering third-party products of startlingly poor quality and/or oafishly bad security every single day. I was in a SQL Server security session delivered by the esteemed Brian Kelley (b | t) in Charleston late last year where he described a third-party employee badge management system (y'know, the kind that controls who gets in which doors of the building) that required a blank SA password... ON. A. SECURITY. SYSTEM! Outrageous. I recall thinking to myself "I call 'shenanigans'. A company selling products like that needs a flogging". It's so outrageous an example among multitudes (how many times have I seen third-party apps without any indexes?!?) that the public should know about it. And PASS has the industry-wide gravitas to do something like this without being capricious or arbitrary. Again, this could be a volunteer-driven effort in which various third-party and vertical applications are assessed on a handful of topics, such as security, database design, and code design. It could be a grade score, up/down score, or merely "passed". I don't care which, as long as I'm informed of which loser products to stay away from.
3. Advocacy: For the first couple years of PASS' existence, there was a board portfolio dedicated to advocacy. This portfolio was dedicated to collecting and pushing community sentiment back to Microsoft for things like new features, user experience, and product satisfaction. (If you've been a SQL Server person for a long time, you might remember the now defunct email@example.com mailbox where you could request a feature). The advocacy portfolio was dissolved when Microsoft implemented the Connect program, since you can use that site suggest bug fixes, comment on features, and otherwise seek engagement with Microsoft. So why would I suggest that PASS invest time and energy in advocating for specific and material action when Connect already exists? Basically because Microsoft doesn't seem to be paying more than perfunctory attention to Connect. The most common complaint among my MVP brethren is that everything gets marked as "Will not fix". With a PASS advocacy stakeholder, it becomes possible to come back and say "No, really, this is very important to us!" In addition, Connect doesn't provide a means for dialog. Here's an example, what if you wanted to have a discussion around which features are in Enterprise Edition compared to those in Standard Edition. That's a little too broad for a Connect entry. At present, the only way you can make your feelings known is passing them along to an MVP or to someone who works on the team at Microsoft. After that, you're out of options. So I think the time has returned for PASS to provide a community-based method for advocacy of features and product priorities.
And an honorable mention - Technical Fellows: A surprising fact I learned back when I was still a board director for PASS wrangling with Microsoft Learning about the creation of a high-level certification, which later became the MCM, was that the experts who contributed to the creation of the certifications could never receive the certification itself. Of course, that makes sense in hindsight, since the certification creators have unparalleled insight into the success factors of the certification. Yet, it seemed somehow unfair. I will allow that the Microsoft MVP program is probably an acceptable substitute for the merit in many cases. Except that Microsoft employees cannot get the MVP nod either and, in some cases, there are Microsoft employees who go way above and beyond their job requirements in the services of the wider SQL Server and data professional community. And so this discussion might dead-end right there. When I began to mull over this certain cadre of people who deserve an added bit of recognition, my mind went back to the IEEE Fellows program. Putting 'Technical Fellow' on your resume is a big deal. If you're not familiar with exactly the degree of prestige associated with that credential, then definitely read the IEEE program description. But, again, it somehow seems not quite right that some of our greatest independent luminaries, such as Adam Machanic (b | t) and Greg Low (b | t), or some of the great former Microsofties, like Donald Farmer (b | t) and Paul Randal (b |t), are omitted from the highest honors.
So what do you think? Do these suggestions have merit? Or are they good, but not as good as another idea you have? Care to share?
I'm looking forward to your comments! Best regards,
-Follow me on Twitter!
-More content at KevinEKline.com