Speaking Again

Last week I spoke remotely for the Sioux Falls SQL User Group. Adam Hafner had approached me several years ago about speaking at their SQL Saturday event. As much as I was interested, I just couldn’t fit it into my schedule at the time.

More recently he approached me again about speaking, this time at their user group meeting. I hesitated at first, but finally agreed. My hesitation had nothing to do with the group itself, but because I had not spoken in awhile and am still suffering from a bit of what I consider burn-out from Covid and had two less than stellar experiences speaking remotely.

As a User Group Leader, I’m often in the in the position of trying to find speakers and I know how much work that can be at times. And as I’ve noted in the past, I like to give back to the #SQLFamily community that has given me so much. So I said ultimately yes.

I have a variety of topics I can speak on (my favorite though is still my talk about Plane Crashes and IT) and when I’m in a regular rhythm of talking, I can probably give almost any of them on short notice and with little practice. That said, ideally I will run through any of my talks at least once in full again before I present it in front of people. This helps me with pacing, remembering what slides come when, ensuring I don’t forget points I want to cover, and equally important, not straying too far off topic. If the talk requires demos, I DEFINITELY want to run through it at least once or twice before I present.

In this case, since I think I had only presented a SQL talk twice since PASS Summit last year and it was even longer since I gave this talk (A Dive into System Databases), and this one is particularly demo heavy, so I definitely wanted to practice. And it was frankly a damn good thing I did. One demo didn’t work at all. I realized after 30 minutes of struggling with it, that it had never worked and I had simply forgotten that. (Though the comment at the top of the code Do Not Demo might have been a clue to me I should have heeded. I just couldn’t remember why I had written that). Another demo quite honestly, didn’t work nearly as well as I would have liked, in part I believe because I had written the demo for SQL Server 2014 or 2016 and was now running that machine on 2017. I didn’t have time to rewrite the demo, but I did have time to revise my comments and put the issues into context.

The other demos ran according to plan, but being able to run through them again helped me group my thoughts and comments so I could present them more effectively.

Ideally I would have had one more chance to run through my entire talk before I presented it, but I just didn’t have the time. I’ll admit it was not my best effort, sorry Sioux Falls folks, but it wasn’t one I am ashamed of either. And it was far better than if I had not run through it at all.

One of the issues with giving a remote talk is you don’t get nearly as much feedback from the audience. That can also be discouraging. And I won’t shame any particular user group, but there was a group I presented to remotely in the last year where it went quite honestly from my ending it with “Any Questions?” and getting none to having the organizer within seconds basically saying, “Thanks Greg. Ok folks, meeting is over” and closing the session. The lack of any feedback, positive or negative was really discouraging (hint to organizers of remote sessions, don’t do that.)

In this case I had several questions and we chatted briefly afterwards before the session ended. I also ended up with at least 2 additional followers on Twitter. I’ll take that as a good sign.

I think as the time of Covid is hopefully ending I’ll be looking at speaking more and more. I still prefer in person (and have one scheduled next year for the Hampton Roads SQL User Group) but will probably still do a few more remote ones.

Writing this, I realized I had ignore an interview I recently did with an old college friend and a partner of hers. It’s not a presentation, so didn’t come to mind when I was writing the words above. The interview was about an hour, but they managed to break it up into 2 different videos, with some overlap.

Subject2Change – Caves

Subject2Change – Leadership, Risks and Cave Rescues

Inbound and Outbound to NYC

I still recall the first computer program I wrote. Or rather co-wrote. It was a rather simple program, in Fortran I believe, though that’s really an educated guess. I don’t have a copy of it. It was either in 7th or 8th grade when several of us were given an opportunity to go down to the local high-school and learn a bit about the computer that they had there. I honestly have NO idea what kind of computer it was, perhaps a PDP-9 or PDP-11. We were asked for ideas on what to program and the instructor quickly ruled out our suggestion of printing all numbers from 1 to 1 Million. He made us estimate how much paper that would take.

So instead we wrote a program to convert temperature Fahrenheit to Celsius. The program was as I recall a few feet long. “A few feet long? What are you talking about Greg?” No, this was not the printout. This wasn’t how much it scrolled on the screen. Instead it was the length of the yellow (as I recall) paper tape that contained it. The paper tape had holes punched into it that could be read by a reader. You’d write your program on one machine, and then take it over to the computer and feed it into the reader and it would run it. I honestly don’t recall how we entered the values to be converted, if it was already on the tape or through some other interface. In any case, I loved it and fell in love with computers then. Unfortunately, somewhere over the years, that paper tape has since disappeared. That saddens me. It’s a memento I wish I still had it.

