The Little Data Science Checklist

English: Random data points and their linear r...There are lots of sources online and in book stores that will teach a person how to do Machine Learning, Regression, Text analysis, or any other fascinating topic related to Data Science.

But is that all there is?

Just know apply an algorithm, and you improve the bottom line of your company?

What if you need to justify a project? How do you demonstrate that there is a process that can be followed for data science?

Recently with some colleagues we were discussing this precise topic.

Here is the answer that we came up with:


            What is the question?

            Who asked the question?

            When do they want it?

            How does it provide business value?


            Validation Criteria

            Identify the data

            Collect the data

            Transform, Merge, Munge

            Analyze and explore


            Peer Review

            Visualize and Communicate

            Generate new directions.

            Produce Finding





            Experiment Required

Supporting Data:

            Raw Data


I will pick a section and write more about each of these sections, but this little checklist is a beginning step in applying a Data Science process for an Enterprise. 


The travelling introvert.

United Airlines Boeing 777–200 taking off at A...
On occasion I get to travel for work.

There is a commercial by courtyard where part of the the tag line is: "Some people have to travel for work, some people get to travel for work."

I am most certainly in the latter category.

I think one of the things that makes traveling as an introvert interesting is we do tend to pay attention to our surroundings a little better than others. Especially when I travel alone.

In her book  Susan Cain describes the physiological differentiation from an Extrovert and Introvert. The Introvert can be hyper stimulated by their environment. This stimulation can be managed through training, but at times it can overwhelm those who don't know how to handle it.

Recently I had a chance to travel to Boston for work. I wrote this little snippet on my Facebook page about a little girl I encountered during my layover:

Walking through this long terminal looking for my next gate, bumping into people and trying not to walk on people's feet it's hard to actually notice any individuals. But then I heard it.

I had to look around through the throngs of people to find her, but I was able to zero in on her song.

She was about 2, wearing a Wonder Woman shirt dragging a suitcase that was as big as her while holding mom's hand.

"Just keep swimming, just keep swimming", she sang.
"That's right", the Mom told her "we have a ways to go."
I almost started singing it back to her.
Made my day.

All of my children are grown, and when Finding Nemo came out they were all teenagers. But I can imagine when my kids where younger getting them to sing this song just to keep them occupied during long treks to wherever we needed to go.

There was one other little side jaunt that I was able to make during my short trip for work.

There is no need for a car when I stay in Boston, since my office is quite close to my hotel. However, I needed to get from Logan airport to my hotel.

There is a water taxi service.

It has a very reasonable rate, and you can travel across Boston Harbor. I had heard about it from  a coworker and thought I would try if I got the chance.

This trip, I got the chance.
Boston Harbor at sunset

Follow the signs in Logan for the water taxi till you reach the pier.

Then use the microphone to notify the taxi service what location you are at.

The short ride across the harbor at sunset was magnificent.

The photos I took of the excursion on the water do not do it justice.

To my fellow introverts, I encourage you to try something slightly new the next time you travel. If you have to be uncomfortable for a period of time stepping out of your comfort zone, find something interesting at your travel destination that won't take any time away from your travel objective, and try something new.

Remember, Life is what happens while you are making other plans.



The data guy deals with hardware issues.

Fedora logo
Fedora logo (Photo credit: Wikipedia)

Remember how to do this?

Since moving into our new house, I had a few other priorities to deal with before getting my personal computing equipment in order.

Before the days of "the cloud" if you wanted to do an coding, or data analysis you needed to have a place to put the data you need to analyze, and it had to have a decent amount of memory and processing power in order to do any kind of analysis on data larger than just a few meg.

I had bought a tower some years ago, I used it during some of my consulting projects, as well as some of my personal research (research I should have pursued further, but now apache parquet negates).

It may not be comparable to an EC2 machine, but it gets the job done for me. 1Tb, 4Gig memory, quad CPU. It has been in storage in a box since we moved away from Maryland (3 years ago).

I dusted it off, set it up, brought out its monitor and fired it up.

"It's alive!"

Yay. I have a tower again! (or so I thought).

I connected it to my router, and decided that since this was running like Fedora 12, and the current version of Fedora is 24. Well in order to do that, I need to download the live disk.

After getting DVDR's to write the ISO image onto, I realized something.

I could use the live CD to test my laptop.

<rabbit hole>

My personal laptop died shortly after the move, it has been sitting idly in my office for some time. I had been hoping to replace it, but there are always issues that come up that have a higher priority.

I built a VM on my current machine, and ran the disk checks on the Fedora DVD to make sure it had burned correctly. Then I put it in my personal laptop.

Fedora Lives!

Ok, so now that means that the harddrive in my laptop is gone. So I found a replacement and ordered that.

</rabbit hole>

Now back to the tower. I wanted to get my data off the tower, so I copied everything off.

Bam, machine died.


I mounded a local disk, and copied off everything I needed, then did the Fedora install.

Fedora, up and running!

Bam, machine died.

Ok, let's check some stuff.

Deutsch: Kingston KHX1600c9d3lI tested the memory, and during the test.

Bam, machine died.

Ok, so this machine needs new memory.

Off to Best Buy to get new memory.

While I was at Best Buy, I saw that they also had ddr3 laptop memory. Since I have to replace the hard drive for my laptop, why not do a memory upgrade?

I got the ddr3 for the tower and the laptop, then replaced the memory in the tower.


It's Alive!

