Category: Editorial

  • DevOps is Really Helpful

    A few weeks ago I gave a presentation at the 24 Hours of Pass Summit Preview. During my session, a demo broke and I had to ignore it. Later I found the issue and blogged about it. What was neat for me is that I didn’t need to keep my code up or apps open, but I still found the issue quickly. I found it because I have a DevOps process that instruments and tracks everything.

    This happened to me a few years ago. I was at a SQL Saturday and demoing one of the Redgate tools. There was an error and I couldn’t move changes to a downstream database, which threw me off. That was the point of the talk. I decided to debug on stage (or behind the podium in this case), looking through the logs. Within a few minutes, I had found the issue and solved it. A real life DevOps story in action.

    The idea of DevOps is what most talented developers and DBAs do. They ensure that they don’t just make changes on a whim, and they don’t depend on SSMS to be kept open. If they find an error, they save it, or they ensure their process captures all relevant logging. I’ve built systems like this, but many of the modern tools we use in DevOps automatically do this. Build servers and release servers make it a point of capturing all logging, so when that PoSh or CLI system runs, the output is saved and available for solving problems. And the data is available for improving the process, which is the goal.

    At various times in my career, I haven’t followed a set process, I’ve “tried” things in SSMS, a configuration dialog, or a command window that haven’t worked. I’ve sometimes remembered to undo them, sometimes not. I’ve lost track of what I’ve run often, just because I was working in an ad hoc manner. That led me to learn to do better, which led me to embrace and follow many of the principles and ideas that people call DevOps today. These are things I learned to do those things 15 years ago.

    Lots of DevOps is about using automation and tools, and those really do help. Having a pipeline for software changes, and one for configuration changes, reduces the chance of mistakes and problems. It also lets you instrument and track everything that happens. However, these are the easy things. These are the things that really talented professionals already do in their daily work.

    The hard part of building software is building a culture that learns to work together instead of separately, or worse, adversarially. It is truly hard to work together and concern yourself with the customer first, and your job last. Or put the QA person, the DBA, the developer, or someone else ahead of what makes your day easier. It’s also hard for management to build a framework where we don’t have incentives to put our own interests ahead of others. If we can do that, and build a DevOps style process, things work smoother, and our software will be better. Maybe more importantly, we’ll enjoy our time at work.

    Steve Jones

    The Voice of the DBA Podcast

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

  • How are you recharging this year?

    This is the end of the first half of the year. I’m hoping it’s been a good half year for you, as it has for me. I’ve traveled less, done a few more things outside of work, but had a good time at work as well. I’ve had to work on some projects and content that are engaging and fun. I’m looking forward to the next half of the year.

    No matter how much we enjoy our career, we all need to get away from work at some point. It’s important. We would love the perfect work-life balance, though I don’t know what that means or if it’s possible. You can make your job a little better taking some time to get away from work and getting refreshed and recharged. Today, I wanted to ask about your plans this year.

    How are you recharging?

    I just got back from a vacation with my wife. I had to travel for work and she came with me, putting up with a couple days of my work commitments before we took a few days to tour and enjoy the west coast of Ireland together. We are trying to do that more as my kids get older and more independent. We’ve taken a few trips over the last couple years and have another one planned later, when she’ll travel with me to Norway.

    It’s not just work trips. We also have a long family vacation planned in July, with two weeks of camping as we drive up to Glacier National Park and try to keep everyone mostly unwired. We’ll see how it goes, and certainly my middle son will need some connectivity as he’s in the middle of Linear Algebra and C++ programming classes, but hopefully the time will be minimal. Maybe I’ll get to watch him code some C++ and remember how glad I am that I don’t have to do that anymore.

    Let me know today if you have any plans for this year (or if you’ve already competed them). It’s always neat to hear the ways in which people look to spend their spare time. If you haven’t made any plans, I’d suggest you stop for a few minutes and think about how you might recharge away from work and try to get some plans in place.

    Steve Jones

    The Voice of the DBA Podcast

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

  • String or binary data would be truncated

    Microsoft, please fix thisThis issue is still out there, and once again, it’s the top voted on item for SQL Server. Everytime I see this:

    Msg 8152, Level 16, State 13, Line 1
    String or binary data would be truncated.

    I’m annoyed, and I’m not alone. If you’ve had to load data into SQL Server, and you’ve every encountered this error, you’ve probably been frustrated. In fact, when you get this particular error, you might wonder what to do.

    Many of us find this error to be a problem because we don’t know where the error is located. In fact, we often end up jumping through hoops to somehow track down the offending row. We might scan through our input file. Or we might build a parallel process to load the data into a series of MAX columns and then use T-SQL to search out the data, change it, and then export it again for us in our ETL process. Or we might throw up our hands in frustration and go for a walk.

    SQL Server developers, if you feel any of these things, go vote for this item.

    When there is a mismatch between our input data and the schema, there is a lot of friction to getting work done. While DBAs might be willing to track down the invalid rows, developers hate it and business people often get confused. This one reason why developers dislike relational schemas and look for easier data stores, like NoSQL databases. Trying to figure out that there’s one name in a list of 1000 that’s got 31 characters and doesn’t fit in a 30 character field is a pain for anyone..

    I have no idea of the effort to fix this, but this isn’t a syntactical sugar item. Microsoft, this is a piece of work that can be extremely helpful. Pick a method to solve thisand get to work. Ignore the error rows and output them, let us redirect them to another table, or some up with some other solution. Make something simple that works, but please, just fix this.

    It should be embarassing to you that this is still a issue that is reported and voted on in SQL Server.

    Steve Jones

    The Voice of the DBA Podcast

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

  • Republish: When Work Gets in the Way of Work

    Coming back from Ireland today and the last day of vacation. A republish if When Work Gets in the Way of Work.