Presentation Schedule

Upcoming schedule for where you can catch my presentations.

Date Location Event Presentation
9/25/2018 Greensboro, NC Triad SQL Server User Group

Presentations that I give (~ one hour-long):

Crazy Things Developers Do!

Throughout my career, I’ve seen developers do some pretty crazy things to databases (and truth be told, I’ve done some of these myself!). Come to this session to learn what we do and why it’s bad to the database server (or your career)… and alternatives that can be used instead. Some of the topics that we’ll discuss are the pitfalls of using NOLOCK, how coding mistakes open up the database for SQL Injection attacks, and how design choices keep SQL Server dumb – and if it was allowed to be smart, it would be faster! Trust me… your DBA will love you for making these changes.

Intelligent Query Processing

SQL Server has evolved many times over the years. SQL Server 2019 introduces “Intelligent Query Processing”, greatly enhancing the “Adaptive Query Processing” which was introduced in SQL Server 2017. Intelligent Query Processing allows your queries to operate more efficiently (resulting in better query performance) – without needing to make changes to the code or the application.

In this session we will explore all the Intelligent Query Processing features in SQL Server 2019. Time permitting, we will go into other changes in recent versions of SQL Server (such as execution plan changes and new Dynamic Management Objects) that will help improve your efficiency at troubleshooting and tuning SQL Server.

Coming away from this session, you will have plenty of reasons to want to upgrade to SQL Server 2019 immediately!


Minimally Invasive – Tools to Doctor Up Your Code

This code filled session examines several additions to recent versions of SQL Server. These tools allow you to perform minimally invasive surgery on your code and gain performance! Learn how the APPLY operator works; iterate through incoming data just once with the MERGE statement; “slice and dice” your data with the Windowing (ranking) functions; re-write your multi-statement table-valued functions to inline functions to help the optimizer and speed up your queries; learn how to create a grouped delimited list – without loops!

More Fundamentals for Your SQL Server Toolbox

SQL Server has evolved many times over the years. This evolution has brought a need for every DBA to enhance or at least revisit their fundamental methods for tuning and troubleshooting.

In this session you will explore how SQL Server has made the data professional’s job easier through the addition of new features and enhancements to some of the well-established features. This session will expose you to some of the new toys now available to you (such as execution plan changes and new Dynamic Management Objects) that will help improve your efficiency at troubleshooting and tuning SQL Server.

Coming away from this session, you will have more tools to help showcase your rock-star skills back on the job.


SSMS Tips & Tricks: Using What You’ve Already Got

Almost everyone uses SSMS to write queries and to browse around on the server – but do you use all of the features that SSMS offers to increase your productivity? Come to this session, consisting mostly of demos, to see features built-in to SSMS that will improve your experience and productivity. Time permitting, we’ll also go into some 3rd party products that also increase your productivity in SSMS.

SQL Server 2016: Temporal Tables and Dynamic Data Masking

SQL Server 2016 introduces many new features and enhancements. This session will look into two of those: Temporal Tables and Dynamic Data Masking. Temporal Tables simplifies the task of building a history table to track all data changes so that you can see how the data looked at a specific point in time, while Dynamic Data Masking is used to obfuscate data from users (for example, show just the last 4 characters of your SSN). This session is >90% demos!

Table Vars & Temp Tables – What you NEED to Know!

Almost every SQL Developer is familiar with Table Variables and Temporary Tables. While each of these objects represent temporary storage, there are also substantial differences between them. Understanding the differences between Table Variables and Temporary Tables, and the ramifications that those differences cause, is essential to being able to properly select the appropriate object for use in your development tasks. In this code filled session, we’ll discover the differences and similarities of Temporary Tables and Table Variables, dispel some widespread myths about each, and answer the most important questions of them all, “When do I use one or the other and what are the various impacts of doing so?”

Windowing Functions in SQL Server

SQL Server 2012 brings with it nearly full ANSI compliance with the windowing functions. Come to this code filled session to learn about all of the windowing functions in SQL Server 2012: Ranking functions, changes for windowing in the Aggregate functions, and the new Analytic and Sequence functions. We’ll examine how this latest implementation of the windowing functions allows us to perform running and sliding aggregations; retrieve data from adjacent rows in the partition, and much more – all without self-joins back to the source table.



All-Day Workshops