In four or five short years, the world was changing and quickly. The IBM PC had been released while I was in high school and I went from playing a text adventure game called CIA on a TRS-80 Model II to programming in UCSD Pascal on an original IBM PC. (I should note that this was my first encounter with the concept of a virtual machine and p-code machine.) This was great, but I still wanted more. Somewhere along the line I encountered a copy of Microsoft’s Flight Simulator. I loved it. In January of 1985 my dad took me on a vacation to St. Croix USVI. Our first step on that trip was a night in NYC before we caught our flight the next morning. To kill some time I stepped into 47th Street Photo and bought myself a copy of Flight Simulator. It was the first software I ever bought with my own money. (My best friend Peter Goodrich and I had previously acquired a legal copy of DOS 2.0, but “shared” it. Ok, not entirely legal, but hey, we were young.)

I still have the receipt.

For a High School Student in the 80s, this wasn’t cheap. But it was worth it!

I was reminded of this the other day when talking with some old buddies that I had met when the Usenet sci.space.policy was still the place to go for the latest and greatest discussions on space programs. We were discussing our early intro to computers and the like.

I haven’t played this version in years, and honestly, am not entirely sure I have the hardware any more that could. For one thing, this version as I recall was designed around the 4.77Mhz speed of the original IBM PC. This is one reason that some of my readers may recall when the PC AT clones came out running the 80286 chip running at up to 8Mhz (and faster for some clones) there was often a switch to run the CPU at a slower speed because many games otherwise simply ran twice as fast and as a result the users couldn’t react fast enough. So even if I could find a 5 1/4″ floppy and get my current machine to read the drives in a VM, I’m not sure I could clock down a VM slow enough to play this. But, I may have to do this one of these days. Just for the fun of it.

I still have the original disks and documentation that came with it.

Flying outbound from NYC

A part of me does wonder if this is worth anything more than the memories. But for now, it remains in my collection; along with an original copy of MapInfo that was gifted to me by one of the founders. But that’s a stroll down memory lane for another day.

And then I encountered SQL Server only a short 6 or so years later. And that ultimately has been a big part of where I am today.

ICE ICE Baby

I rarely like to make predictions or bold claims, but dawned on me that it’s pretty much all over for the Internal Combustion Engine cars and trucks. Forget government mandates or the latest Tesla press release.

Why do I say this? a few months ago I recall reading the press release for the new F-150 electric truck. The stats made for some impressive reading. And more interestingly, if anything, it appeared Ford downplayed some numbers like range (i.e. giving a conservative estimate based on actual usage as opposed an optimal number based on unrealistic driving conditions). They announced an initial set of production numbers and a few weeks later doubled their 2024 production estimates. The Ford F-150 has been the best selling vehicle in the US since 1981. Announcing an electric version was no small thing. And people took to it like a duck to water.

But that wasn’t the thing that convinced me. It was the ad I saw tonight. I can’t find a link to the latest but it features the F-150 Lightning, the E-Transit, an electric version of their best selling van and the Mustang Mach-E. This is a wide range of vehicles and it’s clear that they’re not targeting niche vehicles or make a pro forma attempt. They mean business.

They know where the market is heading and it’s electric. The market has spoken and the future is electric. Mandates and the like won’t matter.

Touring a Tin Can

As some of you know, my grandfather served on PT 127 in WWII. 80′ of fighting fury. PT boats were fast, with speeds of 40 knots or more. I had the honor and privilege of riding one with him close to 15 years ago when one of the few remaining operating ones in the world was on the Hudson River. After that, my family and I had the privilege of boarding PT 617, an 80′ Elco at Battleship Cove. As a “splinter” we were able go on board and below decks and get essentially a private tour. One of the items I hoped to see was the map table, where my grandfather claimed he slept, rather than his bunk. He had the privilege because he was the oldest on board and this allowed him to get a nice cross-breeze in the tropical heat of the Philippines.

Cabin of PT 617

I was thinking of him this past weekend as my wife and I visited another WWII ship, the Destroyer Escort Slater (DE-766). Everyone loves the battleships, from the USS Massachusetts at Battleship Cove to the famous Iowa class battleships that were brought back into service in the 1980s. And yes, I have to say, there is something to be said for the “big guns”. The ability to hurl a shell the mass of a Volkswagen Beetle over 15 miles and to hit ones target is impressive.

But very often the workhorses of the fleet are overlooked, the Destroyers and their little brothers, Destroyer Escorts. They guarded the conveys bringing much needed supplies to Europe to fight Hitler. They guarded the fleets in the Pacific. Literally 100s were built. The first Destroyer Escort rolled off ways in 1943. This means in the space of approximately 24 months, more than 20 a month were built. Destroyer escorts were built quickly and without the luxuries their large siblings might have, such as air conditioning or even a simple thing like an ice-cream maker. And fast, they were knot. Top speed was closer to 20knots, with them often operating slower than that. For their primary role however, anti-submarine warfare while escorting conveys, this was sufficient. Their size also allowed them to turn more tightly and gave them more maneuverability than their bigger brothers.

