Old Dogs and New Tricks

One problem with writing a weekly blog is sometimes you get the same idea in your head and realize you’re about to repeat yourself. I want to write about learning new stuff and started to repeat stuff I said here. I suppose I could just put a pointer to that and be done but… nah.

Several ideas prompted this week’s theme for this blog, the most recent being Grant Fritchey’s blog on using Extended Events. He makes some good points and I want to add my own thoughts.

I’ll start by admitting I still often use Profiler. I know it. It’s “easy”.  Well, no, not really. A better description would be “It’s familiar”. Truth is, I’ve often found the interface a bit clunky and I have to do more steps than I want to narrow down to trace exactly what I want.

But, about two weeks ago, one of my clients had an issue with a run-away query that expanded their tempdb to about 400GB before it rolled back. We wrote it off as a fluke; until it happened again the next day.  Now we had a pattern. I decided that we needed to monitor the server about the same time the next day to see if it would occur again. Now, of course one can sit there and run queries like sp_whoisactive, but I wanted more.  Profiler might work, but I figured it was time for this old dog to learn, or at least practice new tricks. I’ll admit, I basically googled for what I wanted, but I quickly found a trace I could modify and run for my needs.  30 minutes later and I had a nice extended event setup and monitoring the tempdb.

Now, as fate would have it, that run-away query hasn’t shown up since then, so in a sense the trace hasn’t fulfilled it’s goal. But, it’s lightweight enough that I’ve decided to leave it. And, the results are easily accessible to others if I’m out of town.

In the past year or so, it’s really hit me how much my role as a DBA or IT professional has really changed from two or more decades ago. There’s stuff that I do now that wasn’t possible then and there’s stuff then that I would do that I don’t worry about now or can’t even do (who out there recalls the ability to setup SQL Server database “files” on raw partitions for the speed boost?)

Over two decades ago I wrote a fairly impressive batch file that could install a client’s application on the proper drive. It used a lot of commands most people weren’t even aware of in the batch language (this was DOS, so not even as good as what CMD in Windows NT and above gives us).  Nowadays, I’d use PowerShell.

My original programming was in Fortran. Nowadays, I tend to sling code in VB.Net or C#.

It’s ok at times to fall back on what’s familiar. Often it can be faster and easier for a single project. But in the long-term, one really needs to learn what’s new and apply what one can.

My advice, pick a new technology or skill, and use it, even if for one project.  I’m not going to be an expert in Extended Events anytime soon, but now at least I can say, I’ve used it.  I’m far from an expert in PowerShell, but I’ve now been paid for 3 (and soon 4) articles on using it.

If this old dog can learn a new trick so can you.

And, listen to music you didn’t grow up on. As much as I love to listen to the music I’m familiar with while working, I often branch out. Yes, I’ve been known to listen to some Taylor Swift and Charlie XCX. And yesterday was a bit of Imagine Dragons and Meute. Two very different styles of music, but still a good listen.

What new trick will you learn this month?

The Next Generation

As I’ve mentioned previously, I’m a caver. I mention this when I speak as part of a dad joke, that as a caver, I really do know a certain body part from a hole in the ground. I won’t say it makes me unique, there are literally 1000s of cavers in the US and even more around the world.

Like any group of people, not all cavers are the same. Some love long expeditions where they may spend a week or more underground, mapping new caves and plumbing their depths. Others may go in to study the geology or search for fossils. Some are studying the biosphere within caves. I have a lot of respect for those folks. Me, I like to take beginners caving. I also like to teach cave rescue and to talk about it.

And I think my role in taking new folks caving can be as important as what many of my fellow cavers do. Yes, it means I often go into the same caves over and over again, and that may sound boring, but honestly, it’s generally not. I often get to see the cave again through new eyes.

What brought on this post was the fact that I had the opportunity to take a friend and her twins caving for a second time. The wonder and excitement that their 6 year old eyes brought to the cave was wonderful. Passages I took as boring and mundane they saw as exciting and exhilarating. Their enjoyment was a breath of fresh air.

