Looking Glass – TSQL2sday #122 – Imposter Syndrome

This month’s #tsql2sdayΒ topic on Imposter Syndrome is being hosted by Jon Shaulis Thanks Jon!


One can find the formal definition of Imposter Syndrome here.

Do I suffer from it? Sometimes I feel like I do; yes- especially during job interviews. I have been working with SQL Server for many years and while I will acknowledge up front that I STILL do not know everything about it that I think I should, I know enough to be dangerous. Or do I?

Why Do I Want to Jump Off?

I’ll share an experience I had many years ago. It really bothered me when it first washed over me. This has happened only two times in my life.

When my family went to the Grand Canyon and on the overlook, I felt an odd feeling that I wanted to jump off.

When we went to the Royal Gorge Bridge here in Colorado, I felt the same thing when I looked over the railing in the middle of the bridge.

This didn’t make any sense to me at all. I’m a normal, mentally healthy and stable person so why would I have these strange and odd feelings?

There has even been a study about it: An Urge to Jump Affirms the Urge to Live.

So why compare and contrast Imposter Syndrome with high place phenomenon (HPP)?

Because I think sometimes we can’t rationally explain these odd feelings based on inputs and other thoughts. We fall into the trap that we have put in the thousands (!) of hours so surely we must know a lot about our career field. And yet sometimes we just can’t believe that we have really earned our success when compared to our own individual progress over the many years and even comparing ourselves with our peers with similar number of years of experience.

So we fear being found out, that we have been believing all these years in fake it till you make it– but never did make it! Been faking things since last millennium (when I started working with SQL Server)! However, during a job interview as both an interviewer and interviewee and doing a true technical skills test, fake people can be eliminated pretty quick. In fact when I was interviewing people as a DBA Manager, the technical skills test I created shocked me at times- so many people talked a great game but when asked to do things in SQL Server Management Studio, they froze up or panicked, couldn’t type T-SQL, etc. It was even embarrassing and sad at times. But that was part of the interview process- can you perform under pressure?


I think it is natural to feel like we do not know a subject top to bottom. Do we know enough to demonstrate competency with a specific skill? Can we learn new things and immediately apply them? Do we trust our own imagination, creativity, and troubleshooting skills? Can we jump in and not know anything but trust in our past to figure things out? Another reason why great FSO people are so valued in startups.


Learn like there is no tomorrow and your life depends on it!

This year I’m learning many things that right now I don’t have a clue about other than I know I need to learn them.

For me, the “Do or do not” is to focus on the actual doing. You do not improve skills by just reading about skill improvement. You have to do the hard work. Are you willing to suffer crippling, humiliating defeat time and time again to reach that one win? You have to learn the material. You have to immediately practice and demonstrate competency. You have to keep it sharp or you will loose it. You have to practice it everyday. Even Yoda endured failures… And succeeded in the end!

Posted in Uncategorized | 1 Comment

On Building SQL Memorial

Background of Idea and Intended Audience

At my age I’ve been to more funerals that I would like. Friends, family, acquaintances. From a variety of causes. Everybody handles death and grief in their own way. For me one of my coping mechanisms is to build things that honor the departed; it is often a type of catharsis for me. It helps me to say goodbye until we meet again if we ever do.

The first death of someone I knew in what we call the SQL Family was Ken Henderson, author. I first saw him at my first PASS Summit here in Denver back in 2007. I had also heard of Jim Gray and recognized his name on a lot of whitepapers and his strange disappearance and massive search efforts. Then Bob Rumburg- I used to work with Bob at a previous job and who I’d see at Denver SQL Server User Group (DSSUG) meetings. Then Alan Weber, a super smart guy who always sat in the front row at DSSUG meetings and always asked lots of deep technical questions. I usually heard about other deaths via e-mail or my primary social media platform, Twitter.

Then Tom Roush. I knew he was fighting cancer and I loved his stories. His death hit me particularly hard and SQL Memorial was born. I did a special version of images from Twitter and Facebook about people commenting and sharing things about Tom.