But this did not mean they weren’t critical to the war effort. However, at the end of the war, like much of the US arsenal many were tossed on the scrap heap. There was little need for so many of the ships often called tin cans because of their lack of armor compared to the fleet carriers and battleships. Some were transferred to other navies. This was the fate of the USS Slater. It was transferred to the Hellenic Navy and was decommissioned in 1991 when it was brought back to the US.

It eventually made its way to Albany NY where it’s a floating, living museum. I say living because you’re actually allowed to touch and operate some items and they encourage sleepovers and the like.

Looking Forward

The tour is impressive and well worth it. If you’re ever in the Albany area, I do recommend stopping by the USS Slater and then perhaps a flight of beers at the Albany Pump Station.

3″ Gun on the Bow

While waiting for our tour guide, we walked around the tour shop a bit. Two things jumped out at me. The sodas and snacks were only 93 cents a piece (with tax that comes to an even $1.) That’s a bargain as far as tour shop snacks go. But the real find was a copy of “The Last Stand of the Tin Can Sailors”. This had been on my reading list for a few years and I decided I’d pick up a copy on the way out. (The additional bonus of this, was any profit from the sale of the book would go to the museum and not to a large nameless company shipping it to me.)

For those not familiar with it, it details the exploits of “Taffy 3” at the Battle off Samar, where 3 destroyers and 4 destroyer escorts, combined with the aircraft off of the withdrawing “jeep” carriers (CVE) took on a major Japanese fleet, including the battleship Yamato, ultimately causing the Japanese fleet to withdraw.

To give you an idea of the mismatch here, the combined weight of the destroyers and destroyer escorts was about 1/5th of the weight of the Yamato alone. Even if you add in the weight of the CVEs and their planes, it wouldn’t have added up to the weight of the Yamato. And the Yamato, the largest warship afloat, was just a part of the Japanese fleet heading their way.

The largest guns Taffy 3 had were 5″ guns. These were no where nearly powerful enough to penetrate the armor of the Yamato or other Japanese cruisers. On the other hand, the 18.1″ guns on the Yamato were designed to penetrate the armor of American battleships. The armor on a tin can wouldn’t even slow down such a shell.

And yet, the American sailors, knowing how important it was to stop the Japanese fleet turned towards the Japanese and engaged them head on. And ultimately, the Japanese withdrew, thinking they were facing the fleet carriers and that the larger cruisers and battleships were probably on the way.

The battle of Midway is often considered the turning point of the war in the Pacific, and in many ways it is, with the Japanese losing a majority of their fleet carriers. But I think the Battle off Samar has a special place with David defeating Goliath.

Sometimes the smallest can do the mightiest things.

40 mm Bofors

A Different Perspective

I was going to write a follow-up to last week’s article on Simon Biles and talk about teamwork, but decided to go with something a bit more lighthearted: a Hudson River cruise.

As many of you may know, I live in upstate New York, specifically near Troy. A dominant physical feature here is the Hudson River. Within a 10 miles of my house there are eight road bridges and one river bridge. But even with that many crossings, it’s a definite barrier to travel at times.

The eastern side of the river, other than Troy tends to be fairly rural with only a couple of large open-air shopping malls. But to the west is Albany and Colonie and they have the two largest indoor malls in the area, plus a number of open air malls, the State Capitol, and the bulk of the office space. This means to do a lot of what most of us on the eastern side want to do, we have to cross the Hudson.

I suspect most folks who cross the river don’t give it much thought, beyond it being a barrier to get over using one of the aforementioned bridges. I know as a bicyclist I definitely have to do some route planning when I want to get to the other side.

This past weekend, my family and I decided to experience the Hudson from a different perspective, actually on the Hudson. We signed up for a 90 minute tour on the Dutch Apple leaving from downtown Albany. I want to start with the name. I’d say most of my readers are probably aware that the name of the river comes from Hendrick Hudson, an early explorer of the area, who first sailed up the river that now bears his name in 1609, over 400 years ago. They might even recognize he was Dutch. But, given the state I live in is known as New York, most folks think of New York as primarily an English settled area.

But, the early history is definitely Dutch and there’s still a very strong Dutch influence in the area that extends beyond the name of the river. I live in Rensselaer county, named for Kiliaen Van Rensselaer. He was once claimed ownership of the most land by any European in North America, with his claimed holdings extending for miles on both sides of the river.

In addition, the first settlement in the Albany area was known as Fort Orange. Also, instead of streams in the area, many of smaller waterways are known as Kills. But enough of the early history and language lessons.