Now I can do a Yum update since the machine will be up for a while.

Yum is being deprecated in favor of a tool called DNF.

So DNF Update it is.

Once current, then I need to set this up as a non-gui machine. This is called initlevel 3 in prior versions of Fedora/Red Hat.

Now there is a new tool called systemctl. In order to switch over to more of a server configuration the command is:

systemctl isolate 

Ok, the Tower is now in good shape, so when my laptop harddrive arrived I replaced the hard drive, and added the new 8Gig stick, then installed Fedora.

Up and running after install, the laptop locks up periodically after a few minutes.

Nothing will launch, and it even loses connectivity.


I started to lose faith in Fedora, and try Ubuntu. When Ubuntu live booted, it had memtest86+ on the initial screen. I ran the memory test, and it immediately rebooted.

Let's try that again.

Same result.

Let's assume the memory is bad, and put the old memory back in.

Memory test again?

Now I have Fedora running on my laptop and Tower.

I will be going through migrating some of my R code now onto these machines.

While I am familiar with troubleshooting hardware issues, I am glad this is not something that I do on a daily basis.

It seems like this can be a constant rabbit hole in that, when you uncover one problem, often it exposes a new one.



Beware the "partnership"

New Smiley for the sMirC-series. beware!

"I want to make you my partner"


When someone says this to you, you should think of the phrase:
"Beware the ides of March."

From my experience this means:

"I have an idea, I want you to do all the work to build it. Once you have done all the work, I am going to get back involved and make a lot of money off all the work you did."

Don't get me wrong. If you and a friend come up with an idea, and you are the "technology" person. They are the "business" person, then becoming partners make sense.

But both of you are in the same boat.

If you are considering a side project, and the "idea" person likes what you say about the technical details about how to implement their business idea, you just got a customer.

Think about that term. Customer. If you are a customer, do you tell the service provider that they should be your partner?

No, they perform a service for you, then you pay them.

Technology side projects are no different.

What about the scenario when there is limited capital to go around?
This is a Catch-22 situation

The idea person needs something implemented, in order to get to the point where capital is available.

The technology person needs resources (compute resources, vendor resources, etc..).

However, if this is your first experience in consulting, here is the trick. If you have ever heard the phrase: "Make a business case for that purchase"? Now is your opportunity to apply your technical knowledge to a business scenario.

Here are a couple hypothetical exchanges.

Idea Person: "We need to be able to market my widgets to a broad range of customers."
Tech Person: "We can use X or Y to do that. X costs $200/month Y costs $300/month, and my time to manage either of them is $50/hour."
Idea Person: "Why do I pay $50/hour?"
Tech Person: "So you don't have to deal with either X or Y, you can focus on your value add widget."
Idea Person: "I want to make you my partner. Then we can both benefit."
Tech Person: "OK, for a partnership my rate is $25/hr, and we still need to pay for either X or Y."

Idea Person: "If we can put together this widget, then we can solve a key problem in this space."
Tech Person: "We can use this tool that costs $200/kit to make some prototypes. My rate to build it is $50/hr."
Idea Person: "Why do I have to pay you $50/hr?"
Tech Person: "Because you didn't even know that tool was available, much less how to use it to build your idea."
Idea Person: "I want to make you my partner. Then we can both benefit."
Tech Person: "OK, for a partnership my rate is $25/hr, and we still need to pay for those kits."

There are risks involved in doing side projects.

Whatever you choose to do, make sure you have an agreement written down with clear expectations from the onset.

While the costs of many things have come down with tools like the cloud, or even open source tools. It still takes expertise to use these tools, and seldom are the tools themselves completely free (as in beer).

Be careful working with side projects. Some can be rewarding, and there are some benefits to working with some perhaps new technologies.

However, the down side is they can become a time drain where in order to make any money the goal line keeps getting moved, and you have to jump through more and more hoops in order to meet expectations.


If you give a quant(or Data Scientist) some data...

With compliments to Laura Joffe Numeroff:

"If you give a quant some data, she's going to ask for storage.

When you give her the storage, she'll probably ask you for an admin tool. When she's finished, she'll ask you for a archive/restore test.

Then she'll want to have an audit prove there has been no compromise of PHI/PII/PCI data. When she looks at the audit logs,she might notice the production database doesn't have encryption. So she'll probably ask for some encryption tools.

When she's finished encrypting the production data, she'll want to verify that the data warehouse has proper encryption protocols set up. She might get carried away and encrypt all the data in the enterprise.

When she's done, she'll finally get around to running a regression. You'll have to approve cloud expenditures to be able to run the spark cluster.  She'll crawl in, make herself comfortable and munge the data a few times. She'll probably ask you to tell her more context around this data. So you'll tell her how the data was collected, and she will ask to see the initial graphs of user usage.

When she looks at the pictures, she'll get so excited she'll want to make some of his own visualizations. She'll ask for a larger monitor, and an industrial plotter. She'll make the visualization. When the visualization is finished, she'll want to share it with others. After sharing it with others, and getting feedback, she will create more visualizations to demonstrate the effect of regression on the data. Then she'll want to store all these visualizations on a web-server.  Which means she'll need more storage. She'll post the visualizations for everyone to see.

After she has stored the visualizations she will check the admin tool to make sure the users have access to it. The admin tool won't have the access logs stored in a format she can use to analyze it. So... she'll ask for some more storage to extract the logs.

And chances are if she asks you for the storage, she's going to need more data to put in the storage."