voiceofthedba's podcast

Categories

Editorial
general

Archives

2016
December
November
October
September
August
July
May
March

2015
November
September
March
January

2014
December
September
July
May
April

December 2016
S M T W T F S
     
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Syndication

Interviewing someone is hard. In fact, I'm not sure many of us really know how to do it well. Looking at the past hires in most companies I've known, I find that all too often the success of hires in developing software is a bit of a hit and miss effort. Some hires do well, and some don't quite perform as expected. Why is that? Wouldn't you expect that we could adequately test someone's skills as a developer? After all, we know what kinds of code we expect people to write. Shouldn't there be some sort of test that you could have someone complete, even across a few hours, that would allow them to show what they can produce?

I ran across an interesting post from Ore Eini that looks at a way of interviewing people by asking them to improve code. Rather than a take home test, or having someone develop code from scratch, Ore gives them a file and some code, then asks them to make it faster. The interviewee has around an hour (mentioned in the comments), but this is a test of whether or not someone understands how to read and write code well.

Read the rest of "Testing Coders"

Direct download: testingcoders_154_v1423.mp3
Category:Editorial -- posted at: 9:00pm EST

I was looking through the forums the other day and noticed that someone wanted to track changes to the Agent jobs on their instance. However, they couldn't find a DDL trigger to capture the changes to a job. That's because a job is really data in a table, in dbo.sysjobs, dbo.sysjobsteps, etc. in msdb. To capture changes to a particular job, one would need a DML trigger that captures the insert/update/delete actions on these tables. You could also use XE, Audit, or some other feature that can track data changes in the msdb tables.

I'm not sure that makes sense to me. This week I'm wondering if any of you feel that SQL Agent jobs aren't well integrated into SQL Server.

Read the rest of "First Class Jobs"

Direct download: firstclassjobs_153_v1422.mp3
Category:Editorial -- posted at: 9:00pm EST

Could you double or triple your salary by learning more technology skills? Sure, and here's a great story about someone learning PowerShell and dramatically increasing their earnings. This is a good read, looking at the journey of someone through their career and how they credit learning PowerShell for the changes in salary.

When I read this, I don't view this as PowerShell being the reason that Mr. Duffney increased his salary. Instead, I think the takeaway is that professional learning and skill development, focus across time, and producing results for their employer as being the primary reasons. I think that the right part of the salary curve, which has a steeper slope, is also likely due as much to speaking and giving back as it is to solving problems in an automated fashion. The other lesson in this piece is that Mr. Duffney is constantly gaining skills, and looking to move forward in his career.

Read the rest of "Learn to Earn"

Direct download: learnearn_152_v1421.mp3
Category:Editorial -- posted at: 9:00pm EST

There have always been those that seek to defraud, deceive or mislead their customers. In order to do this, someone inside an organization has always been willing to pressure employees to compromise their ethics and morals. Construction companies may use substandard materials or ignore standards for construction. Financial companies falsify performance records of products. Medical professionals may order unnecessary tests to charge more. Perhaps one of the common areas many people feel cheated is with used vehicles, where there are numerous stories of deceit from companies and individuals. I've had my own experiences with cars to support this.

It may be no surprise to you this is also happening in the digital world, which seem fundamentally more disturbing to me. After all, software is constantly changing in a way that many other industries don't. We can fundamentally rewrite the rules under which systems work by deploying new code, something many of us do on a regular basis. What's more, we have rules and regulations that fundamentally prevent us from disclosing how the systems work, limitations that don't allow for anyone to easily audit or evaluate what the programming might be doing.

Read the rest of "The Pressure to Compromise Ethics"

Direct download: pressurecmopromise_151_1420.mp3
Category:Editorial -- posted at: 9:00pm EST

Wow. Just Wow.

Yes, I meant to use a capital letter there. The Red Cross' Blood Service in Australia had database backups on a website that anyone could access. That means that anyone could download the backup, which contained PII (Personally Identifiable Information) about donors. This was a mysql dump file, which is shockingly easy to restore, so anyone could have read the file inside of an hour.

To be fair here, this wasn't the Red Cross' fault. A partner had put the file on a website, perhaps for developers or an analyst to download, but the web server had directory browsing available and was serving data on a public IP. That's three major faults, and perhaps a fourth since the backup file wasn't protected at all.

Read the rest of "Wow. Just Wow."