The cruise let us see the river from only about 10′ above the water level, not 100′ like some of the bridges (little side note, until late in the last century, the US Coast Guard required bridges as far north as Troy to have at least 60′ clearance.) And instead of crossing over the river, this allowed us to cruise along it.

After undocking, at first the Dutch Apple headed north from its mooring. We sailed under the Dunn Memorial Bridge where a Peregrine nesting box was pointed out and some could see a one of the nesting falcons. I could not.

Dunn Memorial Bridge (Peregrine box underneath on top of the concrete pier)
Dunn Memorial Bridge (Peregrine box underneath on top of the concrete pier)

Unfortunately for us, just north of there is the Livingston Avenue Railroad bridge. This is a swing bridge that’s too low for the Dutch Apple to pass under. Taller boats can pass upstream of it but need to make arrangements in advance with CSX/Amtrak. So from there we turned downriver.

One thing many people are not aware of is that the Hudson River is actually an estuary as far north as north Troy where the Federal Dam is located. This means that there are tides on the Hudson all the way to north Troy. When one crosses over the river one can notice the tides if one is observant or the tide is particularly low and the smell pungent. Saturday, as we headed south, the tide was coming in. Between this and the wind, it actually meant the boat had to make more effort going downriver than upriver!

River in foreground, with the old D&H building in the midground and Corning Tower left of center in the background.
Albany from the Hudson

Another reminder of the importance of the Hudson and the nearby Mohawk, and later Erie Canal was that the Albany/Troy area was once the gateway to the west. Besides the waterways, trains were an important part of this, and one of the major local railroads was the Delaware and Hudson. From the river you have a nice view of the old D&H building which now houses SUNY Albany offices and other offices.

Heading further south, on the eastern bank Fort Crailo was pointed out to us. Again, a Dutch influence, but also home to where Yankee Doodle Dandy was later written down.

Given that the Hudson is a tidal river and Albany is still an important gateway to the west, the Port of Albany is a key part of the local economy. But again, I would suspect most folks who drive across the Hudson aren’t aware of the size and scope of the port. I think most equate it with the area where the Dutch Apple and the USS Slater are docked. Really though that’s not the active part of the Port of Albany. But the following photos show facilities on both sides of the river.

Foreground is the Hudson, with a seawall and then a wide open area for the port of Albany.
Port of Albany with huge mobile cranes

Apparently the Port contains the largest grain elevator east of the Mississippi!

Sloping roof dominates image with storage towers on both sides. Part
Grain Storage at the Port of Albany

As you can see, even ocean going ships come this far north.

Large orange tank, with two tugboats pushing it into position.
A large ocean going tanker
Bulk cargo ship with 3 of 4 cranes in operation, loading scrap
Loading Scrap on the eastern short
Dark and light orange barge with tug headed up stream.
Barge with tug

Not all commercial craft on the Hudson are ocean going. The Mississippi isn’t the only major US river with barge traffic. That said, Hudson river barges are much smaller and as far as I know, are only moved one at a time. It’s hard to tell in this photo, but the barge actually has a small notch in the stern that the tug fits into for pushing. This barge is most likely loaded as its sitting low in the water and being pushed. Once empty, often the tug will move to the front and tow the barge as it will be riding higher in the water and by being in front the tug has better visibility.

But the Hudson is not all business. Folks also have lots of fun.

Powerboat passing us on the Hudson.
Having Fun

Finally after about 50 minutes of sailing, we headed north. Our tour was scheduled for 90 minutes, but because of the incoming tide, we actually headed upstream a bit faster.

Image is of the Hudson, with the Corning tower a speck in the background. Boat ensign in the foreground.
Looking north before we turned around

I’ll brag a bit and say I probably know a bit more about the Hudson and its history and influence than many in the area, but it still really helps to see it close up and realize things like exactly how large and busy he Port really is and to hear more history of it and even see some of the history (like the shore protection put in over a century ago, or some of the older residences on the river, some that are close to 300 years old).

We have a deep history here and its worth getting down to see it. And sometimes one needs to look at something that they see every day from a different perspective.

Free Cell #1703491

This is a completely random post and for a very select crowd.

I often play Freecell (far to much, but that’s another story). Years ago, when it first came out with Windows XP, I wondered if every game was winnable. Apparently, not. That said, I haven’t come across any of the “impossible games”. But I’ve come across a few hard ones.

But none nearly as hard as game #1703491. Usually I can solve most games in 2-5 minutes, sometimes it takes 15-30. I was into this one for over 2 hours before I did something I’ve rarely done. I looked for help. Mostly I wanted to know I wasn’t playing an impossible game. A brief search suggested I wasn’t. A longer search proved I wasn’t. But there was only one cryptic suggestion. I had pretty much settled on this being the most likely path, clearing the 6th column.

