A Multitude of Adventures

So my updates to the project I just started have been sparse so far due to my trying to find time for it while on a honeymoon with my wife. I dare say I am pleased however with that I have gotten done so far, building a model of sale based on the Adventure Works Database. Browsing through the data (although I probably shouldn’t be) I am impressed with  the quality and wealth of test data they have crammed in it. It has made me rethink a few things and I am now making a better quality application that would function as more than a proof of concept. I am more or less done with the ability to list and delete sales, I still have to test adding them and then repeat the same process for line items of sales. Once that is complete I’ll have a dynamic warehouse and display for data, so I can start on a controller for the actual business analytics dashboard, which is the purpose of this exercise.

I had planned on spending my Sunday and Monday working on this project  (along with unpacking and general recovery), however as we were traveling back toward home my wife fell prey to appendicitis. She pulled through the surgery with flying colors, and only now do I find myself with enough time to stop worrying about her to instead sit on my computer while I watch her sleep. The trip has otherwise been magnificent, though exhausting to try and see everything. Since this happened shortly after crossing the Canadian Border we are up in Buffalo and will sadly be making the trip home tomorrow, which hopefully won’t give her too much discomfort.

Personal Interference, Sample Database, and Data Analysis

So this time I’ll blame my personal life for taking up all my free time, as only now on my honeymoon do I seem to find time to update my Blog. But that aside a lot changed since my last post, I’ve started writing chef cookbooks for work to provide a service oriented architecture for our applications. We have extended to automation system with more deployment types and I’ve been teaching my coworkers both it’s function and how to extend it. My coworkers are now all proficient enough to on board an application, and we are extending our number of deployments weekly. I personally have about 20 applications in the pipeline at the moment (.net and java) all of which will be deployed by using the system and Chef. I’m also hunting around to find a modern SSO mechanism like OAuth or SAML as most of our applications leverage custom solutions, which I would like to curb by offering intro courses to our developers.

In my personal life I’ve been fiddling with machine learning off and on, learning because it has been of great personal interest to me. I’ve since been inspired to create a business analytics dashboard oriented toward the retail space. I’ve started scaffolding a bit, thinking that I’d use webapi, signalr and r.net to run the numbers, however I may shirk R.net for the time being given my immediate task doesn’t require it. I’ve been given a methodology a business has been using for predicting their needed inventory stock, and they are hoping to extend it into a more real time application that doesn’t require manual updates.


I’ve torn the application apart 3 times now due to how I keep changing my thoughts on the exact execution, but I think things will come together soon as I settle on an ideal architecture. I gathered an Adventure Works sample database from Microsoft (http://msftdbprodsamples.codeplex.com/releases/view/55330) which should make for a good starting base of the sort of data I’ll deal with. To make it near real time, I’m thinking I’ll make the data analysis event driven, and store reporting calculations in the database. By doing so I shave of compounded calculation times and can later leverage a similar architecture when running larger information or more complex queries. A minimum viable product is the goal of this exercise however, so I am cutting a few corners on the first run, and will extend it iterative releases.

I’ll update more on the project, most likely this week once I’m done setting up my mobile development environment. (I’m traveling abroad at the moment, so I’m using my laptop which has traditionally been an implement for web browsing.)