Since then, I’ve maintained it over the years and while I’m thankful we haven’t had lots and lots of people in the #SQLFamily pass away, each one stings and hurts.

Present Day – 2020I won’t bore you with all of the gory details, hours of suffering trying to figure things out which are WAY OUTSIDE of my wheelhouse from my daily job of working with SQL Server.

All of the tears I’ve shed over the years just handling the material (both looking at and saying real names of people; I’ve personally known many of them) and not just giving up but pushing through with wet eyes at times.

It has recently come to my attention that there could be a desire for others to maintain this and I’m totally cool with that. Either this exact version or a completely whole new version.

Recently I found out about Phil Robinson and someone else who passed away years ago, Kent Tegels. Both of them have been added.

Here is the latest version of the video as of 02Jan20.

This post is more of an overview with a few specifics thrown in than an exact Step by Step technical guide. It is my tribute to the departed to be shared with the #SQLFamily.

Bill of Materials

I have had some inquiries as to how I make SQL Memorial. So this is a peek behind the curtain of what it takes to bring it to together.

The video game engine I use is Unreal Engine 4 (UE4) from Epic Games.

The ocean material (waves) comes from World of Level Design.

Marble texture comes from the free Starter Pack with UE4 and the static mesh is of my own making by combining some starter meshes together into a single mesh.

Frames are from the Framed Photography Pack on the Unreal Engine Marketplace (not officially updated to 4.24.1 but seems to work).

Text on the meshes is from ZText on the Unreal Engine Marketplace too.

All images have to be a power of 2 like 2048×2048. I use GIMP to re-size both the picture and the canvas then export out of GIMP into the picture’s original file format.
When I import them into UE4, they come in as textures. I then create a material from them, then create a material instance. This is for performance reasons. Then apply that material instance to the appropriate frame.

Background music comes from Epic Zen Garden.

All spoken audio is of me recording using a Focusrite 2i2 (thanks for recommending it Jorriss!) and Audacity.

Final video is created by running UE4 from within the Editor using a Standalone Game mode, the Level Blueprint set to play a Level Sequence on EventBeginPlay and captured using OBS Studio.

Please note that GIMP, Audacity, and OBS Studio are all open-source. Please support open-source software financially when you can!

Recording Audio

I lay down all of the audio into one single project. Then copy just that individual into a seperate project. Then export as .WAV file. When complete, import into UE4 and then create Cue(s) for each. In the Level Blueprint, select the named trigger volume and set the trigger volume OnActorOverlap event to play that specific cue.

Thinking Outside of the Box

Right now this a completely manual process. In order to fully automate it in an easy to maintain procedure would require a ton of work. For a handful of folks who have passed, this has been acceptable to me. If however we need to add hundreds of people to the SQL Memorial, then we should look at automation in some capacity.

A limitation of UE4 is the fact that the in-game non-linear editor known as Sequencer unfortunately cannot export audio into a video format. Meaning I can playback a sequence in-game but if I try to export into a format for upload to YouTube, it does NOT capture the audio. Bummer, but they are working on it.

In the meantime, I’ve had to come up with a couple of embarrassing, n00bish hacks. I can just see some game studios or expert UE4 folks just shaking their heads, rolling their eyes at me, as I’m sure there has got to be a better way than what I’m about to explain.

All I can say is that as crude as it is, it works but not as well as I would like.

Old Version: strafe right/crab right into position, activate trigger volume, and wait for audio to play, then finish, pause for reflection. Then onto the next display. Repeat. Record the whole thing using OBS Studio.

New Version: parent First Person Character to a Camera then use Sequencer to build precise moving and stopping in a Level Sequence. When the camera/character passes through a trigger volume, the audio will play. Record using OBS during sequence-only playback.So the old way required me to be super sensitive and speedy on the keyboard using WASD navigation. In order not to jostle the camera, I had to use only the A and D keys during a run-through and time starting and stopping several times.

The new way uses some recently acquired Sequencer skills and a hack by attaching my character to another camera. I put everything into a Level Blueprint for now.I had to re-position the trigger volumes (an invisible wireframe which raises events when something overlaps into its space, like a character).