I’m a member of the National Speleological Society  I support the NSS because it supports cavers. But, I have a nit to pick with some (certainly not all) of my fellow members.

Let me preface by saying that caves can be rare and unique areas. While they can appear to be solid, non-changing areas made of stone, they can be dynamic places and the presence of humans can easily have a dramatic, negative impact.  For example, people hiking a mountain don’t have an impact on it simply by breathing near the mountain (they can certainly have other impacts). But, bringing enough people into a cave can have a dramatic impact on fungal and bacterial growth simply due to the amount of moisture they bring into the cave with them. They can also bring fungi and bacteria into a cave that may not have been there before.

In addition, many once beautiful caves have been destroyed by treasure collectors who have broken off cave formations such as stalactites and stalagmites. Once removed, it can be hundreds of years or more before they’ll reform. Even touching a forming one can alter its formation.

As a result of this, I’ve seen a movement that appears to be growing of both gating caves and of not sharing the location of caves. While cavers have often always been a bit protective of cave locations, the perception, at least to me, is that we’ve become more so. We’re reluctant to share the caving experience because we’re afraid “too many people will come and ruin the cave.” And there’s probably some truth to that.

But, while I certainly favor protecting our caves, I think if we’re too protective, we end up risking losing the next generation of cavers.  And the NSS enrollment numbers suggest this may be happening.

So, I personally prefer to take beginners caving. Many will attempt to go anyway, so I’d rather they learn proper caving techniques and cave conservation.  I encourage others to do the same. Take the time to introduce others to this wonderful activity, and teach them how to do it correctly.  And fortunately for every caver that seems to have the attitude of not wanting to “let” novices into caves, there seem to be two cavers that are willing to take novices caving. So, I remain optimistic.

I’ve thought about this also as I look at the presentations some of my fellow #SQLFamily members and realized I do the same there. Many will have great presentations on complex topics and ideas. They’re great presentations. And I respect them for it and admittedly, I’m sometimes jealous of their knowledge and skills. Myself, I seem to prefer teaching more introductory topics. I think continuing to bring new folks into the world of SQL Server and into SQL Saturday and PASS Summit are important. In fact our speaker this coming Monday is Matt Cushing. He’ll be speaking about Networking 101.

To close, I think in any world, but particularly in the two I inhabit, caving and SQL, it takes all types, those who dive deep into the subject and those who take other paths. I don’t think one path is necessarily better than another. The only ones I have an issue with those are those who take the attitude that novices aren’t welcome. You don’t necessarily have to be the person welcoming novices, but don’t be the one that discourages them either. We need to build the next generation.  And that’s my take away for the week.

Busy Weekend Volunteering

As I mentioned previously, I was on vacation for about 10 days and got back to Albany very early Wednesday morning (or late Tuesday night depending on how one looks at it.) And once back from vacation I had to jump right back into two other events I had previously put on my schedule. This meant I didn’t have much time to catch up on work or sleep. But it was worth it.

A confluence of events meant that I ended up being double booked this past weekend. The first event was some special cave rescue training called a Small Party Assisted Rescue (SPAR) class. This was a 3 day class, Friday through Sunday. However, in addition, students had the chance to show up Thursday night in order to test on their skills before participating.  I was both an instructor for this class as well as the site and course organizer. My second event was SQL Saturday Albany, which I had been selected to speak at. I’m also the User Group coordinator that sponsors this event. This double booking meant that I couldn’t instruct at the SPAR on Saturday. I do want to note that at both events there were a number of other volunteers, and some were doing even more work than I was.

Between these two events, it meant I was getting about 6 hours of sleep a night plus putting in a lot of driving. It was a long, tiring, essentially 3.5 day weekend starting on Thursday. Additionally the jet-lag made it seem even longer.

Why do I mention all this? Because, both events are very important to me and cover two large areas of my life. I’ve previously written about some of my SQL Saturday experiences and SQL Pass experiences.  This is part of my professional life. I feel very strongly about volunteering and speaking at these SQL events. I enjoy running our local Capital Area SQL Server User Group (CASSUG) for the same reason. I’m a better DBA because of the shared experiences of my fellow speakers. I’ve written about this previously here and elsewhere in this blog. I hope I’ve helped others.