Now, small sidebar. To add a bit of a challenge, I have a self-imposed rule that I don’t put cards up on the home cells manually, I let the game move them automatically. In other words, if there’s a free card I can put up there manually, but that won’t go automatically, I won’t put it up. This happens for example if the the home cells AH, blank, 2D, AS, I won’t put up the 3 of diamonds. The game won’t automatically put up the 3D until the 2H, 2C and 2S are up there also. Like I say, no real reason other than the extra challenge. I had to break that rule in this game.

Anyway, even with that advice, I kept getting stuck.

A common spot I would get to was:

Making Progress

Still not much wiggle room

This was the first time I had freed up the 8th column. So that was progress and I had considered that key. I’m not sure what took me this long to figure out this combination of moves.

And now the break-thru. I’m feeling good here. I know once I get the 2 of Hearts up there, I’ll be making real progress!

This move is obvious

Now I’m gaining momentum. I may seem tempting to free up that 2 of Spades. Resist that temptation!

Don’t play the obvious move!

Rather you want to move that stack on the 5 of Hearts. With that move and a few others you end up at:

Now we’re making real progress!

The next few moves are pretty clear. Now we can move up that 2 of Spaces and after that the game is clearly winnable.

Getting Close

That said, I have to break my own rule one more time, but I don’t care. I’m ready to win.

Almost There!

And that’s it! I can relax now!

Whatcha Reading?

I thought I’d start off March with something a bit lighthearted and as sort of a follow-up to last week’s post about what I’ve been eating in the last year.

For as long as I can recall, I’ve loved reading. I could not wait until my kids could learn to read. Without reading, we are in many ways limited to what we can see with our own eyes right in front of us. But by reading, we open up whole new worlds.

I’ve stood on the peak of Amon Hen with a Halfling as he stood there, wearing a magic ring, debating what he should do as he looked across the world and could feel himself being spied upon.

I’ve flown in a spacecraft controlled by an intelligent computer that was given opposing directives that it decided it could only resolve by killing its crew as it flew through space on its way to a flat rectangle whose dimensions were known to us to be in a ratio of 1:4:9 and in higher dimensions could be said to extend to to 16, 25 and possibly higher.

I’ve travelled the ante-bellum Mississippi with a young man named Huck and his best friend Jim. I’ve wondered why the hounds of Baskerville didn’t bark. I’ve flown over Italy, dropping bombs on people wondering why I was doing that as they had never done anything to me. And people thought I was the crazy one.

I escaped my boarding school and wandered the streets of New York City for day. (I should note my dad insisted I read this one and told me I’d really relate. I didn’t. I found Holden to be boring, self-centered and honestly, just plain annoying). On the other hand, I loved riding in an automobile escaping New York City to Long Island while past a valley of ashes during the roaring 20s. Those same ashes appear later in the biography of the man who would literally reshape the outline of Manhattan and the traffic patterns of that great city and other parts of New York for generations to come.

I’ve read of a dystopian future that at times seems all to close where certain women are forced to wear red cloaks and to bear children for other couples. But I’ve also sailed across the seas of a foreign world where there are no continents, just archipelagos of islands, on one of which one a young woman, raised to be a priestess/goddess to her people learns from the gentleness of a young man she’s forced to impression that there’s so much more to learn of the world and gains her freedom.

I’ve sailed into deepest Africa to find a man who has gone crazed with power. And later voyaged to the bottom of the planet on a sailing ship, only to find myself stuck with my fellow crewmates in ice for over a year. Our captain undertook a daring and amazing voyage to a whaling station, only to have to cross over the mountains between where they landed and the village in order to find our rescuers. I’ve also sailed to the Moon and back, numerous times, the first, hitchhiking along on Christmas Eve as the story of creation was read to the nations of Earth. I joined him again later only to discover once again we weren’t going to land, in fact we weren’t even going to orbit. But that’s ok, I also travelled to the Moon and back again not just once, but multiple times, including with the first man to walk on the Moon and the last.

I’ve also hiked to the top of Mount Everest and surveyed the detritus of bodies of those who attempted the trip and failed and felt relieved to know that at least one who had been left for dead later found the will-power to pick himself up and crawl to the nearest camp. In a similar vein, I’ve read both sides of the story, of two climbers in the Andes, one who had to cut the rope of his partner, letting him plummet to his death, the other being the one whose rope was cut, falling not to his death but to a miracle. But I was also heartbroken to read of the young man who went into the wilderness of Alaska to live, and ultimately die in an abandoned bus.

And then yet another morning I woke up to find myself in the body of an insect, wondering what it all meant. And another day I came home from school to find a tollbooth in my bedroom through which I could ride a toy car and be joined by a humbug and later jump to conclusions.