In Closing

SQL Memorial will have more additions and improvements as the years go by. That is to be expected. But we can take time to remember those who have passed away and I hope this project can help to keep their memories alive in our hearts.

Posted in Uncategorized | Leave a comment

Building and Deploying Projects in Unreal Engine to the Oculus Quest


Over the years I have successfully deployed my own Unreal Engine projects to: GearVR, Oculus Go, and Oculus Quest.

But it wasn’t always easy or straightforward. “Official” documentation often contradicted itself. Searching on the internet for error messages often times resulted in even more frustration as the message was a side effect and not the root cause of the problem.

Hence the need to create and share this blog post to help others trying to do the same thing but with fewer banging your head against the wall sessions.

While I will be referencing both Unreal Engine and Oculus documentation but using my own screenshots, I am also going to show a different path that I have recently tried out and haven’t seen any issues with it.

It involves using the Virtual Reality template project- but note that it does NOT say it is for Oculus Mobile. It has worked for me so far on both Oculus Go and Oculus Quest- collectively known as Oculus Mobile.

I walked through these steps in some recent presentations I have given at the Colorado Virtual & Augmented Reality Group and the Denver/Boulder Unreal Engine Group.

Please note this information is offered as-is, no warranties expressed or implied. And please take time to read through this document; you may or may not have everything your need right up front like the USB to USB-C cable for the ‘Quest.


You already have an Oculus Mobile set-up and configured using it with probably your phone on the same wireless network. Note the username you used; you will need it again below to link to a developer account. These steps will take one from a clean start to a successfully side-loaded project using a Windows desktop. I don’t have easy access to Linux or Mac but most of the steps will be similar.

Key: be sure you have the latest version of the firmware for your Oculus Mobile and the latest version of the Oculus app software on the device used to configure it. Also you will find that sometimes when you launch UE4, the Oculus desktop software might tell you to it needs to update. So just a friendly head’s up that you will be re-starting your PC early and often.

Step 1 – Install Launcher and Highest Version of UE4

Download and install “The Launcher” from https://www.unrealengine.com/en-US/ and install the latest engine. As of this writing, that is 4.24.1 Please read the EULA and also note that you will need to create a login. Please use a strong password πŸ™‚ And re-boot your PC.

Step 2 – Install CodeWorks for Android

Install CodeWorks for Android. Please note this is a special version for Unreal Engine development and trying to install CodeWorks for Android from other sources will result in things not working correctly, trust me, I’ve tried. Note that this step will also automatically install all of the Android Device Bridge (ADB) software and drivers to connect your Oculus Mobile to your PC.

Ex: on my machine, I installed the engine on my C: and the path to Codeworks is:

C:\Program Files\Epic Games\UE_4.24\Engine\Extras\AndroidWorks\Win64CodeWorksforAndroid-1R7u1-windows.exe

Right click and Run as administrator to begin the installation process. The defaults are fine but also check the Automatically resolve dependency conflicts. NOTE!!! Please read the EULA(s) and don’t walk away; it does require manual responses during the installation. This process will download and install A LOT of software so be patient. And re-boot your PC. Basic screenshots follow.

Step 3 – Install Oculus Setup Software

Install Oculus Setup for desktop software. Even if you don’t have a desktop Oculus Rift, this software is still required. I have a Rift so this is what has worked for me. If you don’t have a Rift, then you might get by with installing just the ADB drivers as mentioned in Step 4 below. You will need to create a login. Please use a strong password. https://www.oculus.com/setup/ And re-boot your PC.

Step 4 – Oculus Developer Registration

You will need to be registered as an Oculus Developer in order to activate Developer Mode on your Oculus Mobile. While that link says Quest, it works for Go too. You can register as an individual.

NOTE!!! Be sure to use the SAME login and e-mail address as indicated in the Assumptions section on this blog post. I’ve had problems trying to use separate accounts and the same account for both has worked for me up to this point. Also note the Important section at the top of that link- since we are going to be side-loading an application, this doesn’t apply to us for now.

