Kids, get off my lawn!

Change can be hard. But sometimes it’s necessary. And a lot has happened this week.  First, I want to congratulate my fellow #SQLFamily member Cathrine Wihlemsen on one more orbit of the Sun. Apparently, in her honor Microsoft decided to release SQL Server 2019 on her birthday! I’ve been using SQL Server since the 4.21a days. Every version has had new features and required learning something new. As I said recently, it’s easy to fall into the trap of being an old dog and not learning new tricks. This is something we have to avoid. Being trapped in the past can be limiting.

Besides SQL Server 2019 dropping this week, I recently upgraded my phone. I had been using a Windows Phone for about 5 years now. I loved it. Especially when it first came out, it was top of the line and had a bright future. I eagerly downloaded apps and it became part of my life. But alas, we know how well Microsoft did in the Windows Phone market. But I doggedly held on, even as features were deprecated. I couldn’t use the Weather App. The Amtrak App went away. Eventually several features of Cortana stopped work as Microsoft stopped supporting them. Slowly my phone was becoming a brick. I kept debating do I upgrade to one more Windows Phone knowing it’s the end of the line, or what? I kept putting off the decision. After the mapping function failed me on my recent trip to the Hampton Roads User Group Meeting I decided it was time to finally time to replace it with an Android phone. Choosing from the plethora out there was not fun. It was very tempting to go with one of the top of the line models, but spending $1000 or so wasn’t really a fun idea.  I eventually ended up choosing a Samsung A50.

I’m mostly happy with it. Right now I’m struggling with what parts of it are “get off my lawn” because I don’t like change, and what parts are “what the hell is the UI doing now?”  Fortunately, my son has mentioned some of his dislike of certain UI functionalities, so I think not all of it is me simply being an old curmudgeon (are there young ones?) I will say what I’m most happy with is that Microsoft has a number of tools including the Windows Launcher and the Phone Companion, as well as the obvious apps like Outlook and other parts office.

A word about the Phone Companion. This alone has made the upgrade a win. One of the features is that when I’m working at home (I have not yet enabled it on my Surface Pro) is that things like text messages pop-up on my desktop screen. This actually makes life a LOT easier, since I can simply type a reply from a full-size keyboard or copy the numerous soft-tokens I get to log into various client sites without having to pick up my phone. It’s a small detail, but a wonderful one!

The Launcher helps me retain some of the features that I liked about my Windows Phone. Overall, it’s a win.

But the changes in my life aren’t complete. As I mentioned last week I’m at PASS Summit again this week in Seattle. But alas, this is the last year that PASS Summit will be in Seattle. Next year it will be held in Houston. Just as I’ve figured out where the cheapest and most convenient parking for me is, where some decent food places are, and I’m feeling, if not at home in Seattle, at least comfortable, next year is a big change. I won’t be able to stay with my college friends or do our annual Thai pot luck with a bunch of ROC Alumns.

But, I’ll get to explore another city. I’ve been to Houston only once, literally decades ago, to do SQL Server install at Exxon. The server was literally the only Intel computer in a room full of mainframe equipment. I suspect that has changed since then.  That was one of my early experiences installing SQL Server (4.21a for the record).

So, this old dog is still learning and looking forward to new experiences: plus ça change, plus c’est la même chose.

 

He’s dying Jim!

Less than a minute after the mountain biker blew by me on the trail I heard the wail. It was scary. I raced forward with my hiking partner and very quickly came upon the accident scene. Thomas was laying in a crumpled mess, his $1500 mountain bike further down the trail with one more bend in the frame than the manufacturer had created it with.  This didn’t look good.

The hillside was steep and Thomas was on his side. I dropped my pack and went to backside of Thomas. Quickly my training kicked in. I introduced myself and asked him his name. His response re-assured me. He was breathing and had a pulse. And in medical terms, he appeared to be alert and oriented times three.