WP_20190720_002

Deborah Melkin discusses normalized vs. star schemas.

On the other side, as my slide deck often points out, I’m a caver. More critically I’m the Northeastern Regional Coordinator for the National Cave Rescue Commission. I’ve had the privilege of teaching 100s of people how to perform cave rescue, been a media resource during the 2018 Thai rescue, and have spoken and written on the subject. I am by no means an expert, I’m always learning, as are all my fellow instructors. But, we all are not only willing, but want to spend the time and money and effort to teach others. We are passionate about it.  I don’t mean this lightly. For this particular SPAR, while about 1/2 the instructors lived within 2 hours of the event and it was an easy drive, the rest either drove 5-8 hours, or spent all day flying on standby to get here or to get home. None were reimbursed for any of their expenses and in fact had to pay for linens if they wanted them.  They also had to take 2 days or more days off of work to come to New York.

Next summer, I will be the course coordinator for our 2020 National Weeklong here in New York State. This will bring close to 100 people to New York for a week of 14 hour days of teaching and learning cave rescue techniques. Fortunately, I will have a LOT of help organizing this event. But again, all the instructors and staff are volunteers who will travel at their own expense to be here and help teach.

So I spent my weekend volunteering, because I’m passionate about it. How was your weekend?

 

Lifelong Learning

Writing a weekly blog isn’t always easy. For one, you have to come up with a topic every week. As fellow DBA Monica Rathbun recently pointed out, that’s not always easy. But sometimes (ok, often) I get lucky and the universe conspires to give me a topic.

This is what happened this week. The other night I was talking to my son about a possible project I might need his programming skills on. We reached a point in the discussion where I realized what we wanted to do was possible from a technology point of view, but I honestly had no idea how to accomplish it. I literally said, “I have no idea how to do that. But that’s ok, that hasn’t stopped me before. If I don’t know how to do something and I need to, I’ll learn it.”

That said, earlier in the week I was chatting with a friend of mine who has her doctorate in psychology and we were discussing learning new things and one of the items that came up was how it does get harder to learn as one gets older. On the flip side, we have more skills and memories to build upon which can help compensate.

Going back, even further, I remember my maternal grandfather. He was a PT Boat vet from WWII. Some of my earliest memories were him staring at me surrounded by a bright glow. No, he was not an angelic being, rather he loved to film everything on 8mm film and often used a bar of bright lights to make it bright enough. Later in live, he started to move all the 8mm and Super-8 film to VHS. He learned the necessary skills.

Even later in life, with some help from us grandkids, he started to move everything to DVDs. He was probably in his 70s when he took this up and learned how to edit everything on the computer, add in new sound tracks and titles and more.  I mention this story because I remember the day my mom again called to vent her frustration with her computer and how she was ready to toss it in the microwave and have them commit a murder-suicide together. She claimed she was too old to deal with learning how to use her computer. I mentioned to her that her father had learned how to edit DVDs and he was even older.  She was quiet for a minute and then agreed I had a point. Now in her defense, I will say, more often than not she will now call up and say, “Well, I had a problem with the computer, but I figured it out.”  Again, proving, you’re never too old to learn.

What brought all this together though in my mind was this post from Grant Fritchey. It’s well worth the read and I think he makes a lot of valid points. I know as my career in IT I’ve had to constantly learn. What I need to know today is often vastly different from when I did my first install of SQL Server 4.21a. It’s one reason why I made a point last year of buying a LattePanda singleboard computer and installing Linux and then SQL Server on it. I had decided to challenge myself and set a goal of building a SQL Server for under $200.

I plan on learning up until the day I die (and who knows, perhaps after that!) What about you? Will you stagnate or grow?

And as a reminder, if you enjoy reading my blog, please subscribe to keep abreast of updates and additions.

And a final note, I will be travelling over the next two weeks, so I may be too busy to blog.