Direct download: wow_150_v1419.mp3
Category:Editorial -- posted at: 9:00pm EST

Your database platform will constrain and limit the flexibility you have in evolving your software. It doesn't matter which platform you choose, which type of database, or even the format for your data. At some point, you will be dealing with legacy data in some legacy schema or structure, and your development, and certainly deployment, will be slowed or impacted. Face it, the need to maintain state for your data is an impediment in a relational system. In a NoSQL or other store, the need to maintain code in your application that can interpret your data might be the issue over time.

That's not to imply this need to maintain state has to slow your development. On the contrary, there are many companies that find themselves moving quickly, able to make database changes on a weekly, or even daily, basis. There are multiple tricks and techniques for managing change, but ultimately the real secret is having a process that computers can follow and your developers adhere to.

Read the rest of "Held Hostage by the Database"

Direct download: heldhostage_149_v1418.mp3
Category:Editorial -- posted at: 9:00pm EST

Those of us that administer databases and are responsible for ensuring the integrity and availability of data know that being able to restore systems is a core skill. In the SQL Server world, this should mean more than just being able to run a RESTORE DATABASE Sales FROM DISK = 'Sales.bak'. Many of us would easily recognize that we should be able to use the WITH MOVE option. We should also understand when to use (and not use) NORECOVERY and STANDBY. Perhaps more importantly, we need to know the default option is RECOVERY.

If we delve further, perhaps we could debate and discuss when a tail log backup is needed. Many might mention how to programmatically use FILELISTONLY and HEADERONLY to generate scripts.  A few of you would note that restoring databases means restoring logs as well and an understanding of the STOPAT option is important. Perhaps learning the ins and outs of restoring a filegroup is important in your environment. There are many nuances and options with restoring a database that a system administrator could learn.

Read the rest of "A New Recovery Tool for Your Toolbelt"

Direct download: newrecoverytool_148_v1417.mp3
Category:Editorial -- posted at: 9:00pm EST

I was watching a talk from Google on how they back up their data. After all, one of the biggest assets Google has is the tremendous amount of data that they have collected over the years. There are many systems at Google, and certainly lots of data. In this case, Gmail was the system being backed up, which is in the exabyte range. If you don't have an hour to watch the talk, then there's a nice summary at highscalabilty.

In the talk, there are certainly things that Google aims to do with their approach. First, they can't lose data. That's a priority, as it should be for all of us that manage data. They also focus on restores, not backups. In fact, if they can make restores easily by adding work and complexity to backups, that's a trade-off worth making. I haven't typically viewed restores this way, though I do think restores are ultimately the most important part of any recovery issues. However, I haven't really thought about how I could actually make restores easier at backup time. I've often tried to make backups quicker, or take them more often, but perhaps this is something to re-examine. Are there things you can think of that would make restores easier? Maybe not easy enough for your cat to kick off, but easy for the average sysadmin at your company?

Read the rest of "The Google Solution"

Direct download: googlesolution_147_v1416.mp3
Category:Editorial -- posted at: 9:00pm EST

Should we be teaching more people to code? That's a question I ponder, especially after re-reading an old view against the idea, a newer one, and a pro-code piece. At the end of the day, I think that coding is a basic skill, similar to reading and writing because so many of us, perhaps most of us in the developed world, will need to work with computers.

I don't mean to imply that everyone should be able to write an MVC application or produce a graphical application. I also don't expect most people to understand calculus or produce a thesis. However, I do want a core competency that allows them to work effectively with a checkbook and communicate a point effectively. I want them to understand enough coding to appreciate the logical and methodical way in which computers process instructions. I'd like to have most people appreciate how to create, store,  shuffle, and retrieve a digital deck of cards.

Read the rest of "Go Code"

Direct download: gocode_146_v1415.mp3
Category:Editorial -- posted at: 9:00pm EST

I ran across a thread recently where someone was looking to estimate the time it too to perform a 600GB backup. I've seen other threads with similar questions. The general advice is that you need to run a backup and see how long it takes. After all, your hardware, your workload, the compression settings, and more will affect your backup.

In researching speeds, I didn't find much info out there, so I thought I'd start a poll. This might be fun for you, so I'm hoping quite a few of you will answer.

Read the rest of "What's Your Backup Speed?"

Direct download: backupspeed_145_v1414.mp3
Category:Editorial -- posted at: 9:00pm EST

1 2 3 4 5 6 7 Next » 7