For a very long time now I’ve preached to my various teams the value of doing your 20s. And I don’t expect most of you to know what that is, so here’s a quick explanation. I believe there’s certain syntax you should know by heart. Things like backup/restore, DB creation, working with user accts, etc. should be so ingrained you never forget them. And the only way to do that is to do it again and again and again. So when I start new DBAs down their road to discovery, I start them on their 20s. And that means writing the command you’re working on 20x a day for 2 weeks. And by the end of the period, you’ve written it at least 200x. Now, in the case of backup/restore, I typically pick a test server with around 10-15 DBs (I often create empty DBs) on it and make them type the commands for every DB 20x a day for 2 weeks. And that means that they’re writing the commands 200x for each DB. And a little quick math tells you that the total they’ve written the backup command by the end is at least 2,000x. Now, name me something you’ve done 2,000x and have forgotten easily.
The whole point of this is to give them tons of experience with the commands in a very short period of time. Innovation and understanding don’t come when you’re struggling to remember syntax and they don’t come if you don’t know any of the options available to you. So by forcing my DBAs to learn like this, I’ve found that they really start to become competent and ultimately they appreciate that I forced this on them. And it’s incredible how simple things start getting when you know what you can and can’t do and now that you know how to code it you’ve got a world of options available to you. And I still find way too many DBAs are button monkeys and don’t know anything that isn’t presented to them in a wizard.
So anyway, the main reason I wrote this is to say that it’s proven itself to me today. We needed to add a PK to a table and I was in a room with a bunch of SQL devs. They started to lookup the syntax and I said, wait, give me a crack at it. I sat down and busted it out without any slips. And the thing is that this is one of the things I’ve practiced a lot. But I haven’t touched it in almost a year so I’m a little surprised to find that it didn’t leave me. Then again, when you do it as much as I have you won’t forget it anytime soon. So my point here is that if you practice enough you can go a few months without doing it and you’ll still be ok. And the funny thing is I didn’t even really remember the syntax myself. My fingers did it for me. I love how muscle memory works. So hey, if you really want to get good at SQL then practice some of the more common syntax. Do your 20s. You’ll really be glad you did. And you’ll get things done a lot quicker cause you’re not always looking up basic syntax.