Skip to content

Presentation materials (slide decks, demo scripts, references, etc.)

Notifications You must be signed in to change notification settings

RileyMajor/Talks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Talks

Presentation materials (slide decks, demo scripts, references, etc.)

Date Talk Location URL Notes
2014-09-16 Correlated Concatenation PASSMN User Group Meeting http://minnesota.sqlpass.org Lightning talk.
2014-10-25 Pseudo-Constants SQL Saturday #332 - Minnesota http://www.sqlsaturday.com/332/Sessions/Details.aspx?oldsessionid=25053
2015-04-11 Pseudo-Constants SQL Saturday #387 - Madison http://www.sqlsaturday.com/387/Sessions/Details.aspx?sid=21735
2015-08-12 Open Up the Clubhouse That Conference https://www.thatconference.com/Sessions/Session/7065
2015-10-10 SQL Server 2016 - New Feature Preview SQL Saturday #453 - Minnesota http://www.sqlsaturday.com/453/sessions/details.aspx?sid=40064
2015-10-24 SQL Server 2016 - New Feature Preview Twin Cities Code Camp #19 https://twincitiescodecamp.com/#/talks/796 Repeat (no new materials)
2016-08-16 User-Defined Functions PASSMN User Group Meeting https://mnssug.org/Announcement?itemType=PASSMNMeetings&year=2016 Lightning Talk
2016-08-16 Tally Tables PASSMN User Group Meeting https://mnssug.org/Announcement?itemType=PASSMNMeetings&year=2016 Lightning Talk
2016-10-01 SQL Server 2016 - New Feature Preview SQL Saturday #557 - Minnesota http://www.sqlsaturday.com/557/Sessions/Details.aspx?sid=53615 Updated materials
2017-04-08 XML vs JSON - Battle Royale SQL Saturday #604 - Madison http://www.sqlsaturday.com/604/Sessions/Details.aspx?sid=62671
2017-08-08 Clean up your campsite! That Conference https://www.thatconference.com/sessions/session/11442
2018-04-07 XML vs JSON - Battle Royale SQL Saturday #724 - Madison http://www.sqlsaturday.com/724/Sessions/Details.aspx?sid=74463 Minor materials updates
2019-03-23 Refactoring Monolith Database Stored Procedures SQL Saturday #825 - Chicago https://www.sqlsaturday.com/825/Sessions/Details.aspx?sid=88609 Minor materials updates
2019-04-06 Refactoring Monolith Database Stored Procedures SQL Saturday #842 - Madison https://www.sqlsaturday.com/842/Sessions/Details.aspx?sid=90600 Minor materials updates
2019-04-16 Refactoring Monolith Stored Procedures PASSMN User Group https://www.meetup.com/MN-SQL-Server-User-Group-PASSMN/events/260455887/ Repeat (no new materials)
2019-04-27 Refactoring Database Stored Procedures Minnebar https://sessions.minnestar.org/ Repeat (no new materials)
2019-10-12 Pseudo-Constants SQL Saturday #913 - Minnesota https://www.sqlsaturday.com/913/Sessions/Details/sid/96622 Repeat (little new material)
2020-10-20 T-SQL - Squish. Shred. Boom. PASSMN User Group https://www.meetup.com/MN-SQL-Server-User-Group-PASSMN/events/273978358/ Remote
2024-07-31 Write More Testable T-SQL That Conference https://thatconference.com/activities/U19GznjhKtAPTgLeu9I4

See also Scribnasium blog Talks page.

Abstracts

Correlated Concatenation

Since SQL Server 2005, a popular method for concatenating values across multiple rows has been to use the built-in XML functions. Of course they work well for the simple case involving a single field, but with one small trick, they can be used to make multiple, correlated lists based on different fields.

Pseudo-Constants

You know you’ve done it. Maybe it was the lucky number 7. Maybe it was an enigmatic X. Maybe you smooshed some words together in ALLCAPS. That should be easier to spot, right? Because some day you might need to change it—in every stored procedure, function, and view.

Magic numbers, codes, identifiers, constants, enumerations. Whatever you call them, all applications have them. Sure it’s quick and easy to sprinkle the values throughout your code, but that breeds mistakes, rigidity, and obfuscation. There has to be a better way!

Other languages give us real constants and enums—with IntelliSense and compilation-level enforcement. Well guess what-- SQL Server does too, sort of. Join us and learn to write clearer, easier to maintain code without sacrificing performance.

Open Up the Clubhouse

Boys, there's something important we need to talk about. Girls don't have cooties. It's time to take down the "No Gurlz Allowed" sign. This clubhouse is big enough for all of us, and we'll all have a better time if we learn to play nicely together.

The percentage of women in technology has fallen steadily since the early 80s. 92% of Stack Overflow survey respondents identified as a male. Girls are discouraged from technology at a young age, and those who make it through are often driven out by an unwelcoming technical community. There are the obvious examples of sickening death threats against those in the gaming industry, but the daily grind of subtle undermining of women's competencies also takes its toll.

