Saturday, April 11, 2015

Few months back Microsoft introduced several new API’s for Office 365 for which spun across SharePoint, Exchange, Lync, and rather than having the developers learn each of the platform they simplified the general concepts and also introduced a new type of app - “Office 365 external Apps”

Along with this new type of Apps, Microsoft has also enabled cross-origin resource sharing (CORS) support for Office 365 API’s. Which means we do not need any special client libraries to authenticate or access these API’s.

Let’s see how we can register this new type of app and then integrate it using vanilla-js.

Tuesday, February 24, 2015

I have been working with JavaScript for over 5 years now. In the last 3 years, I have written more JavaScript code than C# code. And still there are parts of the language that amaze me. Who would have thought that 10 days of work could give rise to the assembly language of the web.

What is ECMAScript 6 ?

ECMAScript 6 is the upcoming version of the ECMAScript standard. This standard is targeting ratification in June 2015. ES6 is a significant update to the language, and the first update to the language since ES5 was standardized in 2009. See the draft ES6 standard for full specification of the ECMAScript 6 language.

Anomaly detection

Choose features x(i) that you think might be indicative of anomalous examples.

Fit parameters u1,…un, sigma square 1,… sigma square n

Given new example x, compute p(x):

Anomaly if p(x) < epsilon

Aircraft engines example

10000 good (normal) engines

20 flawed engines (anomalous)

Alternative 1

Training set: 6000 good engines

CV: 2000 good engines (y=0), 10 anomalous (y=1)

Test: 2000 good engines (y=0), 10 anomalous (y=1)

Alternative 2:

Training set: 6000 good engines

CV: 4000 good engines (y=0), 10 anomalous (y=1)

Test: 4000 good engines (y=0), 10 anomalous (y=1)

Algorithm Evaluation

Anomaly detection vs. Supervised learning

Anomaly detection

Supervised learning

Very small number of positive examples

Large number of positive and negative examples.

Large number of negative examples

Enough positive examples for algorithm to get a sense of what positive examples are like, future positive examples likely to be similar to ones in training set.

Many different “types” of anomalies. Hard for any algorithm to learn from positive examples what the anomalies look like; future anomalies may look nothing like any of the anomalous examples we’ve seen so far.

This is help overcome a lot of issues later when installing python libraries as the library installer look for details in registry to check if specific version of Python is installed or not. And with 64bit installation it wasn’t able to detect it.