Microsoft Transformed Over Time

When I started programming in Microsoft Visual Basic (Classic), I believe Crystal Reports was bundled as part of the install package, it may have been version 3 of VB.  And Microsoft had Access to do reporting as well.  There wasn't a real emphasis on reporting in the Microsoft world back then.

And then around 1998 or 99, I remember listening to a presentation from a consultant on the World Wide Web and how to create simple ASP application.  It seems Microsoft was late to the Internet party.

Around the same time, although Visual Basic was such an easy language to write, it lacked true object oriented methodology.  Back then, they released a language similar to Java called J#.  I tried learning it at the time because Object Oriented meant it was a true language.  Then .net had c# which had a close similarity to true Java.  So they were kind of playing catch up there.

From 1995 to 2001, I worked primarily in Oracle.  Because they dominated the database market back then.  They were reliable for production apps, could scale and were in demand so it was a safe technology to learn.  Microsoft had SQL Server 7 and then 2000 along with Analysis Services.  I bought a book on learning OLAP but the book confused me more than taught, so I put it aside for a few years (I still have it though).  So Microsoft was sort of late to the production database world trailing Oracle and IBM DB2.

Back in the 1990's I remember using Netscape and a lot of people were on AOL.  Microsoft bundled Internet Explorer into their operating system and had to go to court.  Over the years, I heard many people say they used IE to just to download and install other browsers and only used IE for testing their web apps to make sure they worked.

Cross Platform
I remember writing code in Visual Studio and dot net.  I always wondered why Microsoft never developed an architecture similar to the Java Runtime Engine, which allowed Java to run on any operating system.  Decades later, we are starting to see cross platform development in dot net called Code which runs on OS X and Linux.

Open Source
Microsoft code has always been proprietary.  One of the reasons I liked to program in Microsoft was because it was baked into the operating system.  You could access registry entries, low level code and it all just worked.  But nobody except the developers saw the actual source code.  Lately, the open  source communities have sprung up and flourished with teams of developers from across the globe contributing to the success of many languages.  And Microsoft has followed suit by open sourcing many applications listed here.

Operating Systems
I remember in the mid 1990's, my father who worked for IBM told me about a new operating system which worked on a windows concept.  You could have multiple windows open concurrently.  It was called OS2.  Although I never had a computer with OS2 operating system, Microsoft created Windows and maintained market share over time because many personal and business computers used Windows.

Reading this post, it would appear that Microsoft has been playing catch up in a lot of different technology spaces.

But that's all changing.  I posted a blog recently that outlines a lot of new features and products from Microsoft.  New leadership is driving new results.  Instead of dictating the rules and then playing catch up, it seems that Microsoft has become a team player by contributing to open source projects, exposing their source code and allowing developers to run apps on multiple operating systems.  They have moved a lot of services to the cloud in Azure, which aligns with the new mantra of Cloud first, Mobile first.

I've been a Microsoft developer since about 1995 and there's always been jobs available for whatever technology was hot at the time.  It seems they have a presence in every aspect of technology and driving new innovation from the Research team like Skype Translator and virtual reality HoloLens.

I don't claim to be an authority on the history of Microsoft.  But it looks like Microsoft has transformed itself over time and keeps getting better.


Intro to Azure Machine Learning and R Language

I'm investigating the statistical language "R".  And why is that?  Well, being in the Microsoft Business Intelligence stack, you may have heard that they've acquired Revolution Analytics.

R is one of the preferred languages for statisticians, data miners and analytic professionals.  Now it will be baked into the Microsoft Business Intelligence stack.

I found a great post by leading Microsoft BI professional Jen Stirrup explaining the acquisition of Revolution Analytics.

I found a course on Pluralsight for "R Programming Fundamentals" and listened to the course.

I dabbled with Matlab and Octave and posted a blog about it last year.

I don't claim to be a Statistician or Data Scientist, but you have to start somewhere.

This morning, I saw a good tweet: "Why I Left My Data Science Master's Program" by @CPensive on @LinkedIn https://www.linkedin.com/pulse/why-i-left-my-masters-program-charles-pensig-1

The author provides some real world expectations on what to learn and how to spend your time wisely.

Here's an older article on running R in Microsoft Azure.

I did a sample Azure Machine Learning blog post in August 2014, posted here.

Recently, I got access to the Microsoft Machine Learning portal:

So, now to investigate.  When logging on, you get:

There's a bunch of samples provided in the Gallery:

Going to the Gallery, search for R by "Tags" we get,

Selecting a random Experiment, we get a good summary,

Open in Studio, it copies the project to the work space,

And we see R options,

The canvas shows the flow of steps, as each step is connected to other steps, performing various functions along the way,

It added some entries to the My Datasets,

You can see the same files were added to the Dataset screen,

Back on the Experiment canvas, we selecting one of the tasks, we see the code in the editor to the right,

Scanning the code, there's some logic going on within the script,

Let's go ahead and run the Experiment,

Queued and running,

You can see each task running, when complete, is shows a green check,


Viewing the Run History,

The documentation is provided for this experiment here.

There's an MSDN Forum to discuss Azure Machine Learning: https://social.msdn.microsoft.com/forums/azure/en-US/home?forum=MachineLearning

Here's a good blog source: http://www.r-bloggers.com/tag/rblogs/

As you can see, this portal is separate from the Azure website, which has Machine Learning option,

This post is by no means a deep dive into Azure Machine Learning or R language, but it does show you how easy the platform is to get started, load a sample project, run and see how an experiment is structured with actual code.

Revolution R Open – Latest Update Now Available for Free Download: http://blogs.technet.com/b/machinelearning/archive/2015/05/22/revolution-r-open-latest-update-now-available-for-free-download.aspx

