WHY?

Monday 1:58 PM CST Dallas, TX – I’m sitting in a room about to get on a phone interview. The 4th interview of the day. I’m thinking to myself, “I’m in Dallas. What am I doing in Dallas? And more importantly, “How am I doing?”

2:30 PM CST Dallas, TX – During the phone interview I was asked this question, “What is a great business book you have read?” “Good to Great” I answered, and then we proceeded to talk about the book for a bit. Then, the person on the other end of the phone asked, “May I suggest a book?”

I answered “Sure.” Then, he proceeded to tell me about a book called Start with Why by Simon Sinek. Follow quickly by, “Don’t read the book. Look up the TED talk with the same name.”  Intrigued, I wrote down the name of the TED Talk so I could watch it later. The interview ended and so did the day. Back at the hotel, I started processing through the day of interviews. One of the stand out points was the TED Talk. Why would someone suggest it in an interview? Did I say something that lead the interviewer to believe I needed to watch this video? Putting the questions to the side, I sent my thank-you emails and called it a day.

Tuesday 11:00 AM CST Dallas, TX – I was working from my hotel room since I had a few hours before I needed to catch my flight, so I decide to watch the TED Talk. As I watched, I knew I needed to transfer my “why” from the ideas in my head to paper.

1:30 PM CST Dallas Airport – I composed this email.

Dear Interviewer, (My email actually had the person’s name)

Thank you again for the meeting yesterday. I watched the “Start with Why?” video. It is a very good video. I have my whys and would like to take a moment to share them with you. I will say up front that my whys are not going to change with the outcome of this position.

My first WHY requires a picture. These are my children. Everyday I’m reminded that data changed my life. Data allowed my wife and I to have children through the IVF infertility process. That process gave hope and life to the dream of expanding our family. Our doctor made decisions according to the data. I have never seen a medical professional use data in a data driven way like he does. Data gave me a family and I want to provide that hope and life for others. Data can assist with those dreams.

The second WHY is my my wife’s Uncle. He passed away of cancer. The main reason is that he did not follow up after a surgery to make sure the cancer was gone. A simple text or phone call might have encouraged him to schedule the appointment. The cancer might have been caught early enough to handle. The EMR  and insurance systems knew that there had not been a follow up appointment but no one was using the data from the systems for this care. How many more families suffer the tragedy of loss because the data is not used? Too many.

My WHY is Hope for others. I believe that Microsoft has the best solutions for linking that data to provide those Hopes and Dreams.

I’ll continue to drive forward toward this goal of data driven Health Care. My desire is to drive this mission while a part of the Microsoft Health Care Team. If not I’m sure our paths will continue to cross as we both drive towards a Data Driven Healthcare world.

Have a great day. I look forward to talking with you soon.

Cory Stevenson

Then added this pic.

11954788_10153770078472214_9111456429075163735_n (1)

I received an email in reply. Followed by a few days of waiting.

Friday 5:30 PM EST Akron, OH – Jess (My wife) tells me. “Cory, I think I hear your phone ringing” I sprint to the kitchen and answer. The voice on the other end tells me I got the job and my wife and me start in on a silent celebration dance, fist pumping, and jumping up and down session, while the recruiter explains the details.

Current day

Moves like this are never easy, especially when I work with a team that is highly regarded so, thank you to the BlueGranite team for everything. It has been a pleasure to work with you all. I have been challenged to new heights and gained infinite wisdom. I leave with a grateful heart because I have had the opportunity to work with admirable and astute colleagues. Thank you.

Next Monday October 12th, I will transition to Microsoft as a Data Platform Cloud Solution Architect with the US Healthcare and Life Sciences team.

I get the amazing opportunity to help expanded their capabilities with data. My wife says that she has never seen me this enthusiastic or this passionate about my career.

This is my “why.”

I saw this picture that finally resonates with where I am in life.  I hope that you can find your purpose too.

We live in a great time with amazing technology and people that can make the world a better place.

Let’s go make that change.

To everyone reading this blog. Thank you. I pray that you know or may find your why. If you would like to watch my two favorite TED Talk videos that explain my passions. Here are the links:

1. Peter van Manen: How can Formula 1 racing help … babies? – https://www.youtube.com/watch?v=Ht2fzax9wV0

2. Simon Sinek: How great leaders inspire action – https://www.youtube.com/watch?t=2&v=qp0HIF3SfI4

And one more thing – GO BUCKS!!! O-H-I-O!!

WHY?

Datazen SMTP Configuration

During my Datazen installation, I noticed I could not set an SMTP account which required authentication. (I’m using Office365, so outbound mail authentication is required.)

Below is a picture of the fields available during the install.

After installing the Datazen Enterprise Server, I was able to finish configuring the Datazen mail settings.

The only file we need to adjust is the Web.config. The file we need is <<install drive>>\Program Files\Datazen Enterprise Server\controlpanel\Web.config. (The default is C:\Program Files\Datazen Enterprise Server\controlpanel\Web.config)

