Importance of Community

  • I was inspired to post about this from Steve's excellent editorials.  I hope this is the right place for it.

    I recently realized it's been almost a year exactly since I last posted anything here on sqlservercentral.  The reason for that is not quite clear to me.  During my accidental DBA days, this site was a lifesaver.  As time went on and I developed my skills I found myself asking fewer questions and trying to help others instead.  I felt compelled to pay it forward even if I didn't always have the best answers.

    Eventually, I took some advice from folks and convinced my boss to send me to PASS 2019 to learn new things and get more involved with the SQL community.

    I got a chance to meet a lot of great folks along the way including some random guy. 😉 (see image below). However, I was quite surprised how much I really enjoyed the "birds of a feather" lunch.  Sitting around a table and casually talking with folks who knew all too well about the trials and tribulation of being a DBA was great!  We exchanged war stories, solutions and had some great discussions.  It was a great experience for me overall and was looking forward to next year's pass...then Covid happened.

    We left work and started working from home.  I didn't even see my co-workers never mind other people in the community.  I also went from a team of 1 to leading a team of two and I got very busy.  Somewhere along the way I just stopped popping my head in a little less and then just not at all.  I'm not sure if the world will ever be the same but I'm back in the office and little by little things are starting to feel "normal" again.  So maybe now is as good a time as any to reflect on the importance of community.  We should remember that we are not alone, that we always have new things to learn, and help is always around the corner.

    I hope we haven't seen the end of LIVE conferences such as PASS.  I'm still hoping to thank a few people in person such as Steve Jones for establishing such a great community here and Jeff Moden for making me look like a rockstar with his awesome Tally & Hierarchy articles.  I wanted to tip my hat to Erin Stellato who had the best presentation I attended during that conference.  She is a fantastic speaker!  Lastly, thank you Grant for taking the time to chat me up and taking a picture. (I know I'm a little late)

    IMG_0507


    SELECT quote FROM brain WHERE original = 1
    0 rows returned

  • Your story sounds a lot like mine, except I don't lead a team... I'm just a member of a team of 3 DBA's who do non-DBA things (like development work) too.

    Slowly phasing out the database work for more application management and moving more and more applications to the cloud and using more and more out of box solutions rather than building things in house.  I still enjoy the DBA side of things and post on here to try to help people and to learn.  My solutions are not always the "best" or most efficient or sometimes are just plain wrong; but that's how I learn.

    I do miss attending meetings in person and speaking (I could still speak, but life has been very busy and I haven't had time, but plan on speaking again soon), but the virtual conferences are still awesome and I encourage any DBA or DB developer or even just the SQL curious to attend.  Especially since PASS went free this year!  Data Platform Summit is another awesome event that I would recommend all SQL people look into.  And any SQL Saturday you can get your hands on or a user group.  There are tons of free user groups with tons of awesome speakers!

    PASS is where I met so many smart people and learned so many cool tricks with SQL that I'm sure a lot of people just take for granted that everyone knows.  There are so many smart people in the SQL community and they are willing to share their knowledge for free (or sometimes even at a cost if you need to travel to an event).  That is what makes the SQL Server community so awesome!

    The above is all just my opinion on what you should do. 
    As with all advice you find on a random internet forum - you shouldn't blindly follow it.  Always test on a test server to see if there is negative side effects before making changes to live!

  • That dude in the vest is seriously ugly.

    I've spent the last 20 months doing online events. On one level, they're helping people who couldn't/wouldn't ever attend in-person events, which is truly awesome. All the virtual stuff has made it possible to reach some people we couldn't reach.

    However, the level of interaction online is not as good as with an in-person event. The networking is not the same. The Q&A is not the same. While we are getting to more people through all the virtual events, we are absolutely not having as high a level of interaction, by many factors. Personally, I blame millions of years of evolution. We evolved speaking face-to-face. We're better at it than the other, and it has been on display over these 20 months.

    I get that the online experience is more egalitarian since it can reach a radically wider audience. I get that many simply can't afford to make it to something like PASS Summit. I understand these things. However, I'm telling you, the in-person experience is coming back. I was just at an event in Belgium, dataMinds Connect, great event, that was fully in-person, and it was amazing. I had more and better conversations over two days than I've had in 20 months.

    The plan is, without giving away any detail of any kind, to host an in-person event in Seattle sometime next year. However, I suspect it will be at least partly online as well as people try to serve both audiences, the lucky ones who can/will do in-person, and those who can't/won't. We'll see how it goes.

    Also, pleasure to meet you. I hope it happens again sometime. Stay involved. Stay in touch. This community really does make a difference.

    ----------------------------------------------------
    The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood...
    Theodore Roosevelt

    The Scary DBA
    Author of: SQL Server 2017 Query Performance Tuning, 5th Edition and SQL Server Execution Plans, 3rd Edition
    Product Evangelist for Red Gate Software

  • I 99% agree with Grant (that is not one ugly dude).  In-person events get you so much more interaction and discussion than virtual.  Both from the presenter side and from the audience.  In virtual, it is much harder for an attendee to ask a question in the middle of a presentation, and as a presenter it is always exciting to see the "wheels turning" as a question comes up that leads you into your next slide!

    Plus at an in-person event, there are so many non-presentation things going on that it is fun to just wander around and take in the sights and talk to people and discuss things, both SQL related and not.  And the food was always amazing at PASS Summit, and I enjoy travelling!  Plus, the events and swag you just don't get the same thing with a virtual conference. And sight-seeing if you have never been to that location before is pretty fun too.  I wouldn't be against PASS Summit happening at a new location though so I can see some new sights!  It had been in Seattle every time I attended.

    That being said, I have enjoyed being able to attend while working as my budget (both personal and work) for travel and conferences has shrunk down to nothing for this year.

     

    EDIT - Previously it said 100% agree with grant, but it should have said 99% agree with it as I don't think that is an "ugly dude"!

    The above is all just my opinion on what you should do. 
    As with all advice you find on a random internet forum - you shouldn't blindly follow it.  Always test on a test server to see if there is negative side effects before making changes to live!

  • Mr. Brian Gale wrote:

    I wouldn't be against PASS Summit happening at a new location though so I can see some new sights!  It had been in Seattle every time I attended.

    It's funny you mentioned that because I was excited to see Houston when it was announced that PASS 2020 was going to a new location.  My boss had it approved and it was all paid for.  Well, we all know what happened after that...


    SELECT quote FROM brain WHERE original = 1
    0 rows returned

  • Mr. Brian Gale wrote:

    I 100% agree with grant. 

    So you think that's one ugly dude too.

     

    ----------------------------------------------------
    The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood...
    Theodore Roosevelt

    The Scary DBA
    Author of: SQL Server 2017 Query Performance Tuning, 5th Edition and SQL Server Execution Plans, 3rd Edition
    Product Evangelist for Red Gate Software

  • hahaha... no, that isn't what I meant Grant... I am going to edit that to be 99% agree with that.

    The above is all just my opinion on what you should do. 
    As with all advice you find on a random internet forum - you shouldn't blindly follow it.  Always test on a test server to see if there is negative side effects before making changes to live!

  • @Y.B.  Thanks for the awesome compliment on the articles but neither they nor I made you look like a rockstar.  I'm seriously honored that you cited me and them but YOU are the one that made yourself look like a rockstar.  If you hadn't taken any action yourself, they would just be bytes sitting on an electronic page.  Well done to YOU, good Sir!

    As for in-person events... Lordy!  I miss them, as well!  Unfortunately and even though I'm fully vaccinated, I'm in at least two high risk groups (that I'm aware of) and so I'm still in a "wait and see" mode for attending such wonderful events.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

  • Always so modest but let me rephrase things.  The knowledge and skills that I gained from those articles have made me look like a rockstar.  What I love about them (articles) is how many times and how useful they have been over the years.  Sometimes you come across something neat and that solves a very specific problem which you may use once or twice (and then perhaps forget about it).  Other times you may learn something that solves an issue but is then rendered obsolete in newer versions of SQL (not always).  Then there are those times where things make you fundamentally look at problems a different way and you end up with this great tool that you just love keeping around.

    Tally Tables - This is something I often direct people to read up when they are trying to move beyond the basics of SQL.  It highlights a very important thing about how SQL behaves and why thinking about set-based operations is important.  While Microsoft might have since released new functions like STRING_SPLIT & STRING_AGG, there are still many times having a tally table comes in handy.  Especially when creating calendar tables for example.

    Hierarchy - This has simplified my life and made it possible for me to apply it to so many things.  While you highlight and combine a few techniques, it's definitely the Nested Set model that I apply the most.  I've used it for more than just a simple "reports to" hierarchy.  I've modified it to work in a scenario that deals with positions rather than individual employees.  It's also been used in conjunctions with row-level security and Power BI, etc...

    They definitely fall into the "teach a man to fish" category in my opinion. That's what makes them awesome!  Are those the only examples out there? Not even close.  There are so many great people sharing ideas and concepts out there that make it great to be in this community.  What makes those particular articles near and dear to me is this...I started to shift from being reactive and only caring about solving my current issue; to learning about the bigger picture and how I can change the way I do things going forward. I cannot count how many times I've been "saved" by past me.  I have written or designed things that were not necessarily needed just in case.  Only to come back years later with a request that made me think I was going to be in for a huge rework or refactor.  Only for me to read my code or notice a table and go "oh wait, I don't have to do anything because I already built it!".  (or maybe just a small change)  To me personally, that was an important part of my (continuing) journey as a DBA.  So that is why sir, that I've always hoped I could thank you in person.  At least I've been able to convey that even if I never get the chance.


    SELECT quote FROM brain WHERE original = 1
    0 rows returned

  • Now I'm truly humbled and seriously appreciative.  You've cited the very reason I wrote those... a different way of thinking.  Thank you so much for the taking the time to write such incredible feedback.

    Heh... I just had a fun vision wander through my mind.  Can you imagine a "Birds of a Feather" luncheon/discussion consisting of those of us that have embraced and used the concept of Tally/Numbers tables and the understanding of the "Pseudo-Cursors" behind the scenes of SELECT?  That would be one hell of a party with some awesome stories.

    The best part is that Grant and I could have a contest as to who's the ugliest. 😀 😀 😀

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

  • It's a funny thing, Y.B.  I was thinking like Yogi Berra as in "This sounds like Deja Vu all over again".  I was right.  We had nearly this identical discuss years back on the Hierarchies on Steroids thread.

    Thank you again for the code that you posted there.  You should still write an article about that (Lowest Common Manager).

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

  • I almost forgot about that Jeff.  I've always wanted to contribute more but I always feel like someone else has already done it better.  Besides, in the example with Lowest Common Manager, I feel like that is a very specific edge case.  I'll think about it...


    SELECT quote FROM brain WHERE original = 1
    0 rows returned

  • Y.B. wrote:

    I almost forgot about that Jeff.  I've always wanted to contribute more but I always feel like someone else has already done it better.  Besides, in the example with Lowest Common Manager, I feel like that is a very specific edge case.  I'll think about it...

    Sounds like a perfect case of "Impostors Syndrome" to me.  😀 A better phrase for it might be "Humble Disbelief".

    You'll be surprised at how many people might need just exactly the lessons that can be learned from a "Lowest Common Manager" article to solve other problems.  I can tell you up front that I've used such a thing in the world of "eDiscovery" to rapidly classify all the emails on all the branches of hundreds of thousands of emails per case submitted as evidence to determine what was "admissible" and what was "privileged' just by where they appeared on a"tree" in a "forest" of emails in relation to the status of known emails virtually anywhere in the "forest".  It all worked based on the intersection of the branches of the tree which are exactly what your "Lowest Common Manager" code is all about.  If you want, I can even give you a quick overview of that for you to explore as another reason to know how to do such a thing.

    The same can be applied to parts list BOMs to find all top level assemblies that use common parts and at what level those assemblies actually are.

    And I'll just be there are many other applications that neither of us have thought of where someone might read the article and go "Damn!  If I make this one little tweak to the code, it'll be perfect for my application"... just like you've done. 😀

    Write. Teach. Tell the story. Learn in the process.  I already know you can.  I've seen your posts. 😀

     

     

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

Viewing 13 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic. Login to reply