Follow the steps on that link above but skip the Install the Oculus ADB Drivers section.

Step 5 – Now the Fun Begins – Quick Start Guide (QSG)

While this Quick Start Guide (QSG) does work, it is seriously lacking. What do I mean by that? If you follow the steps in it, you will have a level with a gray checkered floor that you can only look around in- you can’t move around using the controllers! But go ahead and read it top to bottom as this will give you an insight into the steps required. Once you get the hang of it, it will get easier over time.

So instead of a Blank Project, in Select or Create New Project, choose Games and Next.

And on Select Template, choose Virtual Reality and Next.

NOTE!!! If this is your first project using this engine, your machine will peg its CPU for a while. It will need to compile and cache shaders. It can take several minutes. It will only do this once on this project; when you re-open it, it won’t take as long but this can catch many people by surprise because it will appear that nothing is happening. This template is intended for desktop systems but we are going to change it to work with Oculus Mobile.

Then follow along as the QSG indicates.

On QSG Step 7, also do the following. Under Supported Platforms, be sure to check Android. This is what makes the Virtual Reality Template work on Oculus Mobile instead of just desktop Windows.

Also on Step 7- change both the Editor Startup Map and Game Default Map to MotionControllerMap.

On Step 12, please click on the button that says “Accept SDK License”. If you don’t click this, when you go to package the project for deployment, it will fail.

After QSG Step 16, “Launch the Unreal Engine Project on the Oculus Quest” go ahead and try to deploy from with UE4 but you might need to do Step 6 next before it will work…

CAREFULLY turn your head with the headset on- don’t jerk the cable! The A button on the ‘Quest controller will teleport you and the palm trigger will close/open the hands.

Please note this will ONLY work with it properly connected. How to make it work w/o having a cable attached? You will need to package it and that is covered in Step 7.

Step 6 – The Dance of the Headset

Most of you will need a special cable; USB to USB-C in order to connect your Quest to your PC. You will NOT be able to use the cable that came with your Quest as that is power only and not both power and data; it is USB-C on both ends. The cable that came with the ‘Go works fine. Just be mindful that these cables can be short so don’t accidentally jerk them.

When you connect your headset to your PC with the cable, you will see a screen inside your Oculus Mobile about do you trust this device for USB debugging. You will need to select this from the device and the screen will disappear if you don’t check it. Re-starting the headset and toggling between developer mode can force it to come back. If this is not done, then ADB won’t be able to “see” the device and you won’t be able to deploy to it.

Step 7 – The Smoke Test

In order to install this Android application on Oculus Mobile, you will need to do what is called side-loading. This is a manual installation process.

Re-boot your PC so this is a clean process.

Launch your UE4 project and click on the Build button on the top toolbar. Save your project.

Under File: Package Project: Android: Android (ASTC) and it will default to your project folder. Also check the Show Output Log as this will show you what is happening. Depending on the speed of your machine, this can take a while.

You want to see the magic words: “BUILD SUCCESSFUL” at the very end. Check the Output Log if this doesn’t happen as it can give you insights as to what went wrong.

Now you will need to run an elevated command prompt and browse to the installation folder for your project.

Windows Key + X and select Windows PowerShell (Admin). Select Yes. Then type cmd to switch it into Command Prompt mode.

NOTE!!! If you do NOT select an elevated session, bizarre errors can occur, especially Java related ones. This one step has saved me (finally!) many hours of frustration getting applications installed to Oculus Mobile.

Connect your Oculus Mobile to your PC via appropriate cable and turn it on.

Type adb devices in the command prompt to be sure your PC can in fact see the device.

While I can’t provide a crash course on cmd and dir commands, you will essentially need to path into the Android_ASTC folder of your project. I used the cd.. to get to the root of my C: then to where my project lives. I use the * shortcut to help save on typing.

From here you MUST type the name in exactly in order to install it. In this case it is: Install_MyProject-armv7-es2.bat

If this is the first time you install it, you will see a bunch of Java failed exceptions- it is trying to remove the previous installed application of the same name. You can ignore these. What you want to pay attention to is in the far lower left of the window- watch the percentage installation:I already have it on my ‘Quest so a successful install looks like this:

Unplug your headset and put it on. Under Library, look for Unknown Sources (Developer mode MUST be on in order to see Unknown Sources). Then on the right, click on MyProject. After a few seconds, you will be inside the side-loaded Virtual Reality template and application. Move around using A button for teleport on ‘Quest or trackpad on ‘Go. Palm trigger on ‘Quest can grab objects. Have fun!

I’ve used this template as a starting point to build other Oculus Mobile experiences.


There are a ton of steps to getting a creation onto Oculus Mobile. It has been a long and frustrating road for myself and many others. I believe Virtual Reality can be used in so many ways in both gaming and non-gaming applications to help people. Now that Oculus Mobile (especially Quest) is here, I am excited to see what myself and others can do with it.

I hope this blog post can reduce the time and effort and show people that they too can successfully build and deploy Unreal Engine 4 projects and apps to Oculus Mobile.

Thanks for reading!










Posted in Uncategorized | 1 Comment

A VR Gift to the SQLFamily- SQLPets



This month’s T-SQL Tuesday topic is being hosted by @SQLMal. Thanks Mal!

“Got to play with a cool new technology that has you excited” got me thinking.

A while back, @JeffRush and I had an exchange on Twitter. I know that he (and others) have had mental health struggles from time to time. @TracyBoggiano has even recently created and presented on this topic at a recent SQL Saturday; More Common Than You Think: Mental Illness in Tech.

One thing that helps people deal with things and cope is by looking at pictures. Jeff likes dog pictures.

For those of you who don’t know, one of my hobbies is Virtual Reality (VR). I like to build projects using the Unreal Engine from Epic Games (Version 4.24.0 just dropped today, YAY!!!). Side note: I help run the Denver/Boulder Unreal Engine Group and the Colorado Virtual and Augmented Reality Group. I also have a part-time side-hustle, Zone Of Hope.

So I told him that I would be willing to build him an art gallery for free and populate it with animal pictures if he ever got an Oculus Quest (US$400).

Roll the clock forward several months to 07Dec19.

Jeff put out a poll on Twitter whether he should buy a ‘Quest. I saw that and reminded him my free offer still stands.

A discussion ensued and instead of building something just for him, he suggested why not open it up for the entire #SQLFamily?

SQLPets Was Born

Using the hashtag #SQLPets on Twitter, I’ll be monitoring it closely over the next few weeks. If you want to contribute pictures of baby animals, or pets, etc. here are the steps:

  1. Announce on #SQLPets on Twitter you want to contribute and then follow me @toddkleinhans so I can follow you back (required for direct messaging (DM)).
  2. I’ll DM you a link to a Read_Me file. YOU will agree that you have obtained all rights, permissions or these are personal pictures you have taken and want them to be included into the VR project known as SQLPets. At the bottom of the Read_Me will be a link to a Dropbox folder for you and you alone to use. This will do several things: 1) Get permissions up front 2) Keep both you and me out of trouble 3) Avoid me having to scrape pictures from a hashtag. The image quality is generally poor when re-sized. Think a human-sized poster version of your pictures is what you will see in the final product. So getting a high-resolution version from you will ensure the highest quality version I can use.
  3. For now I want to limit the number of pictures submitted by each person to 10. The current static mesh I’ll be using supports up to ~350 pictures and in order to keep the overall VR file size down, I think this will be reasonable. If we don’t reach around that number, then Jeff can add whatever he wants.

My Gift to Jeff and Others

On or around Christmas, I’ll package up what I have and build a .apk file to be installed on your Oculus Mobile (Go or Quest). Either I’ll use another Dropbox folder to distribute it or might try SideQuest. Here is an example video; still lots of steps to side-load but it does work.

Like other art galleries that I have built, it will work okay on the Oculus Go (US$200), but it will run much better on the Oculus Quest. There are also several steps to go through in order to successfully activate developer mode for Go and Quest. SQLPets will be what is called a side-loaded application. That means it was not distributed through the Oculus Store and is the only way to install this on your device for now.

You will also need a cable to physically connect your device to your computer. For Quest, it must be a USB to USB-C. One cannot use the cable that charges the Quest either, so this is the one thing you will have to buy if you don’t have it in order to put SQLPets on your Quest. For Go, it must be a USB to Micro USB; in this case you can use the charging cable that comes with it.

I only have a Windows desktop set-up at home and I don’t have an easy way to test deploying from a Linux or Mac set-up but I’m willing to work with people to get it working from those too. Using SideQuest could streamline this issue.

I’ll update this blog post with specific steps on deployment. Manually, once everything is set-up, you will run a command prompt using Run As Administrator and path out to where the install (for Windows, this will be a .bat file) lives and then run: Install_SQLPets-armv7-es2.bat and if everything goes well, it will now be installed.

To access it, from the Oculus Home in your Oculus Mobile, in the Library you will now see Unknown Sources. Click that and you should see SQLPets listed. Click that and in a few seconds SQLPets will launch. You will use a teleport mechanic to navigate around. Turn your head where you want to go and on the Quest you will press and hold the A button down on the controller (either hand will work), lift your arm/wrist to control teleport distance and when you let go of the button it will take you there. On Go, you would use the Touchpad on the controller to activate the teleport mechanic.


Being immersed in a VR world and looking at cute animal pictures can give one a sense of hope, positive feelings, and a brief escape to someplace else. This is an art gallery, not a medical treatment plan. If you are in a mental health crisis, get professional help- please.

I wanted to thank Jeff for nudging me to build something for the community and not just for him. And I also wanted to thank Mal again for hosting.

Merry Christmas, Happy New Year, and I hope people like and enjoy SQLPets when it comes out.

Posted in Uncategorized | 1 Comment

T-SQL Tuesday #120 – What were you thinking?


Today’s topic, “What were you thinking?” is being hosted by Wayne Sheffield. Thanks Wayne! And this is the 10 year anniversary of T-SQL Tuesday. Time flies!

The Peter Principle

Have you ever heard of the Peter Principle? In essence one is promoted up either in a company or in their career to their level of incompetence.

Several years ago, I had to work with a very difficult person at a client. Let’s call her Susan. During the interview with the IT department she stated that everything was fine and they really didn’t need outside dba help. Well, the client was experiencing major stability issues with their website and they needed to get off of SQL2005 (upgraded from SQL2000) and onto SQL2012. There was also a long list of issues to be addressed and things came up too during this whole client engagement.

When I started, I was pulled aside by the IT Manager and told that Susan had several HR violations against her, mainly for shouting and arguing with people. So heads-up and tread lightly around her. She was older (maybe ~60+?) and I think that the company and people were either waiting for HR to fire her or she would get laid off. Either way, she was the only database administrator on the team. Other dba(s) had quit over the years because of her and the financial health of the company. I got to know the Director of Software Engineering pretty well and he flat out told me that his developers hated asking her for anything. In fact, many had stopped and would rather try to figure things out for themselves.

A Corner of the Institution

At one point I was flown out on a week long trip in the spring of 2012 to the client’s office in Santa Monica and had a chance to see Susan’s desk firsthand.

I tried to control my confusion and facial expressions but honestly I had a hard time trying to keep it together.

1. She was running Windows XP when everyone else in the company was running Windows 7. She said she couldn’t take the downtime to upgrade.

2. SSMS was connected to all of their instances using the IP address and sa login. When asked why, she said, “Per Microsoft best practice” <- this was a common refrain from her. When asked to provide a link, she never would.

3. She did everything via the GUI- barely typed any T-SQL code. It was like watching paint dry watching her work so slow.

4. The few technical books she did have were either SQL2000 or SQL2005. Nothing new, nothing about SQL2008 or SQL2012. I’m not judging but that doesn’t seem to me to be the bookshelf of a senior dba. Maybe she had a SQL library at home? My gut tells me no.

Other Bad Signs

Short (!) list. No SQL Agent jobs to run CHECKDB (S: it blocks users). Tempdb had 8 data and 8 log files (S: Per Microsoft best practice). All tables were heaps (S: it is not worth the time to create clustered indexes on ~350 tables. I won that battle but it sucked). Didn’t want to attend any of the Project Manager stand-up meetings regarding the migration to SQL2012 (S: I’m just too busy. But you are going to be managing this when we are gone. S: I’ll figure it out then).

All Good Things Must Come to an End

I was put into a bad situation. From me, we expanded the consulting team during the engagement to do a lot of work that needed to be done. Was the project successful? On all technical accounts, yes. Stability and performance were AWESOME when we were done. Upper management was very pleased with our efforts. The public end-users could see major speed improvements on the website too.

But the raw nerves and yelling… Yes, I initially got into a shouting match with her about not running CHECKDB (S: because it blocks users so we don’t run it) when they had many entries in msdb.dbo.suspect_pages. I got so fed up with her I said, “You know more than Paul Randal about CHECKDB?” (S: Who is Paul Randal?) I had to go above her head and won that battle too but it sucked.

Sometimes in life you have to work with difficult people and I’ve had my fair share. Be civil and professional when you can. Stick to facts. But when people don’t want to believe facts and it is harming the business, don’t be afraid to explain it to C-level executives on why something needs to be done.


Posted in Uncategorized | Leave a comment

Snow Duck



Using inflatable structures is one way of being able to use ice as a building material. Sometimes an opportunity presents itself and one has to make time to jump in and grab it, despite not knowing what one is doing. And Happy Halloween!

Backstory – Winning a Duck from Idera Software

A while back, I entered a chat contest on Twitter sponsored by Idera Software. And I won! You have no idea the surprise I got when the receptionist at my work called me up and said there was a package for me. It was from a pool supply company in Houston.

I took it home and opened it up. It was this giant inflatable duck! Which happens to be the mascot of Idera Software in many versions.

My wife said, “What are you going to do with that thing? We don’t have a pool!”

And it sat in my garage until one day my old Boy Scout Troop I used to be a part of announced they were going to Cherry Creek State Park to go swimming and riding waverunners. Asked if I could come along and bring a toy…

So I aired it up, and barely shoehorned it into the back of the minivan.

I showed up and nonchalantly said, “What? Haven’t you seen a rubber ducky before?” It was the most ridiculous looking duck on the lake. You could see it from all around.

And that was the last time I used it.

Backstory – Ice Structures & Ice Instruments

I have been intrigued about using ice as a building material for a while. It is available nearly anywhere in the world.

Here is a cool (!) example: Construction of using air ribbed inflatable — Ice and Snow Lecture Hall.

And for the world’s largest display, China’s Ice City Harbin.

This winter ice castles are returning to Colorado and I am not going to miss it this year.

Note: visualizing ice on a grand scale is a past-time of mine. Engineering things like how does one freeze a lake solid? Not just the surface- the entire volume of water in a lake. Visions of creating, storing, and shipping ice. Building machines made out of ice.

A friend of mine also turned me on to this- ice instruments: Coolest Concert Ever? Hear Ice Instruments Play Beautiful Music | Short Film Showcase

Sub-Zero Opportunity

I knew this winter I wanted to play and experiment with some of my ideas. We recently had a few snow storms and sub-zero temperatures in the forecast. So the idea came to me to get outside and try something.

One of the only inflatable structures I have was a duck.

On more of a whim, I put together a plan of action into motion.

This is one of the few projects I have ever done where I didn’t have to buy anything beforehand!

My plan:

1) Inflate duck on driveway or in the garage
2) Toss over fence into the backyard
3) Create work area in snow
4) Fill buckets of water then into a tub
5) Spray duck using bilge pump and garden hose w/ mist setting
6) Repeat as water freezes
7) Avoid eye contact w/ neighbors πŸ™‚
8) Evaluate experiment

So on number 7, a neighbor who was smoking on his back patio saw me walking a square pattern in the snow.

“What are doing?”

I waved, “I’m building an ice sculpture!”


I lost count but I probably sprayed over twenty coats of water. Waited a few minutes between each one. Ran back inside to watch parts of the World Series.