I put on my gloves (yes, I do carry nitrile or latex or material gloves pretty much anyplace I go, you should too!)  I then moved to his backside and palpated his head. So far, so good. No blood or cerebral-spinal fluid.  Since he was on his side, it was an ideal (if one could call his situation that) position for me to check his spine. Working down, so far so good until I got to the top of his lumbar portion. There I felt something very wrong.  Ok, shit just got real.  Upper torso, so far so good. Lower torso, right side, a reaction to pain. Barely noticeable, but definitely some mass internally. Again, not good. I continued down his legs. I got to his feet and normally I’d have saved this for the secondary survey, but since I already had a bad feeling and this wouldn’t take very long, I asked him to press his toes against my hands like he was pressing the gas. Nothing. I asked him to pull up his toes, again nothing.  This was not good. Same lack of reaction on the other side.  I could hear the panic in his voice, “why I can’t I move my legs?”

In all my past training they always taught us, “never lie to the patient. But also remember you’re not a doctor.” So I was honest. “Look, it could be a lot of things. I’m not a doctor so I don’t want to speculate. We’ll leave that to the professionals.” But deep down I knew. Bad tumble off a bike, bad position of a lumbar vertebra, and lack of sensation distal to that all added up to some sort of spinal injury. Would it be permanent, I had no idea.

I also checked his right arm since it was immediately available and this time came up with blood and point pain over the radius/ulna.  This matched what the accident most likely was.  He had hit a rock or something and wrapped his right side around a tree, breaking his arm, damaging his spine and most likely causing internal bleeding.

But I still had the left side to check.

With my partner’s help, we got a ground pad behind him and then rolled him very gently onto it. It’s always a risk moving a patient with apparent trauma like this but we needed to get him isolated from the could ground which was stealing his body heat and I needed to check for injuries on the left side.

Fortunately, this was the only bright news. A thorough check of his left side showed no apparent trauma. But, his shivering was getting worse and his mental state was decomposing. Whereas he was had previously been alert and oriented to who he was, where he was and approximately the time, now he kept asking the time.  Taking a set of vitals, things were not what one would like to get.

My partner was writing down all this information and giving me gear as needed. We had gotten the groundpad under him and clothing on top, but we needed to do more.  At this point, since we confirmed he wasn’t about to bleed out, we worked on splinting his arm. Providing traction in-line proved to be a bit painful at first, but ultimately gave him some pain relief and temporarily solved that particular issue. We did as much as we could in the back-country.

I took another set of vitals, and the numbers were a wee bit worse. In addition, Thomas was now wondering where he was. I repalpated his lower right abdomen and got an increased pain response and the firm area was larger. This was a very worrying sign.

While doing this, my partner ran down the trail with a copy of his notes until he got cell service and called 911. He gave them the details and then came back.  At this point, with his help we decided to get Thomas into a bivy sack to help keep him warm.  This took some effort since Thomas was bigger than either of us, fairly muscular and we were doing out best to protect his spine. But eventually we got it around him. Between this and some liquid “squirt” we were able to give him, his pending hypothermia appeared to stabilize and eventually improve.

But his vitals continued to degrade and the pain and mass in lower right his abdomen continued to get worse. He was dying and there was nothing I could do about it.

Well there was one thing I could do. I looked at Thomas and said, “well I think that’s it. Did I miss anything or do you think we got this exercise covered?”

He looked up and smiled, “Nope, I think you got it.  By the way, the biv sack really did help a lot. I was actually starting to get cold for real.” We removed the biv sack and he remarked, “Wow, you really did have a lot of warm stuff on me.”

Now, fortunately, all this had been an exercise, part of a SOLO Wilderness First Aid class I was taking over the weekend in order to renew my certificate.  The scenario was completely made up. But, I have to say, the feeling of helplessness was real.

