DBAs Need to Learn to Develop

  • Comments posted to this topic are about the item DBAs Need to Learn to Develop

  • Considering the "DBAs" that I've interviewed in the last six months, I'd say they shouldn't take the time learning more about development... they should first learn how to be a bloody DBA. :blink:

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

  • There are too many people in the technical side of IT who do not have a foundation in IT knowledge. We should all understand binary, logic, declarative programming, functional programming, distributed systems etc. The level of understanding depends upon what role(s) we need to perform but we must all have a broad understanding of the basics.

    Oh, and Jeff, too true :crazy:

    Gaz

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

  • Absolutely all Developers should have a clear understanding of primary and foreign keys and the idea of relationships between tables and how the differences between different query types. ( I used to take this as given )

    Likewise DBAs would benefit from a solid understanding of how FKIDs work in things like Combi Boxes and how subtle changes in UI design can massively improve the usability of their databases and how often users need multiple views of the same information. Also how important it is to the user of responsive design.

    We've recently bought a system and when you edit a record it performs a delete and create ON the SQL record wiping the PKID on the header record. A complete pain in the a*** this is designed in through lack of forethought by the developer. Technically its not an error its just the wrong design. They just assumed we were never going to try and relate that record to another table.

  • Dalkeith (1/7/2014)


    Absolutely all Developers should have a clear understanding of primary and foreign keys and the idea of relationships between tables and how the differences between different query types. ( I used to take this as given )

    DBAs would benefit from a solid understanding of how FKIDs work in things like Combi Boxes and how subtle changes in UI design can massively improve the usability of their databases and how often users need multiple views of the same information. Also how important it is to the user of response design.

    We've recently bought a system and when you edit a record it performs a delete and create ON the SQL record wiping the PKID on the header record. A complete pain in the A*** this is designed in through lack of forethougth by the developer. Technically its not an error its just the wrong design. They just assumed we were never going to try and relate that record to another table.

    I've seen a few systems that do things like that. More often than not it comes from an ORM approach with a developer not wanting to understand database development

  • Gary Varga (1/7/2014)


    There are too many people in the technical side of IT who do not have a foundation in IT knowledge. We should all understand binary, logic, declarative programming, functional programming, distributed systems etc. The level of understanding depends upon what role(s) we need to perform but we must all have a broad understanding of the basics.

    Oh, and Jeff, too true :crazy:

    Ohhhh... don't get me started. 🙂 You said "binary" and "logic". I think that Computer Science and similar degrees should require folks to take a "hand assembled machine language programming" course in the first year and be bounced from the program if they don't get at least a 3.5. They should also have to "three five" a course in technical writing and communication skills.

    --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 think that a DBA can benefit significanlty having developer skills much like I think a developer can benefit significantly having DBA skills. I do however believe strongly that they should be more focussed on their actual role and use the ansillary skills as a perk\benefit not a dependency. You can always interact better with other folks if you can understand their perspective a bit.

    I would be lost without the small dev abilities I have.

    I do however think that more emphasis should be placed on communication, troubleshooting and research. A certified DBA has proven one thing to me. They can read and recite a book. While I know some will find that comment insulting, that is all that is required to pass a test. Now that does not mean that all certified DBAs read a book to take the test. Some may have adequate experience only to be able to pass however that is likely slim. Certifying on a platform validates that you have a baseline of knowledge to improve upon your skills of troubleshooting, research and communication. A quality DBA can be more nimble with better skills at learning and reacting to new situations on the fly than knowing a discreet list of answers. Development skills simply build the portfolio of background abilities and though processes.

  • Jeff Moden (1/6/2014)


    Considering the "DBAs" that I've interviewed in the last six months, I'd say they shouldn't take the time learning more about development... they should first learn how to be a bloody DBA. :blink:

    For sure, but that doesn't mean they shouldn't also learn development skills after.

  • I agree that a DBA should learn how to develop. At the very least they should learn how to use a scripting language (dos batch, bash, cscript, vbscript, perl, powershell). The goal of a DBA is to have a consistent repeatable environment and having the ability to write enough code to automate that process only helps to make you a better DBA.

  • eccentricDBA (1/7/2014)


    I agree that a DBA should learn how to develop. At the very least they should learn how to use a scripting language (dos batch, bash, cscript, vbscript, perl, powershell). The goal of a DBA is to have a consistent repeatable environment and having the ability to write enough code to automate that process only helps to make you a better DBA.

    You left out the most important scripting language of them all for a DBA... T-SQL. I'm shocked and mortified at the number of people that have "DBA" on their resume that can't do a simple joined update.

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

  • Steve Jones - SSC Editor (1/7/2014)


    Jeff Moden (1/6/2014)


    Considering the "DBAs" that I've interviewed in the last six months, I'd say they shouldn't take the time learning more about development... they should first learn how to be a bloody DBA. :blink:

    For sure, but that doesn't mean they shouldn't also learn development skills after.

    Heh... for the one's that I've interviewed recently, there apparently isn't room in the cranial cavity. 🙂

    Sorry... I'm just bitchin' because of the candidates I've had to interview. Keeps me from breakin' stuff. 😀

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

  • Jeff Moden (1/7/2014)


    eccentricDBA (1/7/2014)


    I agree that a DBA should learn how to develop. At the very least they should learn how to use a scripting language (dos batch, bash, cscript, vbscript, perl, powershell). The goal of a DBA is to have a consistent repeatable environment and having the ability to write enough code to automate that process only helps to make you a better DBA.

    You left out the most important scripting language of them all for a DBA... T-SQL. I'm shocked and mortified at the number of people that have "DBA" on their resume that can't do a simple joined update.

    What about a simple joined select? :crazy: I wonder how their databases worked.

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2
  • I agree. I think I'm a much better DBA due to my development background (COBOL/MVS (ahhh!) and .NET) than I otherwise would be if I had just got out of school and started working as a junior DBA moving code changes in and out of production and managing jobs, etc.. I've also worked help desk and network administration (where I was recruited out of) that I believe has helped to inform my system perspective immeasurably.

    I don't generally see developers as the problem. Maybe the Entity Framework... sorry Lerman... 🙂 I think most of the responsibility can usually be laid at management's feet when they won't invest in training and development. This is part art and science as well as a practice and some things are best learned the hard(er) way then solely out of a book. Besides talent, the best DBA's I know also have a lot of experience. Management should aggressively foster that talent and offer opportunities that expose them to different aspects of the system whenever possible. I think spending time on both sides of the fence can help you better identify decision points where you or someone else may be coupling the data too tightly to the application and where the best trade-offs are.

  • Luis Cazares (1/7/2014)


    Jeff Moden (1/7/2014)


    eccentricDBA (1/7/2014)


    I agree that a DBA should learn how to develop. At the very least they should learn how to use a scripting language (dos batch, bash, cscript, vbscript, perl, powershell). The goal of a DBA is to have a consistent repeatable environment and having the ability to write enough code to automate that process only helps to make you a better DBA.

    You left out the most important scripting language of them all for a DBA... T-SQL. I'm shocked and mortified at the number of people that have "DBA" on their resume that can't do a simple joined update.

    What about a simple joined select? :crazy: I wonder how their databases worked.

    Spot on. They didn't do so well there, either.

    I suspect these folks had nothing to do with the actual data/databases. It would appear that most of them survived by using 3rd party tools to do their backups, etc, and were artful dodgers in avoiding doing any real DBA work.

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

  • Jeff Moden (1/7/2014)


    You left out the most important scripting language of them all for a DBA... T-SQL. I'm shocked and mortified at the number of people that have "DBA" on their resume that can't do a simple joined update.

    I don't do them every day, and do them in both Access/JET and T-SQL so the syntax has just enough differences that I may have to google the syntax after a few weeks of not developing. But I can do it.

    Select queries with joins are a breeze though.



    ----------------
    Jim P.

    A little bit of this and a little byte of that can cause bloatware.

Viewing 15 posts - 1 through 15 (of 51 total)

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