Category Archives: sqlserverpedia-syndication

The Public Speaking Roadmap

So you look around, and all the cool kids are speaking at SQL Saturdays and PASS Summit and the like. You want to be the cool kids too, so how do you start public speaking?

Step 1: Know things

While you absolutely don’t have to be a 30 year veteran and world-renowned expert, it does help if you’ve got some experience with something. In other words, teach what you know.

Maybe what you know is TSQL, or Powershell, or R. Maybe it’s performance, maybe reporting. If you know a topic, talk on that topic. I hear you saying, “But plenty of people are already talking about my topic!” Well sure, just like plenty of people are already writing rock music…it doesn’t mean we’re all done making it!

So, develop your session. Say what you want to say. It’s your unique experiences and expression that will make your teaching valuable. Speaking of which, it’s time to develop your material and your personal style.

Step 2: Practice

Oh my dear word, you need to practice. Once you’ve developed your session, practice it out loud.

Practice your session to your dog.

Practice your session on video, and watch it back. (Yes, you have to listen to yourself speak.)

Practice to your significant other, or a friend, or some co workers.

Set up a webinar, and practice to a live audience online, even if only 2 people show up.

You absolutely must practice your session, out loud, many times. It’s going to suck at first. Practice is how you make it not suck, how you work out the kinks and figure out how it should sound.

Step 3: Try the local circuit

Quite a few people skip this step, and they really do pay for it. Before you go submitting your session to conferences, speak at your local user group. Speak for a PASS virtual chapter. Present for your team at work. Get some live performances under your belt! The responses and feedback – you’re going to ask for feedback, right? – will further refine your session.

Step 4: Level up your public speaking

Okay, you’ve done steps 1 through 3, yeah? Good job, you. Go ahead and submit to a larger event, like a SQL Saturday, or a Code Camp.

If you’re feeling really froggy, then sure…submit to one of the big conferences. I do recommend that you get a couple of smaller events done first…it’ll up the odds of being accepted, and of presenting a good session, in the big leagues.

Bonus: Ask questions!

Throughout this process, make sure you’re asking advice from at least one other experienced speaker. The input from someone who has already been there and done that will make things a great deal easier. Experienced speakers can point you to speaking resources, help you with abstracts, recommend events, and so on and on.

That’s the very high level path, my friend. Now, what do you want to talk about?

Happy days,
Jen

Compare column names for case sensitivity

I’m reviewing the code for the upcoming Minion CheckDB, and one of the things we’re checking for is case consistency in column names. For example, if Table1 has a column named Col1, and Table2 has COL1, well that’s no good.

But, how do we easily find those mismatches on a system that’s not case sensitive? Easy: collations.

This query compares all columns with the same name (speaking case insensitively) for case equality:

SELECT OBJECT_NAME(c1.object_id) AS TableName1
, OBJECT_NAME(c.object_id) AS TableName2
, c1.name AS ColName1
, c.name AS ColName2
FROM sys.columns AS c1
INNER JOIN sys.columns AS c ON c1.object_id > c.object_id
WHERE UPPER(c1.name) = UPPER(c.name)
AND c1.name COLLATE Latin1_General_CS_AS <> c.name COLLATE Latin1_General_CS_AS
ORDER BY ColName1
, TableName1
, ColName2;

Notice that we’re joining on c1’s object_id GREATER THAN c’s object_id. If we did <> (not equals), then we’d double our results (we’d see T1 C1 | T2 c1, and another row for T2 c1 | T1 C1).

We also have, in the where clause, UPPER(c1.name) = UPPER(c.name). We want column names that match, except for case.

And the “except for case” part comes with collating that last AND with a case sensitive collation: Latin1_General_CS_AS.

Easy. Done. Off you go.

-Jen

Webinar: Introducing Minion CheckDB!

productimg_checkdb

Minion CheckDB is available for download as of February 1, 2017!

In celebration, we’re having a Minion CheckDB webinar on two different days:

And, we will be giving away 3 licenses of Minion Enterprise to one lucky winner* at each webinar. Must be present to win! 

Save the Feb 1 event to your calendar: Outlook (ics)

Save the Feb 3 event to your calendar: Outlook (ics)

Minion CheckDB completes the MinionWare maintenance and backups suite in style. Each solution is plug-and-play for the busy DBA, and deeply configurable for those shops with in-depth needs.

This new module is MinionWare’s most ambitious free release yet, featuring all of the rich scheduling and logging functionality in previous products, plus remote CheckDB, multithreading, custom snapshots, rotational scheduling, and more.

In this webinar we’ll show you how this FREE tool by MinionWare can meet your needs with almost effortless management. You are going to LOVE it.

 

*(Giveaway offer is not open to previous ME winners.)