Strangely though I’d say that was a good thing. For any skill we want to maintain competency in, we need to practice. Fortunately, I haven’t come across a crumpled mountain biker and most if not all back-country medical emergencies I’ve encountered have basically been fairly simple (an abrasion here, a blister there, or most commonly, mild hypothermia). But, continual practice does help. When arriving at the staged scene, I knew what I wanted to do and I knew how I wanted to do it and how to do it. The years of training and practice came back very easily. I knew how to do a primary survey and what I wanted to look for. I knew what vitals I needed and what trends I wanted.  There wasn’t much searching for knowledge, it bubbled up as needed. Practice really does in a sense “make perfect.”

And, even knowing that my mock patient most likely had internal bleeding that was leading to hypovolemic shock was good to know. Knowing that there was very little I could do if this was a for-real in the back-country was scary, but also strangely reassuring. I was confident that I had done all that I could reasonably do. And sometimes that may have to be enough.

I’ve talked previously about training as one fights. This should be true in any situation you may find yourself in: caving, the back-country, or even something as mundane as being a DBA. When’s the last time you practiced restoring a backup or doing a failover test?

Practice may or may not make perfect, but it does provide confidence.

P.S. if you’re in the Hampton Roads area tomorrow night (October 16th) come check me out speaking on System Databases at the Hampton Roads SQL Server User Group. Rumor has it, they’re serving wings!

Caving along the Great Divide

The title is a rife on a favorite folk song of mine, “Railroading on the Great Divide”, apparently first made famous by the amazing Carter Family. In this case, the Great Divide is a feature of a local cave known as Knox Cave in the town of Knox NY.

So, what do you get when you take 2 Canadians, a number of students who are just starting in college and a pair of cavers who have been caving for over 50 years each, two medical students, a fire chief, and a mixture of other people and toss them into a classroom and then a cave? You get an excellent teaching and learning experience.

I again had the privilege of working with a great group of people teaching a 2 day class on cave rescue. On the first day we test the students patience by seeing how many Powerpoint slides they can sit through. If they successfully survive that, we then unlock the doors to the classroom and let them outside. We then do some patient packaging and patient movement.  We end the day with a large quantity of food.

Often I’ll spend the Saturday night at the fire house (our typical location for these classes) but this time I had to head home. On the way one of my fellow instructors texted me to let me know that the student who was staying with her had not arrived at her house. We started to worry.  About an hour later the missing caver had shown up. Turns out she and several other students had decided to take advantage of a baseball backstop and practice their SRT skills and spend some time teaching each other. Even after a long day of teaching, the students were still eager to share their skills with each other.

On Sunday, we spend less than 1/2 an hour in the classroom, essentially just enough time to grab some breakfast and handle some housekeeping chores. We then start a practice rescue. In this case it was at nearby Knox Cave. While the students had known that the practice would be at Knox, they had no idea what the actual would actually involve.  So when the first group showed up, including the local fire chief who was also part of our training, they sprang into action. The reporting party told them that two cavers were in the cave. Both were at the Great Divide, one with a broken leg, the other taking care of the injured caver.

Very quickly the students found the the injured caver but quickly learned that no plan survives the first encounter with reality; the non-injured caver had wandered off and they had to go find her.  The apparently simple rescue had now become a search problem.

After a few missteps, the students found the missing caver and assisted her to the surface. And shortly later the injured caver was also brought to the surface.  It was a successful practice.

At the end of the weekend, instead of 22 students with very little if any cave rescue experience (including at least one student who had never been in a wild cave before) we now had 22 students who had gained a bit of experience and I would actually trust to call if a real rescue was called. From the reports I got back, everyone had fun and more than one person is now very eager to take our weeklong class next year!

For me, it was a long weekend with not enough sleep, but I ended it more energized than I started it. This is typical when I teach courses like this. It’s because I love the aha moment students often have when they’re learning, and this weekend was full of those.

I’ve been blessed to be surrounded by great groups of people over the years and I must say my cave rescue family is among the best, and I’m proud to welcome even more members to that family.

P.S. Don’t forget to check out my latest article at Redgate’s Simple Talk: How to Use Parameters in PowerShell

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.