Ok, enough reflections on that, let me talk a bit more about what I’ve read or will read in the coming months. I’m a luddite in some ways. I still prefer the feel of dead paper in my hands. At the top of this article is a photo of some of the magazines I tend to read on an a monthly basis (I just realized at least one is missing).

Discover and Scientific American: I read monthly, cover to cover and learn all sorts of new things. I highly recommend everyone read at least one of these. Yes, some might argue they “dumb down” science, but in reality I think they make it more accessible.

NSS News: This is an interesting one. The articles can range from extremely technical (the chemistry and hydrology of a cave for example) to very lighthearted or celebratory. It’s one of the few printed items I read where on a nearly monthly basis I can expect to read the name of someone I know personally, or see their credits for photos. It also collects excerpts from grotto newsletters, giving me a more intimate feeling of what other cavers are doing.

Trains: Ok, this is a bit of a niche market, but I’ve always been fascinated by trains and railroading and in fact bought stock in BNSF long before Warren Buffet did. He just had a bit more money than I did when it came to buying the whole thing.

Outside: I’ll admit I actually read this the least. I get it for free, so it’s nice to browse when I have time. But honestly, I’d rather BE outside than read about it!

Air & Space: Again, following my theme of science and space, I love reading this one.

The Times Union: Ayup, I still read the daily newspaper. I find an online version doesn’t cut it. When I was working in the Washington DC area I also subscribed to the Washington Post (and then on the weekends would come home and catch up on the Times Union)

But what else? You may notice so far I haven’t mentioned anything about SQL Server. But, just this past month I finished reviewing a book a publisher has asked for my feedback on possibly editing and updating. So there’s that. But I find most of my SQL reading is done via blog posts. These include but are not limited to:

Monica Rathbun: some great articles, generally with a focus on performance. Well worth the read!

Deborah Melkin: I’ve known Deborah since she first came to SQL Saturday Albany to speak and have always enjoyed her style and ability to make complicated things simple enough to understand.

Steve Jones: I think he probably blogs the most of anyone I follow. I’m not sure how he does it, but it’s consistently great.

Ray Kim: a fellow member of the Capital Area SQL Server Group, he, like me blogs about a lot more than just SQL Server. He will often focus on baseball, like his most recent blog entry.

Derek Lyons: I’ll admit, anime has never really been my thing, but it’s always nice to see what a friend is writing about. But if anime IS your thing, check out his blog.

And of course I’d be remiss if I didn’t admit that I’ll google stuff a dozen times a week if I need to, so there are plenty of other blogs and pages I’ll hit on a regular basis.

And being the luddite I am, I still read Usenet and actually moderate the sci.space.tech and sci.space.science discussion gorups.

And I really do read SQL books from time to time, they’re just not overly gripping reading!

Finally, living outside of Illium, err Troy, I once met a young old man who went by the name of Billy who told me of his adventures in WWII and travelling to another planet. All the above is just a small part of what I’ve read and a small part of what I will read. And so it goes.

Backups Are Useless

I’m going to take a controversial stand and argue that backups are useless.

Over the last few months I’ve worked with a client of mine to test their Disaster Recovery procedure for one of their major in-house applications. This involved multiple several-hour meetings with anywhere from 5 to 10 people at each meeting, sometimes more. Each hour probably cost the client $1000s of dollars. The cost of running these meetings and tests probably cost the client well over $100K.

This is ignoring the costs of the associated hardware, the power for the backup datacenter, the cost of heating and cooling, and of course the licensing. I wouldn’t be surprised if they easily spend more than $1 Million a year in backups and the like.

And for what? A fairly low probability event?

I mean sure, if their system failed and they had no Disaster Recovery plan it could cost them 10s of millions of dollars in business and perhaps even end up putting 100s of people out of work. But they’d find other jobs. In the meantime, all that money spent on backups could have been spent on other things like lunches for for the employees (and maybe a pizza or two for select consultants). Think of the boost to the pizza economy that would have been!

So, don’t do backups.

Oh and don’t wear a mask. They’re hot, sweaty, and really not even .1% of the US population has died. And sure, you might get COVID-19, but you’ll probably survive. Sure, you might have some cognitive long-term issues, but hey, that’s sort of like the employees at my client above who, if the company went under, could simply find another job. I mean it’s not a big deal. Amirite?

Now let’s be serious. If a DBA came in to your business and said not to bother doing backups, you’d probably laugh at them. Do backups. And of course wear a mask. There is so much evidence it makes a difference. And, socially distance for now. And reconsider large family gatherings for the next month or two, if only to help increase the odds that you can have such a gathering a year from now.

