In my day to day work I interact mostly with experts in the field of database technology and database administration. Every once in a while I get a gentle reminder that not everyone is an expert. Those reminders often come from forum questions from newbie and intermediate DBAs. When I come across one of these questions I’m thankful for it. It’s a great reminder that there is a spectrum of experience level out there.
Believe me, it’s hard work to make a feature easy for a newbie while at the same time powerful for an expert. One of the tricks we use to accomplish this is the script option on dialogs in SSMS. The dialog supports newbies (either new to SQL Server or new to the feature) whereas the scripting support gives them the option to learn what’s happening behind the scenes and build their expertise.
As we develop a new feature we’re intrinsically the resident expert. We take for granted certain knowledge of the internals. If we don’t challenge this we can easily end up shipping the wrong experience which can result in a few bad things, such as delaying the adoption of a new feature. One of the easiest ways to avoid this trap is to conduct usability studies early and often. We recruit DBAs of all experience levels and have them run through various tasks. Sometimes we got it right (when this happens we like to high-five each other and talk about how awesome we are) and other times we have to go back to the drawing board and make corrections in the experience (these are far more somber moments).
As a DBA I’m sure you encounter newbie through to expert users (other DBAs, developers, and end users). Do you change the way you interact with each person based on their experience level? next time you have a newbie come to you with a question, think about how you can help them become an expert.
You have to treat each person a little bit different. When you're dealing with newbies, they mostly come to you wanting to become better and learn. Sometimes they're easier to deal with than experts.
Occasionally you will get experts who are convinced they know better. Working with them can be more difficult than working with the newbies.
As I grow in my SQL knowledge I try to always remember there is always a better way of doing things. If someone presents a different way of doing things, I want to see the performance analysis of their way versus mine, before I make any judgment calls on who is right and who is wrong.
That way we both can learn from each other, and both get closer to becoming experts.
A thought: What if there was a link on each script saying (to the effect) "you'd be an expert on this topic if you knew this, that, and the other thing", with links to BOL.