Author: way0utwest

  • Training Computer Scientists

    We work in an interesting industry. While I think you can certainly enter many other professions, electrician, plumber, artist, etc. without any formal schooling, programming allows you to earn a very good living with little physical effort. You can also work in any location, even from home. I think the opportunities and requirements open this field up to many more people than previous occupations in the past.

    Of course, plenty of people still go to school to learn about computers, though I’m not sure I’d recommend that to people if you want to work in this business. I think you can teach yourself lots of the skills you need, and I think companies are really starting to realize that a college degree doesn’t correlate with a strong technology worker.

    I was reminded of this when I saw a piece on a student that dropped out of a computer science curriculum. While I would hope that 3rd year CS students had written lots of code (I had by that point), I do agree that the exercises and requirements of many universities do not necessarily prepare many students for working as developers or DBAs. The most valuable thing you can learn in university is great communication skills, on which most people don’t spend enough effort concentrating.

    There is a lot of potential for universities to really train students in very strong ways to solve complex algorithmic problems, but schools need to evolve more quickly. The world is advancing quickly and companies are searching for employees that can learn quickly and adapt to new situations. However for students to learn these types of skills, we also need instructors that are willing and able to adapt as quickly to teaching new subjects and techniques, rather than relying on a curriculum that was built twenty years ago.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 2.1MB) podcast or subscribe to the feed at iTunes and LibSyn.

  • Updating Extended Properties on a Table

    I’m writing this post as a way to help motivate the #SQLNewBloggers out there. Read the bottom for a few notes on structuring a post.

    I wrote recently about adding an extended property to a table. As part of what I was testing, I also needed to update properties, changing values back and forth. It’s fairly easy to do so, and I wanted to document this for my own reference.

    The sp_updateexteendedproperty is analogous to the sp_addextendedproperty procedure. Here’s the code I used to change my property value on the table from the last post.

    EXEC sp_updateextendedproperty 
    @name = N'PKException', 
    @value = '1',
    @level0type = N'Schema', @level0name = 'dbo',
    @level1type = N'Table',  @level1name = 'SalesTax3'
    ;
    
    

    As you can see, I pass in the same parameters. The procedure then changes the parameter in the table. A quick check in SSMS will show you the values changed. In my case, I was changing the value from 0 to 1 to test a query.

    The property does need to exist. If I execute this:

    EXEC sp_updateextendedproperty 
    @name = N'PKcheck', 
    @value = '1',
    @level0type = N'Schema', @level0name = 'dbo',
    @level1type = N'Table',  @level1name = 'SalesTax3'
    ;
    
    

    I get an error thrown from the database engine.

    Msg 15217, Level 16, State 2, Procedure sp_updateextendedproperty, Line 112

    Property cannot be updated or deleted. Property ‘PKcheck’ does not exist for ‘dbo.SalesTax3’.

     

    This is a good way to handle this, as a TRY..CATCH can trap the error and do an insert instead of something else.

    SQLNewBlogger

    This was another side post from my testing of a solution. As I used this code to solve a problem, I kept a copy and made a few screenshots. This one was about 10 minutes in total.

    References

    sp_updateextendedproperty – https://msdn.microsoft.com/en-us/library/ms186885.aspx

    sys.extendedproperties – https://msdn.microsoft.com/en-us/library/ms177541(v=sql.90).aspx

  • The Importance of Our Work

    My wife has often uttered a particular saying during stressful times in her career. She spent 20 years working in computer telephony and speech, often in sales, and would remind her colleagues that they “weren’t saving babies” as they worked with customers.

    It was a reminder that most of our work isn’t, ultimately, that critical to the world. It matters for our businesses to success, for our careers to move forward, but most of the time we should keep some perspective on the value of the time we spend at work versus the rest of our lives.

    I ran across that saying recently in a post from Scott Hanselman, and like him, I’ll apologize if your work is actually affecting life. If so, I agree with Mr. Hanselman, make sure you have unit tests. Lots of them.

    However for most of us, we’re trying to improve commerce in some way. A few of us work for non-profits or the government and hopefully are trying to make the workings of that organization more efficient.  Some of us might be building systems using open data to improve society in some way. No matter what you do, remember that there is some life outside of technology.

    Remember to spend time with your family, with friends, even taking care of yourself. Not only is it healthy to get away from work, it can help refresh you and give you a new perspective on the work you do. Work is important, but keep your efforts in perspective.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 2.0MB) podcast or subscribe to the feed at iTunes and LibSyn. feed

  • The New DBA

    What does DBA mean? It’s traditionally meant Database Administrator for technologists. However it’s also been a synonym for a database developer, or even anyone that has raised privileges on a database system. The term has been expanded to people designing databases, and usually includes the BI developers or analysts that work with database related technologies.

    In short, it’s been a vague term that means different things to different people. However as I look forward, I think there’s another interpretation I have. The people functioning as DBAs, are the Data Bridges to Applications. We take the data and find ways to ensure it’s useful to applications. We make sure it’s available. We connect systems together. We do the dirty work of cleaning data. We secure the bridge.

    We really are the person that needs to answer any question about the database. Throughout my career, when a company has decided to use DBAs, I have found the DBA is usually the catch-all person that really needs to be able to do whatever is asked of them that might tangentially relate to a database.

    While there have always been DBAs that tightly controlled their systems and acted as impediments to change, I think those positions are disappearing fast. More and more companies, if they even bother to hire DBAs, want those individuals to ensure data is useful. Whether that’s administering, developing, configuring, or anything else related to data, whether the data is in an RDBMS, Access, Excel, the cloud, NoSQL, any anywhere else, we need to be able to provide some solution to gets data to an application.

    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 2.1MB) podcast or subscribe to the feed at iTunes and LibSyn.