Part of this post was prompted by a question on Quora from a user asking how to recover their database if they didn’t have a backup. I hated to tell them that it might be too late and there was quite likely little they could do. And I’ve read too many heart-wrenching stories from nurses who have had to hold the hand of a dying patient because they thought Covid was no big deal or a hoax. So, please, take precautions. Even if nothing happens to you, it may happen to those close to you.

That said, I will repeat an adage about backups I heard a few SQL Saturdays ago: “Backups don’t matter, restores do!” So do backups, but restore them every once in awhile to make sure that they actually work!

For the record, with my client, not only did the official DR test run go smoothly, we beat our RTO and RPO by huge margins. If disaster strikes, it’s highly likely this customer will weather it without threatening the future of the company.

Let me Try this… in Prod

A more light-hearted look at things today. There are certain phrases or ideas you hear that should give you pause. There’s the classic, “here, hold my beer and watch this.”

And of course what I heard yesterday while on a call with a client and their developer said, “well let me try this, what’s the worst that could happen?”

Just the other day, fellow #SQLFamily member David Klee tweeted:

A software vendor just told my client to restart their SQL Server after every backup. I am beyond speechless.

I read that tweet and literally sat there slack-jawed for half a minute. I swear I felt a disturbance in the Force as a million DBAs cried out in terror.

But this got me thinking of other bad advice I’ve seen over the years, such as “we reboot our SQL Server nightly because it has a memory leak and uses all the memory on our server. Oh and by the way, can you tell us why our server is so slow in the morning?” (Ok the 2nd sentence is partly made up, but I’ve had clients complain about performance issues which were due in part to them restarting their SQL Server.)

Or, “don’t index, keep everything as a heap.”  Yes, I saw that someplace, I’m still not quite sure the reason they had for that.

“Oh, we had a problem with this stored procedure sometimes running really slowly, so we hardcoded WITH RECOMPILE in. Now it runs consistently.” Fortunately by the time I had arrived they had stopped this particular process, instead they just had  scheduled task that recompiled it at least once a day. This one was interesting. After determining a couple of performance issues with this sproc, including parameter sniffing and using SQL Server 2005 XML parsing in it, I developed a far better solution that eliminated the parameter sniffing and in most cases eliminated the need to parse the XML at all. The client didn’t adopt it. A year later, a DBA brought in for another project took a stab at this sproc and came up with a similar solution (though he didn’t reduce the XML parsing like I did.). They didn’t adopt it. Finally, over 2 years after my initial recommendation, I was able to convince them to implement it.

“Oh, I have covering indexes for every column and include all the other columns!” Ok, I haven’t seen it quite this bad, but I’ve seen indexing that approached this level.

“We use NOLOCK, because it’s faster.” This is a common one. Now, I’ll admit years ago on a platform we built we did use NOLOCK because it was faster, BUT we also actually understood what it could do and honestly didn’t care about inconsistent results (we were serving up classified ads, so if you saw a different set on a page refresh, it was actually a useful side effect.)

In general, I find bad advice or bad ideas fascinating. I love to understand how they came into being. In some cases, like my employer’s use of NOLOCK, it was actually a conscious choice and we understood the drawbacks and accepted them. I wouldn’t necessary call that a bad idea once all the particulars were known. But on the face of it, it certainly looked like a bad idea, and that was SQL 7.0 and later SQL 2000. With more modern versions of SQL Server, I would argue there are betters solutions now.

In the case of my former client doing the RECOMPILE, that’s more subtle. Yes, their solution worked, but, it was clearly the wrong solution because they didn’t understand what the problem was, or how to fix it properly. So I’d argue this was a bad idea.

But when it comes to restarting SQL Server after a backup, I really still have no words. It’s not clear to me at all what problem the vendor thought they were solving or why this would solve it. This truly is a bad idea all around.

Fortunately, in the particular case of my client and their developer, the worst was, we’d resend 25,000 rows of data to Salesforce to be updated. That would take 2 minutes and not break anything. He knew this and was joking, but it was funny to hear.

So my question to my readers is: what’s the worst idea or advice you’ve heard and did it in retrospect have enough context to perhaps at lease explain why someone came up with it, or was it simply so bad you’re still shaking your head? This doesn’t have to be SQL related.

P.S. – my next Redgate article should be published soon. Keep your eyes open for it!

Covid Challenges

There’s no doubt that Covid-19 has had a huge impact on our lives. Professionally for example it means a change to a virtual SQL Saturday and a Virtual PASS Summit. It means some of my fellow #SQLFamily have gone radio silent for various periods of time as they’ve dealt with this crisis in their own fashion.

I know personally there are days I just want to go outside and scream. There’s so much disruption in the world and in my life. I miss being able to travel freely, to see as many friends in person as I’d like and so much more. I mourn the loss of schooling as we know it for my kids and everyone else’s kids.

20200313_183236

Early on during the pandemic – bare shelves where toilet paper and paper towels should be