Teams perform better with diverse viewpoints, so it's in all of our best interests to solve this problem. And of course it's just the right thing to do.

We'll explore some of the challenges women face in technology communities, review ways we can all help improve our environment, and discuss efforts to bring more women into technology led by groups like Girl Develop It.

SQL Server 2016 - New Feature Preview (2015)

Be the first on the block to try the shiny new features coming in SQL Server 2016.

We'll review how you can get up and running with the SQL Server 2016 Community Technology Preview and play with all of the new toys.

Time travel with Temporal Tables. Watch the gears turn with Live Query Statistics. Go shopping in the Query Store. And impress your developer friends with some freshly minted JSON.

Maybe we'll even figure out how to bottle up that new version smell.

SQL Server 2016 - New Feature Preview (2016)

SQL Server 2016 is here. Curious what all the hype is about?

We'll take a stroll down memory lane to remind us how far we've come and then explore some of the brand new features.

Time travel with Temporal Tables. Watch the gears turn with Live Query Statistics. Go shopping in the Query Store. And impress your developer friends with some freshly minted JSON.

Maybe we'll even figure out how to bottle up that new version smell.

XML vs JSON - Battle Royale

Shiny new touch bar MacBook Pro under one arm, JSON strolls in with a coffee from that new place with the ethically sourced beans. Grizzled XML looks up from an old ThinkPad and grunts, remembering that the stained company mug on the cluttered desk had been empty for some time. JSON was sure to be assigned the new web features while XML would be spending another week on those legacy third party integrations...

SQL Server 2016 brings JSON support, but does that mean XML is old news? Which has more features? Do they matter? Which is faster?

We'll review the many similarities and highlight some important differences between SQL Server 2016's XML and JSON support. You'll leave equipped to make the right choice for your environment.

Clean up your campsite!

Refactoring Monolith Database Stored Procedures (That Conference)

Your campsite is a mess. There are "totally safe to burn" plastic wrappers melted in last night's ashes. The roasting sticks are coated with dirt-encrusted marshmallow goo. And some sort of animal went through the trash bag you left out. (Oops.)

We get it. Move fast and break things. Just ship it! But what's left a giant stored procedure with cursors, temp tables, and mystery calculations. It's a big black box that nobody wants to touch. Let's fix that. We'll open the lid on an example monolith and do major surgery. What's left will perform better, be easier to understand, encourage code reuse, and be easier to test.

You might even begin to like writing SQL.

(This talk is geared to developers using Microsoft SQL Server, but many of its principles apply to any RDBMS.)

Refactoring Monolith Database Stored Procedures

(SQLSaturday version)

We get it. Move fast and break things. Just ship it! But what's left a giant stored procedure with cursors, temp tables, and mystery calculations. It's a big black box that nobody wants to touch. Let's fix that. We'll open the lid on an example monolith and do major surgery. What's left will perform better, be easier to understand, encourage code reuse, and be easier to test.

T-SQL: Squish. Shred. Boom.

Sure, you've written a SELECT or two in your day. Maybe there's a gnarly beast in your past with dozens of tables and sub-queries that you'd rather not think about. But have you really thought about all the ways you can morph data with a humble SQL statement?

Got too many rows? Squish them down. Got a big ball of text? Shred it into the little bits you need. Just not enough data? Blow it up. Boom! Who knew T-SQL could be so violent?

Together we'll explore derived tables, sub-queries, APPLY clauses, and window functions. But wait, there's more. How about a double string-split? We'll even dust off our disused friend CROSS JOIN.

You'll leave with an appreciation of just how much you can do with a single T-SQL statement.

Write More Testable T-SQL

If you've worked with a legacy business application, you've probably encountered database stored procedures, and they've probably been a fragile, scary mess. They typically have hundreds of lines of procedural code with many branches, convoluted logic, and overloaded variables. And there's no way to test anything because running the procedure makes all sorts of changes.

You might think that's just the way things are done in a database and there's no fixing it.

But I can tell you there is a better way.

You can move all of that logic into composable, testable components. You can test your code without risking any data modification. You can even quickly generate thousands of tests which will show the business exactly how your code will behave in every conceivable scenario.

Once you experience SQL done right, you might even grow to like it.

Take Aways

  • Learn to encapsulate business logic.
  • Learn a method for mass testing of business logic.
  • Learn to make more reusable, composable database code.

Bio

Riley Major is an Enterprise Architect based in the Twin Cities, MN metro area who enjoys collaborating with business leaders to design technical solutions and working with technology professionals to build them. He's been programming and designing databases since he was a kid and doing so professionally for 25 years. He has a special place in his heart for T-SQL in SQL Server and loves to share that enthusiasm.

About

Presentation materials (slide decks, demo scripts, references, etc.)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages