T-SQL Tuesday #111 “My Why”


This month’s T-SQL Tuesday is being hosted by @AndyLeonard. Thanks Andy!

My response to the question, “What is your Why? Why do you do what you do?”

I am a Christian. And I am unashamed.

I am also not a perfect example of a Christian. I am broken and imperfect. I fail and struggle every day about my faith. I sin, again and again and fall short of the Glory of God. But I keep working on it. Infinite Grace and Love and Mercy beyond my understanding. In ways that are visible and invisible. And I am forgiven. Everyday.

The Christian faith is not a once and done kinda thing. Just like decisions every day have consequences and repercussions, so too does an investment in whatever one calls the Bank of Faith.

My Why?

God, Family, Country.
Christian. Conservative.

My relationship with my Lord and Savior Jesus Christ, is something real and that I believe in every second of my life. Above all else. Period. Does that make my life perfect and beautiful?


Far from it.

In fact, just the opposite.

If you have recently chosen to accept Jesus Christ as your Lord and Savior or have in the past, it will suck to be you (!). You will NOT be flying underneath the radar of spiritual attack. Sadly in fact, you just became a visible beacon for attack. Well, that is not something people want today! “I want to believe what I want to in my own little personalized, safe, self-created echo chamber without consequences, or pain or suffering!”

If one wants to play it safe, just let your defenses down, go with the flow, don’t fight against the tide, just believe in whatever brands/* isms/truth worldviews, etc. and not rock the boat, then the choice about faith is simple:

Do nothing.

Absolutely nothing.

Just let other forces in society push against the sails of your own ship. Surely they/groupthink knows what is best for you! If one has to do something, see what everybody else is doing first. Just give the people what they want and all will be great? Um, right?


My Why?

I believe in lifting up those willing to help themselves. And to try to help those too who can’t help themselves. I have volunteered A LOT over the years. Unpaid. Unappreciated at times. Host meetings no one shows up at. But still putting your best face forward and doing it anyway not knowing what will become of it. Loss of time/money/effort and questioning if it is even worth it. And in hindsight, sometimes you get to see how you changed a life. That recently happened to me at our Denver SQL Server User Group meeting and it totally blew me away because it was completely unexpected.

My Why?

Because I genuinely love people in the same boat as me. No matter what circle that happens to be (SQL, start-ups, VR, Unreal Engine, pick a tech), I want to see people succeed and do well. If that drags me along, then so be it.

I once heard Zig Ziglar once say, “You will get all you want in life, if you help enough other people get what they want.”

At this stage of my life, I have had to deal with a lot of death. Death of family, friends, co-workers, and acquaintances. Murder, suicide, cancer, car accidents, heart attack, overdose, surgery, old age- the list goes on. Processing the emotions and thoughts is unique in each case and no, I am not looking forward to dealing with other deaths but I know it is coming. And it will come again and again, even unto my own death, at some point I hope and pray sometime into the far future. There is still so much work I want to do for many years to come.

My Why?

Because I don’t care about what people think about me (!). Sometimes I write hand-written notes and post them- some are even prayers on my part and I don’t know at times how they will be received. Will I offend somebody with my prayer for them? It is a risk I take and I do it anyway.

My faith is a integral part of me. I don’t proselytize at work but if someone starts a conversation about my faith I’ll talk to them. What you see is what you get. I don’t have a separate faith life apart from my work life. It is one and the same.

I know some people are going to drop me from social media like a lead balloon. I get it. It is expected. It breaks my heart to hear people in our SQL Family openly say stuff like, “I’m doing just fine without God”.

I have been told, that when I get to Heaven I will be surprised at the following: people who are there who I thought wouldn’t be there and those who are conspicuous by their absence- people who I thought would surely be there but who are not.

My Why?

Going back to Death. I have zero qualms or cares at this point in my life about sharing my faith. I have seen TOO MANY people I love die without knowing Jesus.

BTW, SQL Saturday Denver has been hosted a couple of times in the past at my home church. Do you know how many brochures, conversions, etc. I pushed on the people attending SQL Saturday?

Zero. Big Fat Zero. Because I believe in living the best life I can by example and let the Holy Spirit do the rest. If you ask me about Jesus, I will tell you. And pray for you.

My Why?

Money. Economic resources. If I ever become stupid rich, there is a ton of things I will do with my money. The cause of food, water, clothing, shelter here and abroad. So many people don’t know me that well. I believe God has blessed me with technical skills and creativity and imagination. I have a lot more to share for another time…

So part of My Why is to make money so I can give and spend it on things I believe in.

Two books that have helped shaped some of my recent thinking over the past several years about charities: When Helping Hurts and Toxic Charity.

My Why?

Because I am able, I can and I want to.

Posted in Uncategorized | Leave a comment

T-SQL Tuesday #110 – “Automate All the Things”


This month is being hosted by Garry Bargsley – thanks @gbargsley!

My response to this month’s topic is a personal one. The main two questions to answer are:

  1. What do you want to automate or what automation are you proud of completing?
  2. What is your go-to technology for automation?

This year my goal is to work on a double program, data science and artificial intelligence. I have chosen the Python path (or it chose me). So Python is becoming my go-to hammer in search of nails so I am all about, “Automate With Python All The Things”.

A book I am working through as I am learning Python is called, oddly enough, Automate the Boring Stuff With Python. LOTS of things I could automate that I had no idea about. Highly recommended.

Specifically, I am interested in Chapter 17, image manipulation.

Do You Take Pictures?

Please raise your hand if you take pictures. I see everyone’s hand went up. Yes, with digital cameras and smartphones, we take a plethora of pictures. Some would say too many! We don’t even take time to go back and look at all of them. Storage is so cheap we can be digital hoarders and not feel ashamed.

How Do You Backup Your Pictures?

Um, ya. About that. As data professionals we should know the importance of backups and having a restore strategy. Our backups should be local for immediate retrieval and off-site too. For personal use, backups should be off-site in some kind of cloud storage.

But how many of us regularly and with discipline and/or automation backup our pictures off of our smartphones, digital cameras, laptops and desktops? And is it a pure file-based backup or do you put pictures into a database?

Is Putting Pictures Into a Database Overkill?

Some would argue yes, that’s silly. Others would say no but how to do it? And what would the benefits be to storing images in a database?

Previously Done in R

I read this article a while back and worked through all of the examples. This was before I was bitten by Python. So I want to re-do all of this but do it in Python and store images in a database.

A Gift to My Wife

Chris and I have been married 25 years. As my gift to her, I am building an art gallery of images from the last 25 years. So far I am up to 300 images. Now, this isn’t a slide show. It is going to be a gallery built using Unreal Engine and deployed onto an Oculus Go.

But in order to properly size the images, they need to be a power of 2 as in 2048×2048. So! How do I fiddle with 300 images? Re-size, extract meta-data, store in a database, etc?

Enter Stage Right – Pillow and Scikit-image

Pillow (used in the book above) and scikit-image are both image processing packages.  Ever wonder how to count the number of marbles in a picture? Facial recognition software? These packages are amazing and they have a whole lot of really neat and cool capabilities. While some of the scientific stuff is over my head, I did pick up some things from this course- but I will need to re-take it again once I understand things better during the study of data science. Building Image Processing Applications Using scikit-image

SQL Saturday Topic

It shouldn’t be a surprise then that manipulating and storing images in a database is going to be my new SQL Saturday topic/theme for this year. It does sound like total overkill or using a cannon to shoot a fly. Some might say that is just good target practice. The technologies I am working with does sound like a lot and it is: Hekaton, FileTable, Python, Unreal Engine, and Virtual Reality for starters.

And before you ask, yes, I will be sharing all of my scripts and who knows, might even create my first community tool 🙂


Posted in Uncategorized | Leave a comment

2019 – The Year of Memory Recall

Nothing I create is ever perfect and I cannot wait any longer until it is- because that time will never come. Sometimes you just have to run with what you have.

So I’m going to focus on a single theme in my blog posts, presentations, and the like for 2019 – The Year of Memory Recall. All using SQL Server database(s) and technologies of course. And virtual reality. And Unreal Engine. And, and, and.

What follows is an incomplete rough draft of links and resources and comments. I had to post something in December…

NOTE!!! I am currently re-reading Total Recall and writing down even more notes, thoughts and updates since the book was published ten years ago when I first read it.

My goals and motivations will become clearer as time goes on. Memory recall is the act of recalling existing memories. The active act of doing so helps to strengthen and keep the memories alive. Memories are critical to shaping us as individuals and it is something we can control.

I am marching to the beat of a different drummer down the road less traveled. This journey will not be easy.

I am building a memory recall system which I’ll be using the rest of my life. If I live to be 100, I will be recalling memories I created in 2019 and earlier. A dual system- external memories and internal memories. Hopefully a system I can give to my kids- something tangible like my grandfather’s tool set and the memories I have of him wielding those tools building and fixing things. And versions of this system other people can use too for memory recall.

Some Sci-Fi devices (time to build a few?)

Star Trek

Memory Alpha

Uses a wiki encyclopedia. Created by fans, not by the creators of Star Trek.

Star Wars

Name of internal, real world tracking database (originally in FileMakerPro, one of my first database loves): Holocron; 55k entries. Clone Wars and Jedi Archives.



Jor-El; father of Superman; Fortress of Solitude; memory crystals

John Percival Hackworth; ~Nell; A Young Lady’s Illustrated Primer; nanotech; ractors; ractives

Aleph; Mona Lisa Overdrive

Some Previous Real-World Attempts

Dymaxion Chronofile (analog scrapbook)

Memex (analog but using electronics and hints of a digital version)

Later Became Fully Digital

And used on the recommendation by the late computer scientist Jim Gray, “…you need to use a database like Microsoft SQL Server.”

Finally! Books!

Total Recall: How the E-Memory Revolution Will Change Everything (focuses on digital storage for EVERYTHING; of course, at a cost)

Going back to MyLifeBits- the problem and challenge I had was that MyLifeBits was an academic project. Absolutely nothing wrong with it, it is just that many academic projects do not easily lend themselves to be quickly implemented or have commercial applications. I have only seen screen shots of some ERD(s) and not an open source software or script library to pick up the pieces where the researcher(s) left off for others to follow. Sadly, many of the companies in the book are no longer in business.

MyLifeBits accurately predicted the falling cost of storage. For example, as of this writing, Amazon Web Services offers Glacier storage. $.004 per GB per month.

For life however… and pricing is continuing to drop, including Azure.

The problem? One could just use all the free storage, correct?

“Is digital storage a privilege or a right?”

Neither- it is still a cost, and it is NOT free. The cost however has fallen to ridiculously low levels and continues to drop. Again, if you don’t pay your bills, it WILL get deleted.

So unless you start a trust fund of some kind and choose to pay money forever (!) to keep it alive, it will die and be gone forever.

The Future of Looking Back (Developer Reference) – Microsoft Research

Why Isn’t Everyone Building Holocrons?

Because it is A LOT harder than writing and writing is already hard to do effectively. Heh, writing this blog post has taken more time and effort than I think it should.

For example, note taking. What if I told you that you had to create a video game every time you took notes? That’s crazy, no one wants to put that level of effort into note taking. But that is exactly how to create highly memorable content- a lot of work and concentration.

Software and security issues. Is the holocron a purely digital thing or is it a physical thing with digital storage? Or is it a purely analog storage device?

As a ~20 year SQL Server data professional, how can I use these ideas for myself? How can I build a holocron I can use time and time again to build new memories and re-visit old ones? How can I build something I can will as an heirloom or keepsake to my children or researchers? To build holocron(s) for my memoirs and for others.

Extreme Data Storage

Hybrid: Digital but stored using an analog medium DNA Storage

(1 exabyte per cubic millimeter!!!)

Analog Storage

Rosetta Project


There is no conclusion. My journey to build holocrons for myself and others is just beginning in 2019. I am running with what I have. Using data science to sift and categorize and store things is a hint of where I want to go with some of these technologies.







Posted in Uncategorized | Leave a comment

T-SQL Tuesday #108 – Oculus Medium – Virtual Reality (VR) Play-Doh

This month’s topic is being hosted by @sqlmal – thanks Mal!

“So the challenge for this T-SQL Tuesday is – pick one thing you want to learn that is not SQL Server. Write down ways and means to learn it and add it as another skill to your resume. If you are already learning it or know it – explain how you got there and how it has helped you. Your experience may help many others looking for guidance on this.”

My topic is playing around with Oculus Medium.

A highly pixelated reference image imported into Medium, building a clustered index seek, exporting out from Medium and importing into Unreal Engine:

First, one will need an Oculus Rift headset, an adequately powered PC like a decent gaming rig, and some physical space to “dance” around in. Expect to spend $1000 to get into VR for the desktop and a lot more for a VR-ready laptop. This is a serious hobby for me. Second, one will need to buy the $29.99 software.


What is it? From the Oculus website:

Sculpt, model, and play in virtual reality. Oculus Medium is an immersive VR experience that lets you sculpt, model, paint, and create tangible objects in a VR environment. Medium lets you create expressive works of art, whether you’re a total beginner, an aspiring creative, or a professional artist. Medium uses Touch controllers to enable intuitive hand gestures and movement for a natural, tactile experience.

Basic Alternative to the Expensive Stuff…

All of the desktop 3D modeling programs (Maya, 3ds Max, or the open source Blender which I like, or desktop sculpting like ZBrush or Mudbox) are either very expensive or really hard to learn or both. Think of them like a musical instrument- one has to practice every day in order to get any good. My goal is to be able to create things and import them into Unreal Engine (UE4) quickly. From UE4 I can then build or cook the project and install it on to something like OculusGo and in 2019, Oculus Quest.


Side note:

While Medium has not been announced for Quest, being able to take a VR headset with you anywhere and be able to create, ANYWHERE, is going to be simply incredible. I can’t wait to see what my amateur self and artists can do. Imagine an art studio that is with you all of the time. For creative people that is going to be the killer VR app- you and your studio. Being able to sculpt, draw or whatever in VR when the mood or idea hits you. Carrying multiple studios with a variety of projects in them with you. Did I mention you can cast your creations to a screen to show people what you are seeing in VR? Ya, this is going to be awesome when Quest comes out. And yes, I am thinking of how to do Quest presentations/performances as topics for SQL Server. Goodbye PowerPoint.

Getting Started

I didn’t want to wait years to create things. I wanted to play now. Much like Play-Doh or Legos one just needs to learn the basics and jump in. One uses this VR software standing up so be prepared to be standing for a while and try not to get tangled up in the headset cables or knock things over. What one creates in Oculus Medium are called sculpts.

How has it helped me?

Escape. A chance to experience Flow for hours on end. Get out of my comfort zone. Something that doesn’t involve coding.

Flow: The Psychology of Optimal Experience

Flow. Ideation. Creation. Those are the goals of playing in Medium.

I have ideas for all kinds of inventions. A soft spot in my heart is about food, water, clothing, and shelter, with drinkable water being most important for survival and development. Topics for other time but being able to try and build things in my mind’s eye inexpensively is an expression of my creativity and imagination. Medium is a constructive outlet for me.

How to Learn Medium

Recently Oculus has updated Medium to 2.1 and has made a lot of great, free tutorials. Start with the tutorials INSIDE the software. Then, try these out. Even if you don’t have a VR set-up, watch these anyway to get an idea of what one can do with the software:


It can take a while to learn the basics. Watch a short tutorial then try to duplicate what the artist is doing. Watch and try again. And again.

Note this is the first version of the genre of sculpting software using VR so it can be buggy at times. SAVE OFTEN!!!

The smallest resolution is 1 cm. Which just happens to match the smallest unit in Unreal Engine, the Unreal Unit (UU).

So if one is trying to build a fine mechanical watch using digital clay, prepare to be disappointed. One can “zoom” in super-close to the clay and do some fine-detail work but realize this is still clay, not micro precision molecular assembly like nanotechnology. Not yet anyway.

I have found the triangle/polygon count to be ridiculously high for imported sculpts. There are some tools to help with that (reduce number of triangles while maintaining visual fidelity on final exported .obj file) but I have not learned how to use those yet. Here is one I read about, MeshLab:


As far as exporting sculpts into UE4, I have found exporting as .obj with textures at the 2048 setting will generate good WYSIWYG. Import into UE4 then re-size as needed. Some of the colors can be a little off but I have been happy with the results. Please note VR is a resource intensive application- only have one thing running at a time. This means don’t have UE4 running while trying to use Medium and a web browser with a tutorial. Just one at a time. And yes, one will be re-starting your desktop often.

Just so happens that on the day I post this, I am also giving a presentation on using Oculus Medium at the Unreal Engine Meetup in Denver which I run. Starting a new user group is hard…

Hobbies on Resume

At what point does one add skills developed as a hobby and put them on a resume?
What I have heard is only if professionally relevant to a job one is applying for.

I don’t consider myself qualified for this position but it does have things I am interested in:


My dream job would be working with data and virtual reality. We’ll see what next year has in store.

I hope this post helps get some creative juices flowing. Feel free to hit me up on twitter:



–Todd Kleinhans

Posted in Uncategorized | Leave a comment

And So It Begins: PROJECT SQLImaginarium


This is a post for T-SQL Tuesday #102. #TSQL2sday was created by @AdamMachanic. This month is being hosted by @RileyMajor – Thanks Riley! The core theme is giving back…


I am into virtual reality. Last week right after a drug test for my new job, I went straight to Best Buy and bought the new Oculus Go. Don’t I look happy?

This is a solid piece of equipment. I opted for the 64GB version at $270 but you can buy the 32GB version for $200. I have a SteelSeries bluetooth gamepad controller to use for my Unreal Engine creations. After some tweaking, I was able to get my #SQLMemorial temporarily loaded on to it which included a picture of the late Robert Davis aka @SQLSoldier

And Now the Public Commitment…

Now that the Oculus Go is finally here I want to go public with a goal I have had for a few years and with your help to hold my feet to the fire. To get it done. And to give me ideas. And help with content. And maybe some sponsorship dollars.

And So It Begins: PROJECT SQLImaginarium

Please use the hashtag #SQLImaginarium and @SQLImaginarium to tweet and publicly document your ideas and feedback.

What is it?

SQLImaginarium will be a virtual reality (VR) experience to introduce people who are new to SQL Server. It will run exclusively on the Oculus Go. A desktop version can easily be made as well.

But Why Use VR?

Several reasons and here are some.

  1. 100% attention and concentration. With your entire visual field being used, you will NOT be able to multi-task and take resources away from learning and exploring. Since it will be built using Unreal Engine we can use the full power of a video game engine. Not just shoehorning PowerPoint into VR (yes, I have done this in the past) but to take advantage of this new VR medium using decent and affordable hardware.
  2. Storytelling instead of PowerPoint to explain technical topics. VR allows one to build mind palaces to help with remembering things. Using 3D artwork, one can walk around and see things from many angles, sounds, animations, you name it- Unreal Engine can do it. Want to walk around INSIDE a flowchart? No problem.
  3. PowerPoint has reached its age. Remember a time before PowerPoint? You must be old. But there was a time before slide shows and presenter performances were all the rage… We need new and novel ways to learn things and VR can do that and more. NOTE!!! I love PluralSight and have had a subscription for several years now. Using one’s public library card, Lynda is free too. But looking at people running code and providing an audio commentary to slide shows only goes so far. One has to watch and sling the code too in order to truly understand the content. Ever seen anyone at a PASS session or a SQL Saturday event in the audience following along and running the code in sync with the live presenter? Information fades quickly. <rant>I would like to give tests AFTER a SQL Saturday event to see how well people were paying attention and taking notes</rant>
  4. The younger generation has grown up on video games. The ubiquitous gamepad is now the universal interface for many. We need to provide navigation mechanisms for them to navigate around environments and the gamepad easily does the job. While the simple Oculus Go controller is functional, a gamepad offers greater utility. More controllers are on the way but they can’t be used on a plane, train, bus or automobile or sitting down as easily as a gamepad for now.
  5. SQL Server is a vast and complex set of software parts. Being able to see how all of the parts work together and to be able to explore those parts further simply cannot be done with both more SQL Server Documentation and PowerPoint presentations. We need a new map. We need to be able to see the whole thing. And to see how it all works together.

What Will SQLImaginarium Have In It?

I want to see areas to help new people whom have never used SQL Server to begin to understand how SQL Server works.

To use VR to help train a new generation of data professionals.

To pay tribute to the fallen in the #SQLFamily and to keep their memories alive.

To build something bigger than me, by the community, for the community.

Sponsorships and Funding SQLImaginarium

If this idea gets traction, I could use some of the money to buy assets from the Unreal Engine Marketplace. Mainly architectural visualization stuff and things beyond my technical skills. Training assets. Utilize outsourcing when appropriate. While I have not done a gofundme or a kickstarter before, this would be something I would commit to getting set-up and going. Plus the money would give me a serious kick in the pants instead of trying to build all of this on my own and putting it out there for the world to see. Money would also be used to set-up subscription software tools like Trello and GitHub. I would use a lot of tools and techniques from the gamedev community like regular Game Jams as a type of sprint. I have my own GoToMeeting I can use for the core team.

Paying customers has a way of helping one to focus attention. Kinda like VR 🙂

In Closing

I cannot create SQLImaginarium alone. I need your help. Your ideas, input, feedback, and money. I believe the #SQLFamily needs to explore new ways of training up the next generation of data professionals using technologies like VR to help them learn SQL Server from scratch. So many people cannot afford the super cool and expensive in-person events (which are incredible!) but now that affordable VR technology like Oculus Go is here, the time is right to build new ways of learning SQL Server. VR is going to affect so many things and I believe training and education is one of those areas the #SQLFamily can utilize. So many possibilities await the bold!

Posted in Uncategorized | 4 Comments

T-SQL Tuesday #100 – Announcing NCDNAI – June 1, 2026


This is a post for T-SQL Tuesday #100 and it is going to be a mix of science fact and science fiction of what our data world could look like on June 1, 2026. #TSQL2sday was created by Adam Machanic. It is being hosted by him too. Thanks Adam!

Crystal Ball

During one of my sapho juice induced meditations before I began my daily mentat exercises, I began to play with an idea about DNA digital data storage. Even back in 2018, scientists were able to conceptually shoehorn 215 petabytes of data into a gram of DNA. Our progress has evolved since then, heh.

I knew from my previous work designing blockchains using DNA, that mankind faced a fundamental problem of using DNA for data storage. And that is slow read speeds.  Even with AWS Glacier DNA or on-prem Alephs of Azure, the speed of reading this kind of data frankly sucks.

The problem lies in the structure of DNA itself. The entire strand has be to sequenced in order to read the data. I mean, it is a full DNA scan for crying out loud!

So during my meditation I thought to my self, “Self, if you could run sp_BlitzIndex v50 from The Ozarians on these DNA strands, what would it find? Well, Brent’s avatar would probably do the missing index dance of course!”

Thus began my journey. As part of my dissertation work on biomimetics computational neuroscience on mapping both the conscious and unconscious algorithms of the brain, I knew there had to be some existing data structure I could use as an index. Today, I am proud to announce:


Aurora, CO – Kleinhans Industries Releases the Nonclustered DNA_Store Index (NCDNAI) 

The world now has a way to quickly read data from DNA structures. Think of it like a tiny constellation of biological satellites in orbit around the strands. Each strand has its own constellation.

Kleinhans Industries is currently in negotiations with companies like Microsoft to license the technology.

“A billion here, a billion there, pretty soon it starts to add up to real money. We are hopeful that negotiations will be completed in the near future and companies can begin incorporating this ground-breaking technology into their DNA database products.”


Posted in Uncategorized | 1 Comment

Behind Door #1 is: SQLMemorial – A Tribute to the Fallen in the SQLFamily


This is a post for T-SQL Tuesday #99 Dealer’s Choice. #TSQL2sday was created by Adam Machanic. It is being hosted by Aaron Bertrand – Thanks Aaron!

On a somber note, I present SQLMemorial. For a short overview video, one can view it here. Names of folks are below.


One of our members recently passed away: Tom Roush. While his celebration of life service was going on last Saturday in Seattle, I wasn’t able to attend but I was working on building SQLMemorial back home in Colorado. People handle dealing with grief in different ways. At times for me I build stuff to honor the memory of someone. Tom was a storyteller and virtual reality (VR) is becoming a new and unique storytelling medium. So I dusted off an old idea and jumped into it full force in my spare time after this TSQL Tuesday topic was announced. My last conversation with him was about getting stories out of your head, even and sometimes especially the embarrassing ones. Even if you never publish them, get them documented. For me I will be doing this in the future using my drive time to record audio- a drivecast.


I am into VR and I am fascinated by what it can do to help people in a non-gaming context. Unreal Engine has been my video game engine of choice- currently using version 4.18.3

When I announced on Facebook a while back that I was building a VR experience using pictures to help distract people in pain in a drug-free way, one of the people who expressed interest in it was Tom. The cost of the software, a GearVR headset, bluetooth controller and an unlocked Samsung S6 or higher phone was just too expensive- over $1000. Now with Oculus Go coming out for only $200 and just around the corner, all of my software has an upgrade path. Yay! So I think things are going to pick up on that front in a big way. Sadly, Tom passed before I had a chance to build something just for him.

At the PASS Summit in 2016 I participated in my second Speaker Idol and I showed everyone a small glimmer of a VR walk-through. Hard to do in five minutes BTW. Part of it was a type of Hall of Heroes, a short roll-call of those SQL Family members who have died. I have tried to keep track by using the twitter hashtag #SQLMemorial 

Present Day

So on my own as a one-person slightly dangerous VR game developer, I attacked this TSQL Tuesday topic as a game jam. Scale back the scope, scale back the scope again, and focus on the most important thing in both video game and software- SHIP! The goal for me was to build and deliver something that works. I got permission from a variety of folks  to use their pictures. Special thanks go out to: Argenis Fernandez, Jimmy May, Andy Leonard, Grant Fritchey, Mickey Stuewe, Julie Koesmarno and Tom’s daughter Alyssa, and Hawaii News Now for use of their pictures. Jim Gray’s attribution.

It is mainly dedicated to Tom but other people’s pictures of the fallen includes Jim Gray, Ken Henderson, Bob Rumburg, Alan Weber, Larry Toothman, Mike Wilmot and finally Tom Roush.

Please note this DOES work even if you do not have a VR headset to use with it.


PC gamers you can skip this, except the next paragraph. Keyboard keys: WASD (W and S are forward and back. S and D are walk like a crab left and walk like a crab right). Arrow keys (up and down are like W and S, left pivots you in place as does right arrow). Mouse moves your head to look up and down.

To end the experience, type the ~ (tilde key) just under the Esc key. Esc does NOT work. You will see a small console line open up at the bottom. Type the word exit then hit return. If that opens under the taskbar or something and you can’t see it, then you’ll need to open Task Manager and kill the process. Extreme yes but user menus is on my list of things left to do.

Immersive VR Use

On my Oculus Rift I use the Windows Xbox controller and it works fine. On GearVR I have a bluetooth gamepad controller. If you have a GearVR and want SQLMemorial on it, I will need to compile a version specific to your phone. It will require you to give me your Oculus Signature File. Instructions can be found here. You can contact me via todd dot kleinhans at gmail dot com.

UPDATE (13Feb18) I became aware that the background sound is not playing on the Rift. My first bug to fix! It is odd as I hear sound when I play it using the VR Preview mode from within the game editor using the Rift and it plays fine on the GearVR deployed version. Go figure.


I offer this software AS-IS, no warranties expressed or implied. It is an .exe file so if you are super paranoid then my advice is don’t install it on a machine you can’t risk screwing up. Seriously though, I personally have never had a problem with Unreal Engine running on any of my machines including those I use for SQL presentations.

It has been tested on a five year old Windows 7 laptop and on a Macbook Pro running VMWare Fusion with a Windows 10 Enterprise (90 day eval) virtual machine. If you are using a virtual machine, be sure in install the VMWare tools as it will update the video driver to enable this to work. I had to do that on mine.

This is hosted on my OneDrive so it might take a while to download (5min for me) at 275Mb.


Click Download. Unzip the SQLMemorial file. Open that folder and unzip the WindowsNoEditor.zip file. Open the WindowsNoEditor folder. Open the other WindowsNoEditor folder. Right click to launch as administrator on the SQLMemorial.exe to start the experience. It will take a few seconds to open. Once it does and on the first time, it will attempt to install the .NET framework it needs if it is missing in addition to Visual Studio C++ runtime. You have to agree to the Unreal Engine software terms. I’ve tried to keep the ambient sound to a background level without being too distracting so might need to turn your volume up or put on headphones. Best experienced w/o too much light in the room.


I still have a list of enhancements for the next iteration. For example, I have tested adding audio clips of short messages in .WAV files and it works fine. Navigation beyond game pad controllers. VR style navigation locomotion. Media playback control. User menus. And then setting up a dropbox to collect more content from people who would like to add more pictures and sound. Maybe video links too as embedding video files bloats the size. Cloud based hosting like Sumerian

I’ll be updating this post so don’t freak out if you re-read this and see different things. I also want to do another blog post on the technical aspects of what it took to create SQLMemorial.

Looking at all of the pictures and reading some of the stories and building this with misty eyes was hard. The fallen will be missed but not forgotten.

I really want your feedback on this project so feel free to hit me up on twitter: @toddkleinhans


Posted in Uncategorized | Leave a comment