The Scientific Method: a call to action

  • Brandie Tarvin (5/28/2015)


    Kyrilluk (5/28/2015)


    In other words, the call to scientific method is good but is useless in certain aspects. It's good when everyone can reproduce the research (such as whether a CTE is better than a derived table) but uninteresting when it's based on non-reproducible research ("in my company only DBAs have sysadmin rights because we had developers that screw up stuff in the past").

    A bit like in science in general. You have highly reproducible research (such as measuring the weight of an electron or the correlation between to quantum state) ,research that is not (climate science, anthropology, etc) and the stuff that is in between (psychology, sociology, economy).

    And there we touch the nub of the issue. I can run all sorts of scientific method analysis against my databases, but because my database schemas and datum are different from everyone else's, there's no guarantee that I can create a scientific method that will produce the same results for anyone else.

    Why yes, I could create a fake db with pseudo data, but then while everyone else will be able to use that to produce (or not produce) the same results and analysis that I provided, it won't necessarily hold true results comparable to the databases I work with daily. And I certainly can't expose that structure or datum to the rest of the world because SOX, HIPAA, PII, and pink slips.

    So, while I agree in general that we need to approach everything with a scientific method, I think we also need to accept the caveat that "as always, when comparing results in relation to your version / setup of SQL Server, the answer is 'it depends'."

    And this was the same point I made earlier. It's still a version of the scientific method in that you're a. NOT applying principles blindly with no proof whatsoever, and b. backing up whatever your local decisions are with facts and testable content which holds true in your specific environment.

    Chances are good that the very large majority of the testable scenarios we collectively come up with will be true in every local instance, but there are some where the "universal truth" won't apply, and the local conditions take over. We can still apply the same patterns, since it gives us the mechanism to understand why we went down a specific path (hopefully used as an explanation later when and if those local conditions change again or hit another tipping point taking you somewhere else).

    ----------------------------------------------------------------------------------
    Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?

  • Eric M Russell (5/27/2015)


    One of the advantages of a medieval style IT shop, where the rules are not spelled out on paper, is that you as the DBA can simply lord it over the database realm. If you don't want developers to have DBO or SYSADMIN permissions, then just remove it. In an environment like that, executive management doesn't listen to complaints from the small folk; they just want stuff to work.

    No, medieval style is where the CEO's cronies determine what happens, who gets access to what, and who controls which, and take thos decisions on teh bases of cronyism not competence. So it's a bit disadvantage of a medieval style IT shops that the DBA can lord it over the database realm and cost the company vast amounts (in recovering errors and making the lowly developers need to write amnomaly avoidance code and generally code around the blemishes in his god-awful schemata) and never be exposed because he will never grant access to anyone competent so that no-one can compile a dossier of the costs his incompetence has entailed.

    Tom

  • meilenb (5/24/2015)


    Everyone knows that CO2, CH4 and N2O are factors in climate change. CH4 (refrigerants) ....

    We may very well see the end of civilization while 2% of climate scientists banter about on the science of climate change.

    I suspect that the who methane (CH4) production from refrigeration worldwide is a rather small fraction of that generated by dairy cattle and other ruminants. We could of course kill off all the ruminants and go over to pulse-based diets, but I suspect that methane generated by human digstion would then outweigh that arising from refrigenration.

    And you should remember that certain gasses formerly widely used in refrigeration but now banned reduced warming (they damaged the ozonelayer).

    Also, It would not be unreasonable to suggest that controversy about man-driven global warming might have been less if (a) the advocates acted in good faith, instead of attempting to conceal their data sources and (b) they managed to produce accurate predictions of future things, instead of merely being able to juggle parameters in their models to better fit past things. Maybe climate science hasn't abandoned teh science method to quite the extent that string theory has, but some of its practitioners have come pretty close.

    Tom

  • Matt Miller (#4) (5/27/2015)


    To get this back on target: the whole point of bringing in the scientific really boils down to some form of humility. This really boils down to us exposing our mindset and the framework by which we made decisions. The whole point of the proof is to set up a language whereby we express "this is what I think and this is why I think so". It actually allows for a civilized discussion when the landscape or assumptions change. So instead of mandates being fired down from above (whether above happens to represent management, the DBA's talking to Dev or vice versa), there is a way to show the other side of the conversation the *why* behind the *how*.

    Very true.

    Tom

  • Lynn Pettis (5/28/2015)


    meilenb (5/27/2015) ...

    Oh and we don't need to sit here and sling insults. You've got 2 under your belt.

    Only problem here, I haven't slung ANY insults. You'd know if I did. Saying your point wasn't made isn't an insult, neither is saying you couldn't read when you started "blaming" the wrong person for what someone else said.

    I'm not saying we aren't screwing up our environment. What I am saying is that Climate Change is NOT settled science. There are too many issues around this and too many discrepancies in the published works on both sides for any one to consider this settled in any way. No one on this thread ever mentioned politics or religion until you brought it up and I will ignore the politicians when it comes to this topic. Sorry, they are not experts in this area no matter how much they think they are.

    Insulting isn't your style either.

    😎

  • Gary Varga (5/28/2015)


    Wow. This thread has reduced to playground antics.

    At the risk of continuing it, here are my opinions:

    • Too many people are using non-scientific arguments in the climate change debate.
    • Someone using an invalid argument doesn't invalidate their assertion, just their reasoning i.e. the claim that we are not causing global warming is not invalidated by someone claiming that it is due to religious reasons. It is equally invalid to claim the counter is more valid by the opposition's use of an invalid argument i.e. someone using religion as an argument does not change the facts.
    • Facts have a half life. Science is continually adjusting to changing understanding.
    • Trolling is just poor form. Stop it.

    BTW My opinion are that we ARE polluting the world for ourselves and we MAY be altering the climate and probably are. I also think that the existence or not of a deity is not affecting the climate.

    Thanks! I'm sure everyone has an opinion on various science issues, but I really respect Gail's database knowledge and it seemed clear to me that she published this article to advance the scientific method approach to databases, not to hash out those other debates. It's out of respect for her effort that this thread should stay on that topic, in my opinion.

    - webrunner

    -------------------
    A SQL query walks into a bar and sees two tables. He walks up to them and asks, "Can I join you?"
    Ref.: http://tkyte.blogspot.com/2009/02/sql-joke.html

  • Erm, not sure what you are saying when you say "Thanks" webrunner. Sincere or sarcastic what matters to me is that I agree that the editorial was great and we should stick to databases here. Too easily distracted.

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Ed Wagner (5/27/2015)

    The point is not valid and neither is the data. Ask 10 scientists about global warming data and you'll get 10 different answers. Ask the same scientists about climate prediction models and you'll get 10 more different answers.

    Really? Here's a challenge then, find one reputable peer reviewed source from a reputable scientist working in the area of climatology or associated field claiming to disprove man made global warming. If you can, then check to make sure it's not been effectively rebutted. I think you're going to find that something of a challenge.

    As for prediction models, well of course they're being refined. That's what you do with a model - you suggest a model, test your predictions against outcome and refine. Scientific method, simple as.

    It's not something that is seriously questioned, to be honest.

    http://www.theguardian.com/business/2015/may/22/shell-boss-endorses-warnings-about-fossil-fuels-and-climate-change

    I'm a DBA.
    I'm not paid to solve problems. I'm paid to prevent them.

  • Please folks... there's a time and a place for everything. I realize that it's an important subject but let's not turn this wonderful thread into a "global warming thread".

    --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)

  • Alan.B (5/27/2015)


    meilenb (5/27/2015)


    Alan.B (5/27/2015)


    Lynn Pettis (5/27/2015)


    meilenb (5/27/2015)


    Alan.B (5/27/2015)


    Emph. mine

    meilenb (5/24/2015)


    ...

    Everyone knows that CO2, CH4 and N2O ...

    How is the science clear on climate change when the scientists can't agree? Plus, the scientists claiming global warming is true can't explain why all their climate models are wrong in their predictions.

    As far as I am concerned, this is not a done deal.

    +1

    There it is Alan. You have just proved that politics and religion trump science. This explains your repulsiveness to my post -- say no more.

    My point is valid...

    Thanks

    This is the last I'll say about this and move on.

    Though I don't think that SSC is a good forum for the point that you attempted to make, I agreed with what Lynn said and felt a "+1" was in order; nothing religious or political about it. I have some very well researched and informed opinions about the topic you attempted to inject but this is a technical forum about SQL Server. Gail's article about Scientific Method was in that context; this is why she used the join on string example.

    SQLServerCentral is, IMHO, hands down the best resource for learning about MS SQL in the universe. It is my "home"; it has changed my career. Regardless of if you are right or wrong, the problem with making bold scientific/political statements as you did is that it turns this forum into something that it's not. It turns it into something less that what it was before your comment.

    You have 15 points. That means that you have made 15 contributions to these forums. I just reviewed your last 15 comments and you have insulted a few people, attempted to insult me (I think) but have not contributed anything that helps people become better Developers, DBAs, BI practitioners, etc. I believe you are missing an opportunity to learn or teach somebody something useful. If you have a way to make my queries faster I'd love to hear it. If you have some SQL related questions you will get answers. If you don't have either then I suggest that you find something else to do with your time.

    Aye - very fair point. I've replied on the subject myself on this thread and you're right, on reflection it does detract from the discussion on what is a very, very good article indeed.

    If there's a place for a discussion on scientific method relating to subjects other than those covered by Gail here, it'd be on it's own thread in Anything That Isn't About ... if anyone cares to start one.

    I'm a DBA.
    I'm not paid to solve problems. I'm paid to prevent them.

  • andrew gothard (6/12/2015)


    Aye - very fair point. I've replied on the subject myself on this thread and you're right, on reflection it does detract from the discussion on what is a very, very good article indeed.

    I thought global warming was a perfect counterpoint to the article, I have lots of interest in our behavior in matters where the basic scientific method cannot be applied. After all, when you can't really run a test at scale, the best you can do is investigate with other means. Even without global warming, and even in our areas of endeavour, there are matters that aren't trivial to test like the simple integers versus varchar behavior in indexes.

    But I know I run counter to many of the themes here, for instance, I find value in "best practices", and try to learn from those who HAVE experienced what works and doesn't, especially in areas that I simply don't have the sort of resources to duplicate their experiences. But I know that sort of thing isn't very popular here, and I can accept that too so its all good!

  • patrickmcginnis59 10839 (6/12/2015)


    andrew gothard (6/12/2015)


    Aye - very fair point. I've replied on the subject myself on this thread and you're right, on reflection it does detract from the discussion on what is a very, very good article indeed.

    I thought global warming was a perfect counterpoint to the article, I have lots of interest in our behavior in matters where the basic scientific method cannot be applied. After all, when you can't really run a test at scale, the best you can do is investigate with other means. Even without global warming, and even in our areas of endeavour, there are matters that aren't trivial to test like the simple integers versus varchar behavior in indexes.

    But I know I run counter to many of the themes here, for instance, I find value in "best practices", and try to learn from those who HAVE experienced what works and doesn't, especially in areas that I simply don't have the sort of resources to duplicate their experiences. But I know that sort of thing isn't very popular here, and I can accept that too so its all good!

    Well said.

    There are a lot of people on this thread that can't connect the original post to a broader sentiment. They are hung up on ints and strings and these Soviet Commissars don't want you to think.

    The original post used ints and strings as an example. I did not interpret it to limit the conversation to this. It was a call to return to scientific methods.

    Climate change is a perfect example of our failure to accept the call to arms.

  • Yes, the Scientific Method is a lot more work than making unsubstantiated claims and hitting publish, but it's also a lot more likely to produce a post that's useful, and less likely to attract a pile of comments refuting it.

    So, who's in?

    I'm in Gail.

    Some other people have mentioned it but it's worth repeating... The 1 Million row test harness has become a very powerful tool in helping me learn about SQL and teach others about it. There are a lot of people out there that say, "never do that X, that's bad for performance"; the 1 million row test harness is a quick an simple way to put these kind of statements to the test.

    The other thing is to learn how to test correctly. I have assumed that technique A is better than technique B based on comparing the query plan between the two. I did that for a long time. I have discovered that testing SQL queries is an art unto itself. Developing good queries is not just about knowing the best techniques to develop SQL but also knowing the best techniques to test your SQL.

    "I cant stress enough the importance of switching from a sequential files mindset to set-based thinking. After you make the switch, you can spend your time tuning and optimizing your queries instead of maintaining lengthy, poor-performing code."

    -- Itzik Ben-Gan 2001

  • With that in mind and for those people that exclaim, "OK. You sold me. Where the hell do you get a million rows of test data?", the answer is that it's simple and quick to make your own. Please see the following two articles for a good introduction to the art and then use your imagination.

    http://www.sqlservercentral.com/articles/Data+Generation/87901/

    http://www.sqlservercentral.com/articles/Test+Data/88964/

    --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)

  • I have to say it again, I love this article.  Thank you, Gail, for writing it.

    The only bad part about it is that the people that really need to read it probably won't.

    The other bad part is when people write bad tests that look like good scientific tests but actually aren't.  For example, a lot of the testing of (particularly) the XML method of splitting strings fall into that category, for example.  Their faulty "grooved" test data causes an extreme bias in the test results but convincing of them of their error (even with code that proves their test data is faulty) is frequently met with them shutting down comments on the post or simply not posting the comments of others on "moderated" sites.  It's the problem that Gail cited in the article that boils down to a "one and done" test and an extreme problem with ego.  It's kind of like having a hypothesis of "Why did the chicken cross the road" and then coming to the conclusion that all chickens cross the road.

    --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)

Viewing 15 posts - 121 through 135 (of 168 total)

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