Search results matching tags 'SQL Server', 'DBA', and 'Developer Community'http://sqlblog.com/search/SearchResults.aspx?o=DateDescending&tag=SQL+Server,DBA,Developer+Community&orTags=0Search results matching tags 'SQL Server', 'DBA', and 'Developer Community'en-USCommunityServer 2.1 SP2 (Build: 61129.1)Things I Know Nowhttp://sqlblog.com/blogs/andy_leonard/archive/2009/03/17/things-i-know-now.aspxTue, 17 Mar 2009 09:01:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:12662andyleonard<P><STRONG>Introduction</STRONG></P>
<P>I was <A href="http://weblogs.sqlteam.com/joew/archive/2009/03/16/60874.aspx" target=_blank>tagged</A> by <A href="http://weblogs.sqlteam.com/joew" target=_blank>Joe Webb</A>&nbsp;for this&nbsp;<A href="http://www.straightpathsql.com/blog/2009/2/9/things-you-know-now.html" target=_blank>question</A> circulating through the inter-tubes. </P>
<P>Joe and I shared a cab to the airport after the PASS Summit 2008. If you've never had the opportunity to share a cab with Joe, I highly recommend it. He's one of those people. You know the type -&nbsp;they talk to you for a few minutes and impact the rest of your life in a positive way. A way that still has you thinking months later. Thanks Joe.</P>
<P><STRONG>My List</STRONG></P>
<P>Well, I have to admit I saw some good stuff when following the links to others who've answered this question. I'm going to repeat some of theirs here, but only because I've learned (usually the hard way) the same thing.</P>
<P><STRONG>1.&nbsp;Learn constantly</STRONG>. There are fields out there where you can get trained and then do that&nbsp;work&nbsp;most of&nbsp;your life without having to learn much more.&nbsp;Database work is not one of those fields.&nbsp;Plan to spend some of your time - your own time - keeping up with what's new and on the horizon. </P>
<P>I'm not asking you to fall instantly in love with every new feature you encounter. That would be absurd. But equally absurd is dismissing every new feature - especially the stuff you don't understand or cannot think of a good use for at the moment. Features are added for a reason. Most of them are good reasons, at least to someone. It might not be for you, but will it kill you to learn something new? If I don't understand it, I can't use it - ever. If I do understand it, it becomes another tool in the toolbox.</P>
<P><STRONG>2. Dream big.</STRONG> I was struggling with my new career as a DBA. I felt I was in over my head and, any minute, I was going to be discovered and fired. I am not making this up. About the time I attended the PASS Summit 2004 I got a few successes under my belt - enough to feel more secure in my job but not enough to convince me I knew anything about very large databases in SQL Server. </P>
<P>It was The Year of the Storms in Florida. Orlando looked like it had been bombed. It was ugly, but the conference went on. I stood in line at the hands-on labs to meet Ken Henderson. I was devouring&nbsp;<A href="http://www.amazon.com/Gurus-Guide-Server-Architecture-Internals/dp/0201700476" target=_blank>The Guru's Guide to SQL Server Internals and Architecture</A>&nbsp;along with <A href="http://sqlblog.com/blogs/kalen_delaney/default.aspx" target=_blank>Kalen Delaney</A>'s <A href="http://www.amazon.com/Microsoft%C2%AE-Performance-Technical-Reference-Pro-Technical/dp/0735612706" target=_blank>SQL Server 2000 Performance Tuning Technical Reference</A>. I credit both authors with saving my career, incidentally.</P>
<P>I heard Ken dispensing no-nonsense advice to people. I think some thought to "teach him a thing or two," and he respectfully but firmly resisted this with the gentleman in line in front of me (poor guy). I was next, and was probably visibly shaking in my shoes. I explained to Ken that I was pretty new to large SQL Server databases and&nbsp;was a web developer that had been thrust into a new position at work. I told him about my approach - relying on my engineering training and testing heavily - and explained the symptoms I was seeing. Ken made a few excellent suggestions, which I wrote down and which, unsurprisingly, put me right on top of the issues I was describing. I thanked him profusely and started away. He said "Hey, you're approaching this like I would."</P>
<P>I&nbsp;felt like the kid on the old <A href="http://www.youtube.com/watch?v=xffOCZYX6F8" target=_blank>Coke commercial</A> - the one where <A href="http://en.wikipedia.org/wiki/Mean_Joe_Greene" target=_blank>Mean Joe Greene</A> throws him his jersey. I know it sounds cheesy, but I entered that room as a guy learning databases and left it a database professional. The difference for me was the confidence that I was approaching this problem like <A href="http://www.amazon.com/exec/obidos/search-handle-url/ref=ntt_athr_dp_sr_1?%5Fencoding=UTF8&amp;search-type=ss&amp;index=books&amp;field-author=Ken%20Henderson" target=_blank>Ken Henderson</A> would.</P>
<P><STRONG>3. Live transparently.</STRONG> I blogged about this <A href="http://vsteamsystemcentral.com/cs21/blogs/applied_team_system/archive/2009/03/13/life-work-and-the-theory-of-constraints.aspx" target=_blank>recently</A>&nbsp;but it bears repeating. Treat others like you want to be treated, in public and private. Work hard. Admit your mistakes and do everything you can to correct them and mitigate the damage - all as soon as possible. Help as many people as you possibly can. Don't lie. When the honest answer is "I don't know," lead with that - you can tell folks your best guess after stating you don't know. It's ok, no one knows it all.</P>
<P><STRONG>4. "If it was easy..."</STRONG> My Granny used to say "If it was easy, anyone could do it." (This was the same lady who told me "Son, God gave you a [backside] so you'd have somewhere to land when you fall.") I've experienced failure and I've watched others experience it. It ain't pretty and it's no fun to live through or deal with. Bad things happen when people fail. That's a fact. But you're not judged by how many times you fall down, in my opinion and estimation; you're judged by whether you get up or just stay there.</P>
<P>Get up.</P>
<P>If nothing else, you now know at least one thing that doesn't work. Use that. Leverage it. Build a way that will work from it's ashen rubble. Don't just sit there on your ash. </P>
<P><STRONG>5. Take good advice.</STRONG> A good skill to cultivate is the ability to recognize good advice when you hear it. Note: You may not want to hear good advice. I can guarantee you it's unpleasant when you've messed up. </P>
<P>I'm blessed to be surrounded by people who care about me enough to tell me "Andy, that was a mistake." When they do, I usually don't want to hear that. But I recognize the motive and hear the heart, and know it's good advice. </P>
<P><STRONG>Conclusion</STRONG></P>
<P>That's all I can think of for now. There are no magic formulas or guarantees in life. These are the things I'd share with my younger self if I could write a <A href="http://www.cmt.com/videos/brad-paisley/187138/letter-to-me.jhtml" target=_blank>letter to me</A>&nbsp;and send it back in time.</P>
<P>:{&gt; Andy</P>A Follow-up to Database Professionals: An Enterprise Requirementhttp://sqlblog.com/blogs/andy_leonard/archive/2007/07/13/a-follow-up-to-database-professionals-an-enterprise-requirement.aspxSat, 14 Jul 2007 01:07:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:1717andyleonard<P><FONT face=Verdana color=#000080><A href="http://codebetter.com/blogs/eric.wise/default.aspx">Eric Wise</A> drew some heat from the developer community at <A href="http://www.codebetter.com/">CodeBetter.com</A> with <A href="http://codebetter.com/blogs/eric.wise/archive/2006/08/28/Know-Your-Role.aspx">this post about the need for a DBA during development</A>&nbsp;(see my post on the subject <A href="http://sqlblog.com/blogs/andy_leonard/archive/2007/07/12/database-professionals-an-enterprise-requirement.aspx">here</A>).</FONT></P>
<P><FONT face=Verdana color=#000080>I think Eric makes a couple good points, one explicit, one implied:</FONT></P>
<P><FONT face=Verdana color=#000080>1. (Explicit) A DBA - or Database Developer, more accurately (and <A href="http://sqlblog.com/blogs/andy_leonard/archive/2007/07/10/which-flavor-dba-are-you.aspx">there is a difference</A>)&nbsp;-&nbsp;adds value to development. </FONT></P>
<P><FONT face=Verdana color=#000080>2. (Implicit) There are Software Developers out there who can step into the Database Developer role long enough to solve most database tuning issues. Eric demonstrates this with himself in profiling and addressing a missing or ill-defined index.</FONT></P>
<P><FONT face=Verdana color=#000080>I find most of the comments - presumably by software developers - typical. One developer stated:</P>
<P><EM>My current project didn't have a DBA for 2 years, until recently since we're now at the stage of optimizing for performance. It seems to me that as long as the database is intelligently structured in the first place, a DBA's role would be rather small in most cases.</EM></P>
<P>&lt;sarcasm&gt;</P>
<P>I agree with the sentiment expressed here - as much as I agree that code-generation tools can replace application developers. It's true that you can utilize SQL Server&nbsp;or any database engine as a dumb file store. And it's equally true that you can build an enterprise application in C# that consists of thousands upon thousands&nbsp;of lines of nested If... Then... Else statements. </P>
<P>&lt;/sarcasm&gt;</P>
<P>The question is: Why would you?</P>
<P>This goes beyond arguments over syntax, coding standards, methodology, and&nbsp;design philosophy. This is about putting competent professionals - at the height of their game - into the mix on a project. </P>
<P>You don't have to take my word for it - <A href="http://franksworld.com/blog/archive/2006/07/31/4172.aspx">ask&nbsp;software developers</A> who have worked (or are working) with competent database developers.</P>
<P>:{&gt; Andy</P></FONT>