I’m using Notepad++ to edit. After opening the file in Notepad++, the first thing I do is change the language to XML. This allows for color coding of the the XML. By default Notepad++ will make your elements names blue, your attribute names red, and your attribute values  purple.

Following the language change to XML, scroll towards the end of the file where you find the XML element <mailSettings>. The area will look something like this.

<system.net>
<mailSettings>
<smtp
from=“admin@yourorganization.com”>
<network host=“localhost” port=“25”/>
  </smtp>
</mailSettings>
</system.net>

Here are the changes we need to make:

  1. Change the smtp element from attribute “admin@yourorganization.com” to the address that you want to show up in the email. For me, this looked like DatazenServer@someaccount.com. This does not have to be the email address used to log on to your SMTP server unless your email admin requires.
  2. Inside the network element we need to change the host and port attribute values. Since I’m using Office365, the values will be “smtp.Office365.com” and “587” respectively.
  3. Still inside the “network” element we need to add some new attributes and values to the file. The attribute names are case sensitive.
    • Add userName=”DatazenServer@someaccount.com”
    • Add password=”S3cur3P@ssw0rd123$%”
    • Add defaultCredentials= “false” This forces Datazen to use the username and password that we supplied.
    • Add enableSsl=“true” For a secure connection to the SMTP server.
  4. Make sure the network element is closed with />. Don’t add another /> if you did not delete the original one while adding the new attributes.
  5. Make sure all of your attributes are inside double quotes.

When complete these steps your mail settings should look something like this.

<system.net>
<mailSettings>
<smtp
from=“DatazenServer@someaccount.com”>
<network host=“smtp.Office365.com” port=“587”
userName=”DatazenServer@someaccount.com” password=“S3cur3P@ssw0rd123$%” defaultCredentials= “false” enableSsl=“true” />
</smtp>
</mailSettings>
</system.net>

Save the file. Reboot the server OS for the setting to take effect.

And you’re done.

References:

Datazen SMTP Configuration

ONSSUG Introduction to Datazen

Below is the Slide Deck for the Ohio North SQL Server User Group presentation “Introduction to DataZen”

Right click on the link and click ‘Save as’ to download.

IntroductionToDataZen

ONSSUG Introduction to Datazen

Installing DataZen – Building a sandbox

On April 14, 2015 Microsoft announced the acquisition of DataZen. I still can’t tell you exactly what drew me to immediately setup a new VM and begin installing DataZen, but I did multiple times over the next few days. At my workplace,  I quickly became the resident expert on the functionality of the DataZen Server. After sharing with multiple friends how to setup a DataZen sandbox, I thought I would finally write down the steps in this blog post to help you build your own.

Here are the two items you will need to get started:

1) A Clean Virtual Machine with either Windows Server 2008 R2 or Window Server 2012.

  • For this post I’ll be using Windows Server 2012 with 2 processors, 4 GB RAM, and a 25 GB Hard Drive.
  • I recommend using a Windows Server OS because DataZen will configure IIS automatically as part of the install. I have not tried installing DataZen Server on a Windows Desktop OS.

2) The latest install files of DataZen Server.

Side Note: If you are looking to start building dashboards, you do not have to build this sandbox. For building dashboards open your Windows Store, search ‘DataZen Publisher’ ,Open the Publisher, and create a dashboard from your favorite data source. However if you want to share your new dashboards and/or build KPIs you will need a DataZen Server setup so keep reading.

Begin Install

1. Boot up your VM with a clean install of Windows Server.

2. Copy the DataZen zip file on the VM

3. Unzip the folder as I have done in this screen shot.

image

4. Right click on Datazen.Enterprise.Server.3.0.XXXX.exe and click ‘Run as administrator.’

Side Notes on other files in the folder:

  • The PDF is a replica of the online documentation. I find the Datazen documentation a bit lean.
  • The README.TXT tells you what is in the folder, how to contact support, and the URL to the online documentation.
  • The ‘Security and Deployment Best Practices.docx’ is a good guideline for getting started with your security and network team. I have used it a couple time with clients. It is not the end of the conversation, but the beginning. This Word document has helped get the conversation started on the right step.

5. First we come to the standard welcome page. Click Next.

image

6. On the ‘End-User License Agreement’ click the accept radio button followed by Next.

image

7. On the Features page is where we choose the parts of Datazen Server we would like to install. For now leave the defaults, unless you want to change the install location, and click Next.

This is useful when scaling-out a production environment.

image

8. On the Core Service Credentials page we can choose the Run Core Service account. For the use of this Sandbox I would leave the defaults and click Next.

If you are building this on a domain network follow the best practices and change the account to a domain service account.

image

Now we are getting to the heart of the install. Pay close attention to the next few steps. They are very important to the setup and your data.

9. Create and Enter an Admin password for DataZen. This will be the only Admin password for DataZen. Other Admin accounts cannot be setup later, so guard this password.