But, I’ve also been very fortunate. I’ve had a few friends who have contracted Covid-19, but all have survived (though as we’re learning, surviving may include long-term impacts such as irregular heart rhythms, changes to mental status and drug uptakes and more). I know of one former co-worker who succumbed to the disease when it was in the middle of the NYC spike. Other than that, fortunately, the only deaths I’m aware of have been friends of friends. This doesn’t make the disease any less tragic, but just a bit more remote for me.

But, the above could be said of most of us and rather than focus on the negatives, I wanted to talk about some of the changes in my life this year and how I’ve tried to rise to the challenge. Before I do so, I want to be clear, that how one rises to the challenge is different for everyone and this is not meant to be a brag sheet as much as a statement of what I see as some positive things in my life. I’d love to hear some positivity from YOUR life in my comments. We all know how bad this year has been, let’s talk about some good stuff for a change.

Backpacking

One of my goals for decades has been to hike the Appalachian Trail. No, I can’t say this was the year. But, I had section hiked a portion from my Dad’s house in CT up through Dalton MA while in college and then a year or two later from Bennington VT up through Manchester VT (I’m still grateful to the poor soul who picked up my friend and I have 2 days of sweaty exertion without clean clothes!) But this meant there has been a gap between Dalton MA and Bennington VT.  Last month I was able to FINALLY put a backpack on and close part of that gap.  I’d love to post photos, but silly me left my cell phone in my car! So here’s one after I got back to my car.

Do I look tired?

After hiking 17 miles during a heat wave

I hope to get in the final 20 mile stretch in the coming weeks. This will mean that I can check Massachusetts off my list of states to hike for the AT.

Sourdough

Ok, show of hands, who here has dabbled in sourdough during this pandemic? I know I have. I kept a starter going for about 4 months before taking a break from it over the summer. I made a number of loafs of bread as well as some sourdough waffles (and I’ll admit sacrificed the first batch more than once to the Waffle-Iron gods.) I even added a bit to some homemade pizzas. Tasty stuff and to be honest, I’ll probably do another starter again come fall. I’ve always loved baking so this was just an extension of it.

20200505_120934

Roast Beef Sandwich with homemade sourdough bread!

20200725_190323

Two sourdough pizzas with home grown herbs

More Time with Family

Of course making that much pizza and waffles means I need someone to help eat it. Fortunately we have a full house this summer (and will this fall). So an upside has been more time with the family. Among other things, this meant, especially early on during the pandemic, more family walks in the area.

20200411_145101

Family walk near the house with leaden skies

Bicycling

Of course all that delicious food I’ve been making needs to be burned off. I’ve literally biked more this year than the last few years combined. As of today, that means over 850 miles for the year. This includes a 55+ mile ride this past weekend. I’ve really been enjoying it. I’ve been a bicyclist my entire life but have missed riding this much. I’m hoping next year to upgrade my road bike (open to suggestions) to replace my 30 year old Trek 520.

20200809_134643

You mean I still have to bike to the top of THAT? 20 miles in and about 7 miles to go, but that’s where all the altitude gain is!

20200809_142741

“It looks like we made it!” – after the climb

And I’m still hoping to complete my first century ride in over 3 decades (that makes me feel old!)

Speaking

On one hand I’ve done far less speaking for SQL events than most years. I believe SQL Saturday Albany was my first SQL event this year. But I’ve been asked to present virtually at 3 NSS Grotto meetings on “So this is your first rescue.” I’ve also been selected to speak at PASS Summit for the first time, so even though it won’t be in person, I’m excited! I’ve also volunteered to speak at the Denver User Group meeting on September 17th.

Webinars

I’ve taken advantage of the fact that so much is now virtual and attended some Red-Gate Live webinars, a few SQL WIT webinars and others. One piece of advice I’ll give here, if you can, attend what you can. You no longer have to be physically present for most SQL User Group meetings, I know several #SQLFamily members who have attended 2-3 User Group presentations in the same week! It’s one advantage of everything going virtual!

Virtual Get-togethers

I, and in some cases the rest of my family, have Zoomed with my mom, my aunt and others and almost weekly, with members of my #SQLFamily. It’s been a great uplift to see so many folks.

What’s Next?

I’ll admit, it’s been a different year. We had to postpone our NCRC National Weeklong Training Seminar until 2021. But, I just got approval to host a Modular Level 1 this fall. I’m still not sure we can pull it off, but if we can, it’ll be great.

I’ve really missed seeing a lot of folks in person.

Covid still looms large in my planning of travel and events. I don’t know what the next 6-9 months will bring, but I know I’ll try to make the best of it!

What about you?

What’s something positive you’ve been able to accomplish during this pandemic? I want to hear it!

And Remember

20200809_161758

We could all use a little support!