Thanks for reading~!


Visual Studio Ultimate Modeling Project Diagrams for Architects

Modeling a system to document the architecture is a required skill set for an Architect.  Microsoft offers a solution for creating Projects in Visual Studio Ultimate.

The language used to describe the architecture is called Unified Modeling Language or UML.  It's basically a blueprint of a system.  Here's a link to UML 2.2.

Microsoft Visual Studio Ultimate offers a way to document visually, under the Architecture menu item shown below:

Here you see the project type in Visual Studio Ultimate to create a new Project:

There's a Model Explorer:

Architect Explorer:

Here's a link on creating UML Projects and Diagrams: https://msdn.microsoft.com/en-us/library/dd409445.aspx?f=255&MSPPError=-2147217396

Modeling the Architecture of a Software System: https://msdn.microsoft.com/en-us/library/dd490886.aspx

Generating and Configuring Your Application from Models: https://msdn.microsoft.com/en-us/library/ff472563.aspx

You can generate code based on your UML Visual Studio Project: https://msdn.microsoft.com/en-us/library/ff657795.aspx

In Visual Studio Ultimate, you can use a layer diagram to visualize the high-level, logical architecture of your system: https://msdn.microsoft.com/en-us/library/dd409462.aspx  You can use common Architectural patters such as Presentation Layer, Business Layer, Data Layer and Common Layer.

Developing Models for Software Design: https://msdn.microsoft.com/en-us/library/dd409436.aspx

Here's a link to Microsoft Visual Studio Architecture, Design and Model: https://www.visualstudio.com/en-us/features/architecture-and-modeling-vs.aspx

Structuring Modeling Solutions: https://msdn.microsoft.com/en-us/library/ff817716.aspx

Here's a good blog post on creating Classes from UML in Visual Studio: Creating Classes From UML Diagrams in Visual Studio 2012

You can create a Work Item and connect it to Team Foundation Server TFS in Visual Studio.

This blog does a good job of defining the object types within a UML project "Code Generation from UML Class Diagram in Visual Studio 2012 Ultimate": http://www.dotnetcurry.com/showarticle.aspx?ID=831

And another good article here: The Simplest Thing Possible: Architectural Tools in VS and part 2.

Lastly, here's a forum for Visual Studio Modeling: https://social.msdn.microsoft.com/Forums/vstudio/en-US/home?forum=vsarch

Getting Started with Visual Studio Code Cross Platform IDE

 Why Visual Studio Code? https://code.visualstudio.com/Docs

Write cross platform code in OSX, Linux and Windows.

Download here: https://code.visualstudio.com/

I prefer the lighter background...here' the settings page...

Building ASP.NET 5 Applications with Visual Studio Code

Integration with Git:

The Basics of Visual Studio Code: https://code.visualstudio.com/docs/codebasics

You can now develop c# apps on multiple platforms.

The product is well documented, have a look online to get familiar.

Looks like a great product from Microsoft for developing cross platform in a familiar tool.


Windows Phone App Hosted in Microsoft Azure Preview

I've been working with Visual Studio Apache Cordova project to write code for Mobile devices, and deploy to any device: http://www.bloomconsultingbi.com/2015/05/first-try-with-visual-studio-tools-for.html

So yesterday, I spent some time investigating the Azure Mobile Service, only to find out that it doesn't actually host the Mobile applications.

So today, I saw on our internal Yammer site, a new feature for hosting Mobile Apps in Azure:

In order to try it, you have to sign up for the Preview Feature:

So I did.

Signed up:

Went to the link: https://tryappservice.azure.com/

Selected Mobile App:


Log in:

Choose language / device:

Says the App was created, with 57 minutes remaining before is goes away:

I selected to view the app with Visual Studio Online, "Monaco" looks new:

Let's run it...

Here's the Mobile Services Documentation: http://azure.microsoft.com/en-us/documentation/services/mobile-services/

Click this link:

So, the next step was to send myself a link to the URL, so that I'd be able to click the link in my Verizon Nokia Windows Phone.  The email showed up in the inbox, clicked, and the blue image above opened in the browser.

So we were able to create a Mobile Application, in Microsoft Azure, modify the code (I kept the application vanilla, no code modification), and viewed the Mobile URL on the Windows Phone.

Looking at the source code for the project in Visual Studio, it appears to be a basic c# web application with all the files and folder structures you'd expect from a Visual  Studio project.  It looks like an MVC application in C# with JavaScript:

As you can  see, the clocks ticking, with a reminder in Visual Studio online:

And there you have it~!

Thanks for reading~!


Git Hub Client Side for Windows

My brother David, sent me a posting on how to secure a GitHub account with a certificate.

Looking at the webpage, there's some verbiage indicating that Windows does not require certificates:

However, it would be nice to have GitHub for windows installed.

So first step is to download the GitHub for Windows: https://windows.github.com/

It says you can clone an existing repository, so logged on to the GigHub site:

It's asking to connect to an application, so select the OK button:

It recognizes the JavaScript directory from the website:

In Settings, there's an option to view "open in git shell":

So next, opened Visual Studio 2013, Connect to Repository, and sure enough, the GitHub account was already connected:

Clicked on JavaScript:

What's interesting is I received an email from GitHug, indicating a new SSL key was created:


And back in the GitHub website, under SSH Keys, an entry was automatically added:

The original intent of this blog post was to document the manual creation of a certificate for connecting to Git Hub.  After beginning, it appeared the steps were not as manual for Windows and the steps were provided on how to get up an running on Git Hub Client side for Windows.

Thanks for reading~!