image

10. At this point, I recommend opening a notepad file for items that you will need to copy & paste over the next few screens.

11. On the Authentication page we can leave the Authentication Mode as ‘Default’ and click Next.

The Authentication method can be changed later in the server setting if needed.

image

12. DataZen by default encrypts the Repository with AES-128 encryption. Click the “Copy to clipboard” button and paste in the open text file. After pasting the key in your notepad doc, click Next.

image

13. Label the key in the text file ‘Repository Key’ like the screen shot. This is not the only unique ID we will get from the installer and we need to keep them labeled.

image

14. Now we are given the Instance ID. Once again click the “Copy to clipboard” and paste in the text file with the label ‘Instance Id.’ As stated in the description this Id is used when scaling-out DataZen. It is good practice to save the Instance Id incase you want to scale-out your test environment. Click Next.

image

15. Next, we come to the credentials for the Data Acquisition Service. Since this is a sandbox either leave as is. If you changed the Core Server credentials in Step 8, click the ‘Use Core Service credentials’ button. Click Next.

image

16. Almost there, on the Web Applications IIS Setting page I would recommend leaving the defaults if you are not familiar with IIS. 

I  have tested installing DataZen along side another web app. I had to spend a fair amount of time reconfiguring IIS, Datazen, and the other web app. Once I got everything reconfigured the apps worked correctly. The difficult part was getting IIS reconfigured correctly .

Also, don’t be tempted to change the port to 443 for SSL. DataZen handles the security for you later.

image

17. This is the last configuration page before Datazen installs. If your organization uses an SMTP server that does not require a login, then feel free to fill out this page; otherwise, leave the default because you will have to make some changes to a config file after install in order for email to work. The email server is important with default authentication because DataZen lets the Admin set the username, but only the User can set the password.  Click Next.

Once finish a blog post on how to manually setup the configuration for servers that require authentication, I’ll post the link here.

image

18. Ready for Install? Yes. Click Install

image

The install will take a while so go refill the coffee. 

19. In the meantime, save and store that text file.

image

20. After the install is complete, close the installer, Open IE, and type ‘http://localhost/cp’ in the address bar.

You will be taken to the DataZen Server Control Panel login page. If you leave off the ‘cp’ and type ‘localhost’ you are taken to the viewer page, which is for viewing dashboards via a web browser.

The username is ‘admin’, password is the one you set during setup.

image

Enjoy!!

Installing DataZen – Building a sandbox

Report Services – Setup to Deployment

Slide Deck for Ohio North SQL Server User Group

Report Services Slide Deck

Report Services – Setup to Deployment

The Case of the Missing VM

Last year I started a new job as a Database Engineer. In this job, I get to see a lot of support tickets for help to restore customer’s databases. It amazes me to know how many people do not have backups of their database. Then, late last year I realized that my team does not have backups of our databases. Follow me on this one. I’m not saying that my company does not do backups of their company wide applications; I know they do. I’m saying that the databases my team uses to perform work for customers are not backed up. These databases are not managed by our IT department; therefore, it is the team’s responsibility to maintain backups, especially since most of the databases are offsite.

This realization must have struck many members of my team simultaneously because a lot of conversations started revolving around the void in our database backups. Due to the nature of our work, our team only uses a database for about six to nine months at a time. Then, we destroy the database and start over. A point was made that everything we do can be recreated in a matter of time. However, what if we are down to the last day of the life of that database and it crashes causing the whole project to be pushed back weeks in order to recreate everything? Nevertheless, if there is a possibility for a database to have issues, wouldn’t it make sense to have a solution in place for the “what if” part of life?

In light of that “what if” our team will start adding maintenance plans to our databases. I am very glad that we were able to implement this new policy of backups; however, something else occurred to me- we have a virtual layer to deal with. Now, I’m not trying to sound dooms-day-ish, but I am practical. What if the VM that is hosting both SQL Server and the backups becomes corrupt? When I brought this up people looked at me crossed eyed like I was crazy. One person even said “VM’s don’t go bad.”

Well it happened!!! Last week something happened to our VM host and just like that one of our VMs was gone, moved to Invalid according to VMware. Thankfully, SQL Server was not being hosted on that machine, but my proof of screen shots helped my case.

What happened? We are still figuring that part out, but from the below screen shot you can tell that a VM is missing from the mix.

.

Last time I counted from 1 to 10, 6 came between 5 and 7. That day it did not, and 6 had turned into

‘Unknown (invalid).’

This situation does have a happy ending; we were able to reboot the host and everything came back online, but that was 5 days after VM6 disappeared.

Lesson learned: When dealing with backups move them off the server that the backup was created on, especially if the server is a VM.

I write this lesson to myself as well as others. This could have been one of my production SQL servers that went down without a backup. That day had a happy ending, but what about all of the tomorrows? I don’t know about you, but I’m not willing to take that chance.

The Case of the Missing VM