The first picture above; it reminds me of that scene from The Shining where Jack Nicholson is frozen at the end πŸ™‚

Before winter officially sets in, chalk up one experiment in the books.


The bilge pump I used didn’t have much pressure so spraying water took a lot longer than I had thought. If the ice doesn’t melt off today, I might try covering it with snow.

One of my next ice experiments might involve inflatable air mattresses we use for camping and guests.

Go ahead and call me crazy. I love ice and thinking of ways of using it. Pictures follow.




Posted in Uncategorized | Leave a comment

Certifications are Dead- Long Live Certifications!

This months’ T-SQL Tuesday is being hosted by Alex Yates on the topic of Changing Your Mind. Thanks Alex!

Opening Thoughts

Over the years I have had a love/hate relationship with certifications. I love the discipline required to complete formal education. The hard work one has to do in order to finish something is within one’s own control. Then there is the issue of cost and time. Today it seems like Microsoft has chosen to emphasize just in time learning in the form of micro-courses vs long and formal study paths.

Failed MCDBA – Twice

Back in the day, shortly after graduate school, I wanted to continue my formal education and work on this certification stuff. At the time there was this certification called Microsoft Certified Database Administrator – MCDBA. Sadly I didn’t have a lot of experience at the time working with SQL Server and I was focused on using the GUI (instead of knowing the T-SQL behind it) and I failed the test- twice. I was burned out and disillusioned from that experience- I thought I really knew the material. I read the books and worked the examples. After that I started digging into T-SQL more and more behind the scenes and relying less on the GUI.

Enter Stage Left- The Microsoft Certified IT Professional (MCITP)

After the death of the MCDBA certification, we saw the rise of a new cert, the MCITP- Database Development or Database Administration path. I was still buying and reading a lot of books that were more pertinent to my job and work. It wasn’t until I decided to work on getting some certs (SQL2012) that I began to study for them again. Long story short- I went in cold to test my level of understanding with the expectation I would fail both tests then study what I was weak on then take them for real, a second time. I barely passed both on the first try (!) and was struck with this odd feeling that I hadn’t earned it because I hadn’t studied for it. I did however have years of experience but it just didn’t feel like a planting the flag victory like I wanted.

Other Deaths

Death of the Microsoft Certified Master program (and dreams of that too), death of Microsoft Press titles by Microsoft employees, death of MCITP and finally death of my dream of data scientist via the Microsoft Professional Program (MPP).

If I had a lot of money, I would take an on-line degree program like this one in data science offered by a university.

Note this also happens to be the same school that we are hosting for SQL Saturday Denver #908 this weekend.

One Academy Dies While Another Flourishes

The website for MPP was https://academy.microsoft.com so who knows if they will maintain that URL. In other news, Microsoft Learn is the new destination for all content, which is free. AWESOME! The paid for content is on Pluralsight and mostly focused on Azure- there has been a plethora of courses recently released on it, all based on this new concept of roles. I have been an avid fan of Pluralsight and will continue to do so.

I am into Unreal Engine as some of you are aware. Their site is chock full of great and free content and continues to grow: https://academy.unrealengine.com (a free login is required to access that site).

Interesting to me that both companies, Microsoft and Epic Games are now spending a lot of money developing courses that we can take for free.

Closing Thoughts

Technology is changing so fast that courses and documentation are having a harder and harder time to keep up. As a result, the number of technical books being published is declining compared to years past. Companies are pushing nano, micro, call it whatever VERY short courses (measured in hours) when compared to formal college level courses (measured in several weeks). Are the new role-based certifications/course completion badges & bling in my future? Time will tell. I must say I do like the short format in sections as it fits my pomodoro style of learning and attention span. Is my mind changed on certifications? It would seem that bigger forces outside of my control have already changed it for me. We are now living in an age where one can’t just be one thing- there is no longer such a thing as a pure DBA or T-SQL developer. We are being forced to perform multiple roles in order to try to stay ahead and continue to build and grow in our careers.

Posted in Uncategorized | Leave a comment