<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Infosys | Microsoft</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/" />
    <link rel="self" type="application/atom+xml" href="http://www.infosysblogs.com/microsoft/atom.xml" />
    <id>tag:www.infosysblogs.com,2010-03-19:/microsoft//26</id>
    <updated>2012-02-03T09:03:47Z</updated>
    <subtitle>Infosys Microsoft Alliance and Solutions blog</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.34-en</generator>

<entry>
    <title>Database access in Windows 8 Metro Application</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/02/database_access_in_windows_8_m.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5583</id>

    <published>2012-02-03T08:49:34Z</published>
    <updated>2012-02-03T09:03:47Z</updated>

    <summary>Database access in Windows 8 Metro Application</summary>
    <author>
        <name>Atul Gupta</name>
        
    </author>
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="metroui" label="Metro UI" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>Even though what we have is still the initial developer preview, creating Metro applications seems to be gaining popularity in developer communities. Although we can create interesting applications using HTML5 and WinJS or XAML and C# or VB.NET, on top of WinRT, there are some unanswered questions like working with databases. </p>
<p>Any enterprise applications typically will work with some database at the backend. As of now, however,&nbsp;WinRT does not have any API for database connectivity.</p>]]>
        <![CDATA[<p>As per our understanding today, distribution of metro application will be done through app stores. In this case it would be difficult to distribute database along with the applications. So how do we work with database in metro application? </p>
<p>While discussing with my colleague Dhananjay, we came to the conclusion&nbsp;that all the operations on databases must be done through service. Probably metro application will work with databases in the same way today Windows Phone 7 (WP7) is working, though WP7 still has access to local lightweight database.</p>
<p>If we are creating metro application using XAML and C# then WCF RIA Service support is given to work with server database. In case of HTML5 and WinJS, IndexeDB may be used as the database (though under the hood this&nbsp;is isolated storage and not real database). </p>
<p>We will have to wait and see how database support is provided in WinRT runtime when the beta build is release. If you have any viewpoints or comments on this, we will be glad to hear them.&nbsp; <br /></p>]]>
    </content>
</entry>

<entry>
    <title>Exploring the business prospects of Kinect </title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/02/exploring_the_business_prospec.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5582</id>

    <published>2012-02-03T05:17:07Z</published>
    <updated>2012-02-03T05:29:12Z</updated>

    <summary>Microsoft launched Kinect for Windows a few days ago and this seems to be a good time to touch upon its business prospects. Infosys has been experimenting with Kinect since a while and we are quite excited with the possibilities....</summary>
    <author>
        <name>Vikas Dewangan</name>
        
    </author>
    
        <category term="Kinect" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="NUI" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="kinect" label="Kinect" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        Microsoft launched Kinect for Windows a few days ago and this seems to be a good time to touch upon its business prospects. Infosys has been experimenting with Kinect since a while and we are quite excited with the possibilities. Kinect has an interesting combination of sensors including depth sensor, RGB camera, multi-array microphone and accelerometer. This caught the attention of innovators who created several Kinect &quot;hacks&quot;, which far exceed any applications Microsoft would have imagined, when they originally released Kinect as a gaming controller. The main advantage of Kinect for Windows (over the Xbox version) is the &quot;near mode&quot; that allows subjects to be sensed as close as 40 cm. as compared to around 80 cm. in the default mode (and the Xbox version of Kinect). This opens up the doors for applications where proximity is preferred. So, let&apos;s see some business applications: 
        <![CDATA[<br /><b>Retail and advertising:</b> Kinect is all about user experience and can help manufacturers and retailers provide a superior product experience to potential customers. We at Infosys have been working on a Kinect based retail store product catalogue solution that provides an intuitive gesture interface to navigate through product categories and relevant product details. We are sure that this will excite retail shoppers, while helping them select the right product. Another area that is fast emerging (which no one seems to have got completely right yet) is virtual dressing rooms where instead of having to physically try on clothes, customers can view on a digital screen a simulation of how those clothes will look on them, including size and fit. Fitnect is one such example (<a href="http://www.fitnect.com/">http://www.fitnect.com/</a>). Kinect can detect people and their movements and hence surveillance of shoppers movements to get insights into their behavior. E.g. Shopperception utilizes Kinect (<a href="http://shopperception.com/">http://shopperception.com/</a>). Gesture controlled TVs are expected to become mainstream soon, possibly with Kinect as the remote control replacement. This scenario can be extended to provide interactive advertisements at public places like malls and metro stations. <br /><br /><b>Healthcare:</b> There are several applications in health care out of which the most notable are surgical assistance, patient rehabilitation and elderly care. During surgery, surgeons at times need to access medical images such as CT scans. At present they need to either sanitize their hands each time they touch the keyboard or have an assistant for this job. Having a gesture controlled interface eliminates this need completely and speeds up the operation (<a href="http://thenextweb.com/microsoft/2011/03/25/kinect-for-surgery-its-more-likely-and-safer-than-you-think/">http://thenextweb.com/microsoft/2011/03/25/kinect-for-surgery-its-more-likely-and-safer-than-you-think/</a>). Kinect provides skeletal tracking and hence opens up the possibility of assisting patients undergoing physiotherapy. It can help guide patients with the right movements to be made and correct any mistakes they may be making. (<a href="http://www.metro.co.uk/tech/880753-microsoft-kinect-used-in-rehabilitation-of-stroke-patients">http://www.metro.co.uk/tech/880753-microsoft-kinect-used-in-rehabilitation-of-stroke-patients</a>). It also has applications in elderly care. (<a href="http://www.microsoft.com/presspass/features/2011/dec11/12-19KinectEffect.mspx?rss_fdn=Custom">http://www.microsoft.com/presspass/features/2011/dec11/12-19KinectEffect.mspx?rss_fdn=Custom</a>). <br /><br /><b>Robotics: </b>There are two ways of looking at this: Kinect as the robot controller or as a Kinect mounted robot to provide its eyes and ears. Infosys is carrying out research on using Kinect for motion control of robots in a more natural way with gestures using Kinect and we are quite excited with the results. Gesture controlled robots using Kinect can be used for industrial or logistics applications. Kinect when mounted on a robot opens up the possibility of providing 3D vision and hence for example more effective domestic helper robots. The University of Warwick has been working on a Kinect mounted robot to locate earthquake survivors (<a href="http://www.homelandsecuritynewswire.com/engineers-use-xbox-kinect-find-earthquake-survivors">http://www.homelandsecuritynewswire.com/engineers-use-xbox-kinect-find-earthquake-survivors</a>). Further, Kinect inherently recognizes people, so it can be used to help make robots safer by avoiding collisions.<br /><br /><b>Business productivity: </b>Gesture driven navigation can help make presentations interesting. This is especially the case for presentations that are heavy on visual data. Apart from flipping through slides, we can have zooming in and out of charts, carousel views and exploding 3D models. This may create the need for presentation tools that are more powerful than PowerPoint; going ahead 3D presentations might become the norm. Another application is high quality virtual meetings. MIT has done some interesting work here (<a href="http://kinectedconference.media.mit.edu/">http://kinectedconference.media.mit.edu/</a>). In today's video conferences, if a speaker is walking around a podium or room the camera needs to be rotated by means of a remote. In this case, Kinect can inherently track the person and some mechanism to rotate the device (beyond auto-tilt) can be provided to ensure that the speaker is always within the frame.<br /><br /><b>Security: </b>Kinect can not only detect the presence of a person, but also a person's movements by means of skeletal tracking, which can be used to detect intruders and suspicious people. The Singapore Ministry of Home Affairs was looking at Kinect security applications at border crossings as the depth camera facilitates detection of the number of passengers in a car and other vehicles (<a href="http://www.mspublicsafetysymposium.com/media/3573/liu_032411_1310.pdf">http://www.mspublicsafetysymposium.com/media/3573/liu_032411_1310.pdf</a>). <br /><br /><b>Training: </b>Kinect has potential applications for training humans where specific movements need to be performed. It can be used in manufacturing industries to train workers and make them more efficient. A good example in healthcare training is performing CPR (Cardiopulmonary Resuscitation) (<a href="http://channel9.msdn.com/coding4fun/kinect/Using-the-Kinect-to-teach-CPR">http://channel9.msdn.com/coding4fun/kinect/Using-the-Kinect-to-teach-CPR</a>).<br /><br />Most business applications of Kinect at this point are in the R&amp;D stage and the full potential of this device is still to be realized. Further, some of these applications require advances in software algorithms. The future appears quite promising and is opening up new businesses opportunities. Some of these applications will inevitably become mainstream going ahead. Early movers will have a definite advantage.<br /><br />]]>
    </content>
</entry>

<entry>
    <title>Kinect for Windows</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/02/kinect_for_windows.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5581</id>

    <published>2012-02-03T04:27:00Z</published>
    <updated>2012-02-03T04:39:59Z</updated>

    <summary>Kinect SDK for Windows is now available</summary>
    <author>
        <name>Atul Gupta</name>
        
    </author>
    
        <category term="Kinect" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Microsoft Products &amp; Technologies" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="NUI" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Win 7" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="kinectxboxnui" label="Kinect XBOX NUI" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>Microsoft annouced the other day availability of <a href="http://blogs.msdn.com/b/kinectforwindows/archive/2012/01/31/kinect-for-windows-is-now-available.aspx">Kinect for Windows SDK</a>. This version can be used to build commercial application, something which wasn't possible with the earlier SDK. Alongside a new hardware device is also available now (priced higher than the earlier one). </p>
<p>While this SDK will work earlier device as well you would not be able to leverage the new near mode support which allows you to detect objects mearly 40 cms from the device unless you use the new device as well. Additionally if you are migrating your earlier code to the new SDK, you may want to use the <a href="http://robrelyea.wordpress.com/2012/02/01/k4w-code-migration-from-beta2-to-v1-0-managed/">Microsoft.Kinect.Migration</a> assembly to aid the migration effort. </p>]]>
        
    </content>
</entry>

<entry>
    <title>Location Based Services Value Chain</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/02/location_based_services_value.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5579</id>

    <published>2012-02-02T11:53:32Z</published>
    <updated>2012-02-03T05:41:19Z</updated>

    <summary>Location Based Services (LBS) are increasingly becoming popular especially in the consumer market. Due to inherent capability in devices to provide the user location and penetration of smartphones, Location based products and services are readily adopted by the consumers and enterprises as well.</summary>
    <author>
        <name>Manoj Jajoo</name>
        
    </author>
    
        <category term="Cloud Computing" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Phone 7" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="cloud" label="cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="location" label="Location" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mobile" label="Mobile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="tracking" label="Tracking" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p class="PadderBetweenControlandBody"><o:p>&nbsp;</o:p></p>

<p class="MsoNormal">Location Based Services (LBS) are increasingly becoming
popular especially in the consumer market. Due to inherent capability in
devices to provide the user location and penetration of smartphones, Location
based products and services are readily adopted by the consumers and
enterprises as well.<o:p></o:p></p>

<p class="MsoNormal">Location Based Services take the geo-spatial data as an
input from the resource or a device and provides the services that are relevant
to that location. Multiple approaches can be used to locate a resource and
provide the context based service to the user. In this Blog I will limit my
discussion to the Device-Centric approach in which the LBS Provider gives the
app to the subscriber, who then uses it to check-in at a specific location.
Check-in is the term commonly used to refer the arrival of a user at a particular
location.&nbsp; <o:p></o:p></p>

<p class="MsoNormal"><br /></p> ]]>
        <![CDATA[<p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; ">In the process of providing even the simplest of the LBS service, there are multiple players involved.</p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><img alt="LBSValueChain_Short.png" src="http://www.infosysblogs.com/microsoft/images/LBSValueChain_Short.png" width="539" height="223" class="mt-image-center" style="text-align: center; display: block; margin-top: 0px; margin-right: auto; margin-bottom: 20px; margin-left: auto; " /></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><u><br /></u></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><u>Applications Provider :</u>&nbsp;These are the LBS Service provider who are enabling different location based apps on the Subscribers device. Most often this is incentive driven and the subscriber uses the LBS apps to check-in or in some cases even allow the remote tracking of the user.</p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><o:p></o:p></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><u>Maps Provider :</u>&nbsp;LBS Service Provider and the Subscriber both use the Maps services to see the geographical location of the users who are tracked or checked-in. Maps provider exposes set of API framework which help different LBS service provider to do geocoding, reverse geo coding and map rendering.<o:p></o:p></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><u>Network Provider: &nbsp;</u>Role of the Network Provider depends on what approach is used to determine the location. In a device-centric approach where the tracking component is in the device and uses A-GPS, Location Assistance Service is provided by the Network Provider. In a network centric approach in which the tracking component is not part of the device, Network provider can still locate the device using Cell towers proximity. Network centric approach is typically used in the Emergency services.<o:p></o:p></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><o:p></o:p></p><p class="MsoNormal" style="border-style: initial; border-color: initial; font-size: 13px; "><u>Reference Content Provider:&nbsp;</u>&nbsp;This is one of the key components and ever growing database to increase the Value added services to the consumer. What content to be shown at which location is the most important aspect of providing LBS services. It varies depending on the usage of the LBS service and that's why it needs constant enrichment process. Google Places is a good example of the Reference Content. In case of Enterprises, it could be custom to the organization e.g. list of customer locations in the sales territory.&nbsp;</p>]]>
    </content>
</entry>

<entry>
    <title>Share Text Content between two Windows 8 Metro Application</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/share_text_content_between_two.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5564</id>

    <published>2012-01-30T10:39:12Z</published>
    <updated>2012-02-03T09:51:13Z</updated>

    <summary>In Windows 8, content can be shared between two metro applications using Share Contract. Content can be of below types.

•Plain Text 
•URI
•HTML
•Formatted Text 
•Bitmaps
•Files
•Data from isolated storage
</summary>
    <author>
        <name>Dhananjay Kumar</name>
        
    </author>
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="metroui" label="Metro UI" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>In Windows 8, content can be shared between two metro applications using Share Contract. Content can be of below types.</p>
<ul>
<li>Plain Text </li>
<li>URI</li>
<li>HTML</li>
<li>Formatted Text </li>
<li>Bitmaps</li>
<li>Files</li>
<li>Data from isolated storage</li></ul>]]>
        <![CDATA[<p>In content sharing, the application that shares content is called as Source Application and the application that receives content is called as Target Application. </p>
<p><strong><u>Creating Source Application </u></strong></p>
<p>Prerequisite for sharing any content is identification of data types that will be shared by the source application. This is configured using the <strong>package.appmanifest </strong>file.In declaration tab choose <strong>Share target </strong>and check <strong>SupportedAnyFile</strong> Type in Supported File Types and <strong>Data Format</strong> as <strong>Text</strong>. See the image below.</p>
<p><img class="mt-image-none" alt="metrosearch1.png" src="http://www.infosysblogs.com/microsoft/images/metrosearch1.png" width="403" height="365" /></p>
<p>After configuring the declaration we need to write the code to share relevant text. Note that in the code below, we have explicitly displayed the Share charm (showShareUI). This is not necessary, but could be required based on application logic where you may want to automatically popup Share charm based on some action in the application. Otherwise the user can anyway slide in the system menu from right side and invoke Share charm from it.</p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">function</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> ShowandShareContract</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">()</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Windows</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ApplicationModel</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">DataTransfer</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">DataTransferManager</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">showShareUI</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">();</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">var</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> dataTransferManager </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> Windows</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ApplicationModel</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">DataTransfer</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">DataTransferManager</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">getForCurrentView</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">();</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>dataTransferManager</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">addEventListener</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"datarequested"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">,</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">function</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">)</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">var</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> request </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">request</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: green; FONT-SIZE: 9.5pt; mso-highlight: white">//shareDataEventHandler(request);</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>request</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">properties</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">title </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"Infosys"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>request</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">properties</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">description </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"Infosys Share App"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>request</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">setText</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"Hello from Infosys Source App"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">);</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">});</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="MARGIN: 0in 0in 10pt" class="MsoNormal"><span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span></span><span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">}</span><o:p></o:p></p>
<p>The actual data sharing happens in the datarequested event handler</p>
<p><strong><u>Creating Target Application </u></strong></p>
<p>Target application also needs to declare the types of data it can accept. This is again configured via <strong>package.appmanifest </strong>file. In Declaration tab we need to choose <strong>Share target </strong>and check <strong>SupportedAnyFile Type </strong>in Supported File Types and also add a Text Data format as in the image below.</p>
<p><img class="mt-image-none" alt="metroshare2.png" src="http://www.infosysblogs.com/microsoft/images/metroshare2.png" width="414" height="392" /></p>
<p>As an application can be launched in multiple ways, we need to first check whether the application was launched as Share Target or not before accepting any data.</p>
<p>We also need to check whether shared operation is containing text or not. The code would be something like below:</p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">WinJS</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">Application</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">onmainwindowactivated </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">function</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">)</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">if</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">detail</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">kind </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">===</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> Windows</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ApplicationModel</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">Activation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ActivationKind</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">launch</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">)</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: green; FONT-SIZE: 9.5pt; mso-highlight: white">// startup code here</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">}</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p>&nbsp;</o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">if</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">detail</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">kind </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">===</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> Windows</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ApplicationModel</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">Activation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ActivationKind</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">shareTarget</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">)</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>shareOperation </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> e</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">detail</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">shareOperation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">if</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">shareOperation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">contains</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">Windows</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">ApplicationModel</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">DataTransfer</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">StandardDataFormats</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">text</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">))</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">{</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: blue; FONT-SIZE: 9.5pt; mso-highlight: white">var</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> SharedText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">" Title :<span style="mso-spacerun: yes">&nbsp; </span>"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">+</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> shareOperation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">properties</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">title</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SharedText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> SharedText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">+</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"<span style="mso-spacerun: yes">&nbsp; </span>Description : "</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">+</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> shareOperation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">properties</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">description</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SharedText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> SharedText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">+</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">" Shared Text : "</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">+</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> shareOperation</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">data</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">getText</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">();</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>document</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">.</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">getElementById</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">(</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-highlight: white">"outputDiv"</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">).</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white">innerText </span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">=</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"> SharedText</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">;</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">}</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p>&nbsp;</o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: teal; FONT-SIZE: 9.5pt; mso-highlight: white">}</span><span style="FONT-FAMILY: Consolas; BACKGROUND: white; COLOR: black; FONT-SIZE: 9.5pt; mso-highlight: white"><o:p></o:p></span></p>
<p>&nbsp;</p>
<p>In this way text can be shared between source application and target application using shared contracts.</p>]]>
    </content>
</entry>

<entry>
    <title>Web Storage in HTML5</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/web_storage_in_html5.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5557</id>

    <published>2012-01-27T09:28:24Z</published>
    <updated>2012-01-27T09:54:48Z</updated>

    <summary>Web Storage allows writing information at client side. Using Web Storage data can be written at client side as key value pair. There is no supported query language of Web Storage. Web Storage size varies from 2 MB to 10 MB. Usual size is often 5 MB. Web Storage is different from cookies in term of capacity. Web Storage offers much more capacity than cookies. Unlikely cookies, Web Storage data are absolute client side data. Web Storage data does not go to server with each request hence improves performance of the site. 


</summary>
    <author>
        <name>Dhananjay Kumar</name>
        
    </author>
    
        <category term="General" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="html5" label="html5" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>Web Storage allows writing information at client side. Using Web Storage data can be written at client side as key value pair. There is no supported query language of Web Storage. Web Storage size varies from 2 MB to 10 MB. Usual size is often 5 MB. Web Storage is different from cookies in term of capacity. Web Storage offers much more capacity than cookies. Unlikely cookies, Web Storage data are absolute client side data. Web Storage data does not go to server with each request hence improves performance of the site. <br /></p>]]>
        <![CDATA[<p>Web Storage is of two types <br />1 Local&nbsp; : This store data for the site<br />2.Session: This store data for the session. </p>
<p>Local Web Storage stores data in client hard disk. However Session Web Storage stores data in HTTP Session. Session Web Storage data is temporary in nature and persisted only for a particular HTTP session. This data is deleted when user close the browser window. <br />Web Storage API are supported by below browsers</p>
<p>1.&nbsp;Chrome 4.0 +<br />2.&nbsp;Firefox 3.0 +<br />3.&nbsp;Opera&nbsp; 10.6+<br />4.&nbsp;Safari 4.0+<br />5.&nbsp;IE 8.0+</p>
<p>A browser supports Web Storage or not can be checked as below,&nbsp;</p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt">&lt;</span><span style="FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt">script</span><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"> </font><span style="COLOR: red">type</span><span style="COLOR: blue">="text/javascript"&gt;</span><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><o:p><font color="#000000">&nbsp;</font></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">function</span><font color="#000000"> supportsLocalStorage() {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><o:p><font color="#000000">&nbsp;</font></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">return</span><font color="#000000"> (</font><span style="COLOR: maroon">'localStorage'</span><font color="#000000"> </font><span style="COLOR: blue">in</span><font color="#000000"> window) &amp;&amp; window[</font><span style="COLOR: maroon">'localStorage'</span><font color="#000000">] !== </font><span style="COLOR: blue">null</span><font color="#000000">;<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><o:p><font color="#000000">&nbsp;</font></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><o:p><font color="#000000">&nbsp;</font></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">if</span><font color="#000000"> (supportsLocalStorage()) {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: darkgreen">// Web Storage invocation here</span><o:p></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><o:p><font color="#000000">&nbsp;</font></o:p></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">else</span><font color="#000000"> {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>alert(</font><span style="COLOR: maroon">'Sorry, your browser does not support Web Storage'</span><font color="#000000">);<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span><o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt">&lt;/</span><span style="FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt">script</span><span style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt">&gt;</span><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"> <o:p></o:p></font></span></p>
<p><br />A site can display number of visits using local storage as below, </p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt">function</span><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"> PageCount() {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">if</span><font color="#000000"> (localStorage.NumberOfPageHit) {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>localStorage.NumberOfPageHit = Number(localStorage.NumberOfPageHit) + 1;<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><span style="mso-spacerun: yes"><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></span><span style="COLOR: blue">else</span><font color="#000000"> {<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>localStorage.NumberOfPageHit = 1;<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>document.write(</font><span style="COLOR: maroon">"Number of Visited<span style="mso-spacerun: yes">&nbsp; </span>"</span><font color="#000000"> + localStorage.NumberOfPageHit + </font><span style="COLOR: maroon">" time(s)."</span><font color="#000000">);<o:p></o:p></font></span></p>
<p style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><font color="#000000"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>}<o:p></o:p></font></span></p>
<p style="MARGIN: 0in 0in 10pt" class="MsoNormal"><o:p><font color="#000000" size="3" face="Calibri">&nbsp;</font></o:p></p>
<p style="MARGIN: 0in 0in 10pt" class="MsoNormal">Web Storage and Cookies <br />1.Web Storage size is much more than cookies. Maximum size of cookies can be 4Kb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; whereas size of Web Storage can be up to 10 MB. <br />2.Web Storage data is pure client side data and unlike cached data does not travel to&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; and fro to the sever with each request. <br />3.Web Storage data need to be deleted programmatically. <br />4.Unlike cookies, if the Web Storage data needs to be sending to server, it should be&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sent programmatically. </p>
<p style="MARGIN: 0in 0in 10pt" class="MsoNormal">Different Web Storage API is as below, <br />1.Clear&nbsp; : removes all key/value pair <br />2.getItem&nbsp; : retrieve given item for a key <br />3.Key&nbsp;&nbsp; :&nbsp; retrieve given value of key<br />4.Length : returns total number of key value pair in storage <br />5.removeItem&nbsp; : remove an item for given key<br />6.setItem&nbsp; : stores key value pair <br />7.remainingSpace : remaining space in bytes. </p>
<p style="MARGIN: 0in 0in 10pt" class="MsoNormal">Web Storage can be very useful in creating web applications where decent amount of data need to be stored and processed at client side. Web Storage can be accessed only with Java Script so should be refrained in using with critical operations. <br /></p>]]>
    </content>
</entry>

<entry>
    <title>Understanding Metro Style Applications</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/understanding_metro_style_appl.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5540</id>

    <published>2012-01-25T06:32:55Z</published>
    <updated>2012-01-25T08:25:13Z</updated>

    <summary>Most of us are familiar with metro applications by now. Applications for Phone 7 and Windows 8 use the Metro design principles. Inspiration for metro design comes from public transport systems where the focus is on displaying important information with great clarity and readability. Let&apos;s try to understand what it means to develop metro applications in the context of Windows 8.</summary>
    <author>
        <name>Mani Tripathi</name>
        
    </author>
    
    <category term="metroui" label="Metro UI" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="Windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        Most of us are familiar with metro applications by now. Applications for Phone 7 and Windows 8 use the Metro design principles. Inspiration for metro design comes from public transport systems where the focus is on displaying important information with great clarity and readability. Let&apos;s try to understand what it means to develop metro applications in the context of Windows 8.
        <![CDATA[<p>First glance at most metro applications seems to create an impression that any application redesigned to have a tiled interface is a Metro application. However there is much more to it.&nbsp; Broadly there are 2 major differentiating factors for metro application on Windows 8. First is the user interface design and second is the technology stack supporting Metro application.</p>
<p>In this blog we will focus on what makes a metro user interface unique. Focus of metro applications is on the content and not chrome. Hence any controls that do not add value to the content\core data of the application should be moved to app bar or charms of the application. Focus of the app should be the data that it intends to show to the user. Metro design gives a lot of weightage to typography and usage of white space. Large size Segoe UI fonts are used to make the information stand out. Usage of white space ensures that the user interface does not look cluttered. Figure below shows how the screen space has been utilized for the News app. There is a balance of content and white space which gives the application a clean look. Font size and weight help in bringing the focus on content.<br />&nbsp;</p>
<p><img class="mt-image-none" alt="news-5218653.jpg" src="http://www.infosysblogs.com/microsoft/images/news-5218653.jpg" width="606" height="454" /><br /></p>
<p>Metro applications are Fast and Fluid. Smooth transitions and subtle animations provide Metro applications a fluid look. These applications are designed to be used with touch and gestures and should be responsive to the user inputs. Touch inputs are direct forms of input compared to mouse or keyboard inputs hence it is critical for applications to be responsive. Splash screens are a great way of making applications look responsive while they are loading. </p>
<p>Metro applications should be able to support various form factors. With a range of hardware available, metro applications should be designed keeping in mind various screen sizes - from tablet to HD screens. They should also be able to support snap or portrait view. Snap views allow users to open more than one application side by side and multitask.</p>
<p>Tiles are the main entry point for metro applications. Hence they should be designed in such a way that they are able to catch the attention of users and notify them of any significant updates. It is important to choose the right template for the tile. An application can additional tiles called secondary tiles which are deep links to the application. For example in the image below, the user can view weather of 2 cities - one on each tile. They don't need to launch the application to view latest update. Notifications from push notification services can be displayed on the tile providing instant updates to the users.</p>
<p><img class="mt-image-none" alt="sectile1.jpg" src="http://www.infosysblogs.com/microsoft/images/sectile1.jpg" width="865" height="563" /><br /></p>
<p>As we have seen there are many aspects that need to be considered for designing metro applications. Visual Studio 11, comes with various templates for developing metro style applications on Windows 8. These templates adhere to Metro style guidelines. The default fonts, controls, animations provided for both HTML and XAML applications adhere to Metro design guidelines. Expression Blend 5 is also a great tool for designing Metro applications. However currently it supports only HTML5 metro applications. These tools aid in quick development of metro style applications which provide immersive experience to the users. </p>
<p><br />&nbsp;</p>]]>
    </content>
</entry>

<entry>
    <title>What it means to develop Metro Applications for Windows 8	</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/what_it_means_to_develop_metro.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5539</id>

    <published>2012-01-25T05:37:53Z</published>
    <updated>2012-01-25T06:28:16Z</updated>

    <summary>I have been coming across a lot of confusion regarding development of Windows 8 Metro style application. Will try to clear out some of the confusion in the air.

What is Metro about it?

Metro Applications follow the design principles of Metro like content before chrome, focus on typography, fast and fluid, alive in motion etc. Focus of metro application is on the content that needs to be displayed .Hence all menus, taskbar and other unnecessary controls have moved to the app bar or charms . Charms can be considered to be a system level menu that is used to perform common applications like Search\Share etc. across Metro Applications. There is a lot of emphasis on fonts, scale and weight in the Metro design. Microsoft has come up with Seago UI font for developing Metro applications. Metro UI relies on usage of tiles that are alive with notifications and animations. New controls provided with XAML and WinJS are already designed according to the Metro design principles. Hence when you use Expression Blend\Visual Studio 2011 etc. and use the controls as per the technologies selected(XAML\HTML), your application gets a Metro look automatically.
</summary>
    <author>
        <name>Mani Tripathi</name>
        
    </author>
    
        <category term="Microsoft Design Technologies" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="metroui" label="Metro UI" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="Windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<span lang="">
<p>I have been coming across a lot of confusion regarding development of Windows 8 Metro style application. Will try to clear out some of the confusion in the air.</p>
<p><strong>What is Metro about it?</strong></p>
<p>Metro Applications follow the design principles of Metro like <b>content before chrome</b>, <b>focus on typography, fast and fluid, alive in motion </b>etc. Focus of metro application is on the content that needs to be displayed .Hence all menus, taskbar and other unnecessary controls have moved to the app bar or charms . Charms can be considered to be a system level menu that is used to perform common applications like Search\Share etc. across Metro Applications. There is a lot of emphasis on fonts, scale and weight in the Metro design. Microsoft has come up with Seago UI font for developing Metro applications. Metro UI relies on usage of tiles that are alive with notifications and animations. New controls provided with XAML and WinJS are already designed according to the Metro design principles. Hence when you use Expression Blend\Visual Studio 2011 etc. and use the controls as per the technologies selected(XAML\HTML), your application gets a Metro look automatically.</p></span>]]>
        <![CDATA[<span lang="">
<p><strong>Can my HTML5 JavaScript application work on Windows 8?</strong></p>
<p>Windows 8 Metro applications are locally deployed applications. Hence these applications do not access any web server.&nbsp;The architecture for Windows 8 has changed and there is an additional WinRT layer that sits between the Windows Core OS services and the Metro style apps. Unlike conventional apps, metro apps are not targeted to win32\IE or .Net\Silverlight. Rather they talk to WinRT APIs. Hence an existing browser based HTML5 application will not run as is on a Windows 8 machine.</p>
<p><strong>Where is Metro App rendered?</strong></p>
<p>Metro Apps are rendered using IE10 rendering engine. However, the Addressbar and other '<i>chrome'</i> are not visible to the users. Although they are rendered on a web platform, they are different from web applications as they interact with WinRT APIs</p>
<p><strong>What are the technology choices available to create Metro Applications on Windows 8?</strong></p>
<p>Currently, Metro Applications can be built using either XAML or HTML5. With XAML, we have choice of C++\C# and VB as the development language and with HTML5 we need to use javascript - <b>WinJS</b>. WinJS is a collection of Javascript files. WinJS offers controls (with Metro Look) and API's for various tasks like calling a web service etc. WinJS and C#\VB\C++ interact with WinRT APIs.</p>
<p><strong>Why don't I have a close button for my Metro Apps?</strong></p>
<p>The lifecycle of Metro apps is managed by the system. Users may want to return to a recently opened application and for users who are on the go, the delay of opening up the application from scratch might be unacceptable. Hence the application goes to the suspended state from where they can be resumed instantaneously. The applications also run the risk of being terminated when the system is under memory pressure and hence it is a good practice to keep saving state intermittently. For more details, you can refer </span><a href="http://www.infosysblogs.com/microsoft/2012/01/understanding_lifecycle_of_win.html"><u><font color="#0000ff" size="3"><font color="#0000ff" size="3"><span lang="">http://www.infosysblogs.com/microsoft/2012/01/understanding_lifecycle_of_win.html</u></font></font></span></a><font size="3"><span lang="">.</span></font></p>
<p><font size="3"><span lang=""><strong>Can I develop non metro applications for Windows8?</strong></p>
<p>Windows8 can run in metro and desktop mode. In the desktop mode, the environment is similar to the conventional Windows 7 environment(though there are some enhancements). Hence all existing apps continue to run in the desktop mode.You can have run WPF and Silverlight based applications in this mode. In Metro mode only metro applications can run.</p></font></span>]]>
    </content>
</entry>

<entry>
    <title>Windows 8 convertible laptops: Who will get it right?</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/windows_8_convertible_laptops.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5536</id>

    <published>2012-01-24T06:28:24Z</published>
    <updated>2012-01-24T08:02:12Z</updated>

    <summary>Further to the Windows 8 blogs by my colleagues Atul and Mani, I would like to look at a rather different subject - the interesting shift Windows 8 is bringing in personal computing devices. With the new Metro-style interface, Windows 8 is uniquely poised to cater to both touch devices like tablets and devices with keyboard input like desktops and laptops. In fact, we are today witnessing an upheaval of laptop design to accommodate a tablet mode, which is bound to become an indispensible feature of Windows 8 laptops. Consumers are now demanding the best of both worlds - a laptop that can be dually used as a tablet (also called convertible laptops/tablets or as some people call it - &quot;laplets&quot;). There have been a few designs of this type earlier, but Windows 8 seems to have set this market alight.</summary>
    <author>
        <name>Vikas Dewangan</name>
        
    </author>
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="windows8" label="Windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[Further to the Windows 8 blogs by my colleagues <a href="http://www.infosysblogs.com/microsoft/2011/12/windows_8_shutdown.html">Atul</a> and <a href="http://www.infosysblogs.com/microsoft/2012/01/understanding_lifecycle_of_win.html">Mani</a>, I would like to look at a rather different subject - the interesting shift Windows 8 is bringing in personal computing devices. With the new Metro-style interface, Windows 8 is uniquely poised to cater to both touch devices like tablets and devices with keyboard input like desktops and laptops. In fact, we are today witnessing an upheaval of laptop design to accommodate a tablet mode, which is bound to become an indispensible feature of Windows 8 laptops. Consumers are now demanding the best of both worlds - a laptop that can be dually used as a tablet (also called convertible laptops/tablets or as some people call it - "laplets"). There have been a few designs of this type earlier, but Windows 8 seems to have set this market alight.<br /> ]]>
        <![CDATA[<br />Of late, we see the market abuzz with a host of competing designs, 
each one parading their benefits and stylish looks. One design, which 
got a lot of press at CES 2012 is the Lenovo Ideapad Yoga, an aptly 
named device as the touch-screen of the laptop flips 360 degrees<sup><span style="font-size:12.0pt;line-height:115%;
font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;mso-ascii-theme-font:minor-latin;mso-fareast-font-family:
&quot;Times New Roman&quot;;mso-hansi-theme-font:minor-latin;mso-bidi-theme-font:minor-latin;
color:#676767;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:
AR-SA"></span></sup> all the way back to become a tablet. This device will be exclusively released with Windows 8 later this year (<a href="http://news.lenovo.com/article_display.cfm?article_id=1551">http://news.lenovo.com/article_display.cfm?article_id=1551</a>, <a href="http://www.gizmag.com/lenovo-ideapad-yoga-13/21073/">http://www.gizmag.com/lenovo-ideapad-yoga-13/21073/</a>).
 Another model showcased at CES 2012 is the Toshiba Protege M930 - when 
in laptop mode the screen can be lifted up from its base and pulled 
forward to cover the keyboard. This device appears to be awaiting 
Windows 8 for its commercial launch as the demoed version having Windows
 7 isn't available on retail. (<a href="http://www.gizmag.com/lenovo-ideapad-yoga-13/21073/">http://www.theverge.com/2012/1/13/2705350/toshiba-portege-m930-a-windows-7-tablet-with-a-keyboard-and-rotating</a>).
 One other contender, the ASUS Eee Pad Transformer is essentially a 
tablet with a detachable docking keyboard.&nbsp; An Android version is 
already available, with a Windows 8 model to be launched later this year
 - which is a very positive indication of the market outlook for Windows
 8 going ahead (<a href="http://www.pcworld.com/article/230202/asus_may_put_windows_8_in_next_eee_pad_transformer_tablet.html">http://www.pcworld.com/article/230202/asus_may_put_windows_8_in_next_eee_pad_transformer_tablet.html</a>).
 Dell Inspiron Duo has been around for some while now and features a 
flip-hinge design where the screen can be flipped 180 degrees on its 
horizontal axis so that when closed, it covers the keyboard with the 
screen facing upwards to work in tablet mode (<a href="http://www.dell.com/content/topics/topic.aspx/global/products/landing/en/inspiron?c=us&amp;l=en">http://www.dell.com/content/topics/topic.aspx/global/products/landing/en/inspiron?c=us&amp;l=en</a>).
 It is currently available with Windows 7, but users who have installed 
the developer preview of Windows 8 report a much improved user 
experience. Windows 8 is surely going to shake up the market.<br /><br />With
 all these designs around, some are bound to gain popularity, while 
others will fade away. We saw a parallel in the evolution of mobile 
phone design; the once very popular flip mobile phones are now giving 
way to elegant slide-out keyboard designs. In the market for convertible
 laptops, style, substance (specifications and features) and robustness 
will play an important part. It is to be seen in the war of the laplets,
 which designs will prevail in the long run.<br /><br />]]>
    </content>
</entry>

<entry>
    <title>HPC Steroids for Big Data</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/hpc_steroids_for_big_data.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5529</id>

    <published>2012-01-20T05:17:51Z</published>
    <updated>2012-01-20T05:29:02Z</updated>

    <summary>Cloud and HPC together helps to resolve significant number of challenges around Big Data processing. However one needs to consider several aspects while weaving a Big Data solution around them.</summary>
    <author>
        <name>Sudhanshu Hate</name>
        
    </author>
    
        <category term="Big Data" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="apachehadoopandmicrosoft" label="Apache Hadoop and Microsoft" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="bigdata" label="Big Data" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="bigdataprocessing" label="Big Data Processing" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="bigdataprocessingusingcloud" label="Big Data processing using Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cloud" label="Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cloudcomputing" label="Cloud Computing" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hpc" label="HPC" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hpcsteroidsforbigdata" label="HPC steroids for Big Data" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="infosyslabs" label="Infosys Labs" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="microsoftbigdatastack" label="Microsoft Big Data stack" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sudhanshuhate" label="Sudhanshu Hate" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[Cloud and HPC together helps to resolve significant number of challenges around Big Data processing. However one needs to consider several aspects while weaving a Big Data solution around them. As part of "<strong>Data Insight and Social BI</strong>" executive update for CXOs, <a href="http://www.cutter.com/content/bia/fulltext/updates/2012/biau1201.html">here</a>&nbsp;is a whitepaper published with Cutter and can be downloaded <strong>by Cutter users only</strong>.<br />However for the <strong>readers&nbsp;of this forum</strong>, I have explicitly requested access and Cutter has been kind enough to provide a&nbsp;<a href="http://www.cutter.com/promotions/hpcsteriod.html">URL</a> <strong>for our reader's access</strong>.]]>
        
    </content>
</entry>

<entry>
    <title>Windows 8 Blogs</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/windows_8_blogs.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5496</id>

    <published>2012-01-10T07:05:41Z</published>
    <updated>2012-01-10T07:09:27Z</updated>

    <summary>Blogs on Windows 8</summary>
    <author>
        <name>Atul Gupta</name>
        
    </author>
    
        <category term="Microsoft Products &amp; Technologies" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>We have been working on Windows 8 for few months now and understanding the new programming paradigm for Metro apps along with understanding of HTML5, WinJS, WinRT, XAML Apps etc. </p>
<p>We will be sharing our learning here. Keep checking back for updates. For starters, my colleague, Mani, has written her first blog <a href="http://www.infosysblogs.com/microsoft/2012/01/understanding_lifecycle_of_win.html">here</a>. </p>]]>
        
    </content>
</entry>

<entry>
    <title>Enterprise Cloud Adoption Strategic Roadmap</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/enterprise_cloud_adoption_stra.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5484</id>

    <published>2012-01-09T13:35:15Z</published>
    <updated>2012-01-09T06:29:02Z</updated>

    <summary>Adoption of Cloud in an enterprise is more of a strategic decision than an operational or tactical. Cloud adoption needs to be seen more from enterprise architecture strategy perspective rather than an isolated application architecture specific strategy for the simple reason that it has several short terms and long term implications on enterprise strategy which may be beyond the specific application&apos;s business or technology footprint.</summary>
    <author>
        <name>Sudhanshu Hate</name>
        
    </author>
    
        <category term="Cloud Computing" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="adoptionwindowsazure" label="Adoption Windows Azure" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cloudadoptionstrategy" label="Cloud Adoption Strategy" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cloudroadmap" label="Cloud Roadmap" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="considerationsforcloudadoption" label="Considerations for Cloud adoption" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="infosys" label="Infosys" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sudhanshuhate" label="Sudhanshu Hate" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>Adoption of Cloud in an enterprise is more of a strategic decision than an operational or tactical. Cloud adoption needs to be seen more from enterprise architecture strategy perspective rather than an isolated application architecture specific strategy for the simple reason that it has several short and long term implications on enterprise strategy which may be beyond the specific application's business or technology footprint.</p>]]>
        <![CDATA[<p>So far many enterprises have experimented and played around with Cloud, done successful pilots and learnt their lessons but when it comes to cloud adoption as an enterprise strategy, they are still in a Go, No Go kind of state. The reasons could be several from where to start, what to move first, what are the risks, etc.</p>
<p>The following figure depicts how an enterprise can approach adoption of cloud, which areas can be addressed first and where adoption can happen slightly delayed.</p>
<p>&nbsp;<br /><img class="mt-image-none" alt="CloudAdoptionStrategicRoadmap.png" src="http://www.infosysblogs.com/microsoft/images/CloudAdoptionStrategicRoadmap.png" width="905" height="587" /></p>
<p align="center"><strong><em>Source: Infosys Research</em></strong></p>
<p>To broadly look at this, the above figure depicts various segments as segment 0 to segment 5, each specifying what the segment indicates,</p>
<p><strong>Segment 0 "Support Services"<br /></strong>In this, early adopting enterprise can look at leveraging cloud to capture low hanging fruits such as hosting applications as is on cloud, migrating applications which are easy to migrate(less complex and easy to fit in cloud architecture), or could be for tasks&nbsp;as simple as just for storing data backups.</p>
<p><strong>Segment 1 "On-Premise to Off Premise Integration"</strong><br />Leverage cloud for having part of your application on cloud for example only database or for building integration kind of scenarios such as partner integration. These scenarios need establishing data/application connectivity between on-premise and off-premise components.</p>
<p><strong>Segment 2 "Offload to Cloud"</strong><br />This is an offshoot of Segment 1, in this approach you offload compute or data intensive operations of an application on the cloud as against the complete application.<br />e.g. NY Times converted more than 130 years' worth of articles (11 million articles in TIFF format) into PDFs using Hadoop and Amazon EC2 thus improving compliance and saving substantial costs in a very short time.<br />e.g. Harvard's Laboratory is using Cloud to simulate various genome analysis testing models to expedite their experiments in research laboratory.</p>
<p><strong>Segment 3 "Multi Channel Scenarios (Smart Phone, Kiosk, Web, etc.)"</strong><br />Building multi-channel applications that are available across various form factors such as Desktops, Web, Kiosk, smartphone, etc. and provide value added services such as rich reporting, dashboards, context exchange, etc.<br />e.g. Nike+ Cloud based multi-channel applications to improve customer engagement by providing value added services.<br />Apple iCloud based apps. is another example.</p>
<p><strong>Segment 4 "Social, Elasticity on demand Apps"</strong><br />Building applications for which the user base is not pre-determined or profiles identified. Architecting such applications needs significant different approach than traditional ones to take care of counter spikes in usage like product launch or social apps, providing federated authentication, etc.<br />e.g. Nike+ is using Cloud based multi-channel applications to improve customer engagement by providing value added services.</p>
<p><strong>Segment 5 "Specialized Services"</strong><br />When enterprise wants to provide a specific functionality as an end&nbsp;service to its users or customers such as HPC, mobility or Analytics as a Service where users can upload their datasets and run these services falls under this segment. This is different from what is mentioned in Segment 2 in the sense that these services are abstracted at the same time specialized to highest extent and meant for providing ".....as a Service" as against running only a specific component in cloud.</p>
<p>As depicted, the architecture complexity and associated risk gradually increases from segment 0 to segment 5 and hence it is recommended that enterprise should take a phased, step by step approach while weaving cloud in an enterprise architecture strategy.<br />While the above segments are for guidance, depending on enterprise risk appetite, process and technology maturity, an enterprise can also directly start from segment 2 or 3 as deem fit.<br /></p>]]>
    </content>
</entry>

<entry>
    <title>Understanding lifecycle of Windows 8 apps</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/understanding_lifecycle_of_win.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5493</id>

    <published>2012-01-09T10:10:38Z</published>
    <updated>2012-01-09T10:33:53Z</updated>

    <summary>Understanding lifecycle of Windows 8 apps</summary>
    <author>
        <name>Mani Tripathi</name>
        
    </author>
    
        <category term="Microsoft Design Technologies" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Windows 8" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="applicationlifecycle" label="Application Lifecycle" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="windows8" label="windows 8" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>One major differentiating factor for Metro applications on Windows 8 is that the application lifetime would be managed by the OS. To the end user, this would mean that they would be unable to close applications using a close button. This has also been discussed <a href="http://www.infosysblogs.com/microsoft/2011/12/windows_8_shutdown.html">here </a>.</p>
<p>Let us now understand how the OS handles the application lifetime and what are the implying considerations for Windows 8 development. An application can be in one of the 3 states - <strong>Running</strong>, <strong>Suspended</strong> and <strong>Terminated</strong>. When an application is brought in the foreground, it becomes a running application. If second application is launched, the first one moves to the suspended state after a short delay. Again, if a third application is launched, both first and second applications move to the suspended state. This repeats until the system becomes low on memory. When the system becomes low on memory, the applications consuming maximum memory is terminated. Applications can also get terminated due to system shutdown, application crash or if the user terminates it from the task manager.</p>]]>
        <![CDATA[<p>More than one application can be in the running state if they are snapped.&nbsp; The system resources are available to running or foreground application. When the application moves to Suspended state, it gets notified through suspend and restore events. The application gets 5 seconds to act on the notification and save its state. Once an application is suspended, it does not get access to CPU, network, hard disk and other system resources. However, the application still remains in memory.&nbsp;&nbsp; It gets resumed instantaneously from the suspended state. Thus the suspended state enables instant switching between applications. When the application is resumed from the suspended state, the application maintains its state automatically.&nbsp; However, by handling the restore event, tasks such as refreshing the screens with the latest data etc. can be carried out.</p>
<p><img class="mt-image-none" alt="windows8 taskmanagerscreenshot.png" src="http://www.infosysblogs.com/microsoft/images/windows8%20taskmanagerscreenshot.png" width="644" height="413" /></p>
<p><br />As seen in the screenshot above,the task manager of a windows 8 machine shows more than one application in the suspended state. While the application still consumes memory in the suspended state, the CPU utilization is 0%. </p>
<p>Unlike the suspended state, the applications do not get any notifications on being terminated.&nbsp; Therefore, applications do not get a chance to save their state before being terminated. Even on being suspended apps get only 5 seconds to save their states. Hence it is a recommended that applications should keep saving the data incrementally when the application is running. When an application is restarted after being terminated, it should be a seamless experience for the user. Hence application state when it was last launched should be persisted on the suspended event. It should be read on the activation event and the application should be launched accordingly.</p>
<p><br />As seen above the lifecycle of Windows apps is different from traditional and desktop windows applications. It provides users the ability to instantly switch between applications and gives them a better user experience. This does look promising for users with tablets and mobile devices. But might be overkill for the desktop users!<br /></p>]]>
    </content>
</entry>

<entry>
    <title>Considerations for Big Data processing using Cloud Computing</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2012/01/considerations_for_big_data_pr_2.html" />
    <id>tag:www.infosysblogs.com,2012:/microsoft//26.5483</id>

    <published>2012-01-06T09:15:40Z</published>
    <updated>2012-01-06T09:25:17Z</updated>

    <summary>The data (structured and un-structured) influencing enterprise decisions is increasing exponentially every year. This data includes not only internal generated data within the enterprise but also external influencers such as social media, government regulations, external public data sets, etc.

The storage and compute capacity within the enterprise is usually limited and cannot scale or grow at the same rate as the data because of various reasons such as lead times to procure infrastructure, increased hardware and software costs to process data, etc. Many a times, this imbalance causes opportunity loss for enterprise for not being able to process the data in the necessary window.

Cloud Computing helps to resolve this in a very subtle manner as it provides a turnkey solution for on-demand network, compute and storage which essentially are the critical building blocks of any big data processing solution.
</summary>
    <author>
        <name>Sudhanshu Hate</name>
        
    </author>
    
        <category term="Big Data" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="biusingcloudcomputing" label="BI using Cloud Computing" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="bigdataandcloud" label="Big Data and Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="communitycloud" label="Community Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="considerationsformovingbigdatatocloud" label="considerations for moving Big Data to Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="microsoftbigdata" label="Microsoft Big Data" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="privatecloud" label="Private Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="publiccloud" label="Public Cloud" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sudhanshuhate" label="Sudhanshu Hate" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[<p>The data (structured and un-structured) influencing enterprise decisions is increasing exponentially every year. This data includes not only internal generated data within the enterprise but also external influencers such as social media, government regulations, external public data sets, etc.</p>
<p>The storage and compute capacity within the enterprise is usually limited and cannot scale or grow at the same rate as the data because of various reasons such as lead times to procure infrastructure, increased hardware and software costs to process data, etc. Many a times, this imbalance causes opportunity loss for enterprise for not being able to process the data in the necessary window.</p>
<p>Cloud Computing helps to resolve this in a very subtle manner as it provides a turnkey solution for on-demand network, compute and storage which essentially are the critical building blocks of any big data processing solution.</p>]]>
        <![CDATA[<p>Dealing with large volume of data and reducing the latency of data processing are an important dimension in Big Data and architecting a solution on Cloud helps provide that OoB. <br />However, there are certain considerations that enterprises needs to make before considering Cloud (Public Cloud) as part of their Big Data solution, some of these are:</p>
<p><strong>Regulations</strong> - Certain government regulations do not allow storing the local national data outside of the country geography. European Union doesn't allow storing data outside of their geography [1].HIPAA doesn't allow patient records to be stored outside of the patient residing geography [2].<br />However, such restrictions can be addressed by choosing the Cloud data center in the specific geography for storing such region sensitive information. Almost all the leading cloud vendors have data centers spanning across the world and provides the option of choosing the data center.</p>
<p><strong>Data Security and Privacy</strong> -Not all Cloud providers provides transparency with the way they manage data privacy of their data centers. Though there are certain established international standard data center certification agencies, not all the vendor data centers are certified.&nbsp; Appropriate compliance of the data center to these certifications should be verified based on the business needs. Microsoft has published a few papers to discuss the security framework and various certifications they comply for their data centers and are mentioned in END NOTES [3].</p>
<p><strong>Cost Considerations</strong> - The storage cost of data on-premise could be significantly different than the storage cost of data off-premise based on the vendor and technical solution selected. Enterprise should carefully evaluate their storage strategies while architecting Big Data solution on cloud. E.g. Microsoft's SQL Azure (relational storage) is to the tune of 100 times costlier than Microsoft's Windows Azure Table storage cost (NoSQL type Table storage) and hence straight forward migration of on-premise SQL Server relational database to off-premise SQL Azure database can have very high operational/running cost over time.</p>
<p><strong>Data Migration Considerations</strong> - Most of the enterprise data sources or LoB apps are built using relational data storage. Migrating it to Cloud on non-relational data storage solution can pose technical challenges in terms mapping the relational data elements to flat structure Table storage. E.g. Migrating a SQL Server relational Database to Windows Azure Table storage can be challenging and technically complex task especially when the data stored in Windows Azure Table Storage is in the form of key values as against relations in SQL Server. This type of data migration can break the data integrity, consistency and introduce redundancy.</p>
<p><strong>Data Movement to Cloud</strong> - Data movement to cloud is one of the major obstacles for processing data on the cloud. Most of the times, the enterprise data warehouse to the tune of GB and TBs of data are difficult to ship to cloud unless a very high network bandwidth solutions are used to transport data to the cloud.</p>
<p><strong>Technology readiness/maturity</strong> -As Cloud Computing is still evolving and still there are lots of technology vendors who have not made their products Cloud ready although they could be leaders in on-premise technology solutions. In such cases, not all the time, there is a corresponding Cloud technology solution to the existing on-premise technology solution and at times it can become the major limitation for choosing Big Data processing solution.&nbsp; E.g. Microsoft's SQL Server Analysis Services, Integration Services are BI technologies for on-premise but aren't supported on Windows Azure (Cloud). </p>
<p>To address some of the above mentioned challenges, some intermediate solutions can be considered such as,</p>
<p><strong>Leveraging public cloud for non-regulation sensitive data </strong>- In this strategy, only non-regulation specific business data is moved to public cloud for processing. The processed results are then combined with any regulation sensitive data on-premise to deliver combined results.</p>
<p><strong>Participating through Community Cloud</strong> -Enterprises having similar concerns or business objectives can form an association to poll resources amongst participants. This is a recommended approach when there is a high degree of inter-op and data sharing is required amongst the participating organizations and at the same time the data needs to be secured or sandboxed for their respective private usage only. <br />E.g. NYSE created a community cloud for financial traders [4] to deal with use cases such as rapid provisioning of hedge fund Compute-on-Demand for agency brokers, Processing large volume of market data for regulatory reports for investment bank, temporary requirement of large farm for compute farm to test and validate strategy for low-latency hedge funds, and testing custom developed applications in large farm for all size financial service firms.</p>
<p><strong>Creating Private Cloud</strong> - Create an enterprise private cloud by leveraging existing infrastructure or procure private cloud infrastructure from 3rd party like hosting Microsoft's Windows Azure Appliance, etc. This is suggested when the enterprise cannot afford to put any of its data beyond the enterprise boundary and wants strict control on its data.</p>
<p><strong>Creating Hybrid Cloud</strong> - Extend the private cloud to leverage additional compute, storage from Public Cloud to deal with excess demand during peak periods. This helps achieve best of both the worlds but also has the complexity of management, adherence to SLAs, etc.</p>
<p><strong>END NOTES<br /></strong>[1] Basic Principles of European Union Consent and Data Protection, Posted on July 25, 2011 by Christina Hultsch <a href="http://www.technologylawsource.com/2011/07/articles/privacy-1/basic-principles-of-european-union-consent-and-data-protection/index.html#axzz1TD0LUlgu">http://www.technologylawsource.com/2011/07/articles/privacy-1/basic-principles-of-european-union-consent-and-data-protection/index.html#axzz1TD0LUlgu</a><br />[2] Definition, HIPAA (Health Insurance Portability and Accountability Act) <a href="http://searchdatamanagement.techtarget.com/definition/HIPAA">http://searchdatamanagement.techtarget.com/definition/HIPAA</a><br />[3] Resources discussing compliance to Security and privacy for Microsoft Data Centers and Microsoft Window's Azure <a href="http://www.globalfoundationservices.com/security/">http://www.globalfoundationservices.com/security/</a><br />[4] NYSE Technologies Introduces the World's First Capital Markets Community Platform, June 1, 2011 <a href="http://www.nyse.com/press/1306838249812.html">http://www.nyse.com/press/1306838249812.html</a> <br /><a href="http://ir.nyse.com/phoenix.zhtml?p=irol-eventDetails&amp;c=129145&amp;eventID=4098814">http://ir.nyse.com/phoenix.zhtml?p=irol-eventDetails&amp;c=129145&amp;eventID=4098814</a></p>]]>
    </content>
</entry>

<entry>
    <title>Isotope &quot;Hadoop on Windows and Windows Azure&quot; first look!!!</title>
    <link rel="alternate" type="text/html" href="http://www.infosysblogs.com/microsoft/2011/12/isotope_hadoop_on_windows_and.html" />
    <id>tag:www.infosysblogs.com,2011:/microsoft//26.5455</id>

    <published>2011-12-30T06:15:37Z</published>
    <updated>2012-01-02T05:27:51Z</updated>

    <summary>Continuing from my earlier blog here, Microsoft discontinued developments on LINQ to HPC and was working towards weaving open source Apache Hadoop in its Big Data Strategy. 
Earlier this month (Dec 2011), Microsoft has made the announcement for community release of its &quot;Hadoop on Windows Server and Windows Azure&quot; offering. It is codenamed &quot;Isotope&quot; and will be available in two flavors,
• Hadoop runtime on Windows Azure (cloud) - CTP for this will be available in March 2012
• Hadoop runtime on Windows Server (on-premise) - CTP for this will be available in June of CY 12
Check these announcements here,</summary>
    <author>
        <name>Sudhanshu Hate</name>
        
    </author>
    
        <category term="Big Data" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="apachehadooponmicrosoft" label="Apache Hadoop on Microsoft" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="bigdatausingmicrosofttechnologies" label="Big Data using Microsoft technologies" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="datamining" label="Data Mining" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hadooponwindowsazure" label="Hadoop on Windows Azure" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hadooponwindowsserver" label="Hadoop on Windows Server" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hdfs" label="HDFS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="hive" label="Hive" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="pig" label="Pig" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sudhanshuhate" label="Sudhanshu Hate" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.infosysblogs.com/microsoft/">
        <![CDATA[Continuing from my earlier blog <a href="http://www.infosysblogs.com/microsoft/2011/11/linq_to_hpc_dropped_from_ms_bi.html">here</a>, Microsoft discontinued developments on LINQ to HPC and was working towards weaving open source Apache Hadoop in its Big Data Strategy. <br />Earlier this month (Dec 2011), Microsoft has made the announcement for community release (CTP)&nbsp;of its "Hadoop on Windows Azure" offering. It is codenamed "Isotope" and will be available in two flavors,<br />•&nbsp;Hadoop runtime on Windows Azure (cloud) - CTP for this is&nbsp;available and general release&nbsp;in March 2012.<br />•&nbsp;Hadoop runtime on Windows Server (on-premise) - CTP for this is expected&nbsp;in first quarter of 2012&nbsp;and general release in&nbsp;June&nbsp;2012.Check these announcements <a href="http://blogs.technet.com/b/dataplatforminsider/archive/2011/12/14/availability-of-community-technology-preview-ctp-of-hadoop-based-service-on-windows-azure.aspx">here</a>,]]>
        <![CDATA[<p>From the early understanding, Isotope is integrating best of breed Open Source technologies to deliver Big Data offering, the early view into technology stack of Isotope looks like as follows, </p>
<p>&nbsp;</p>
<p><img class="mt-image-none" alt="MSIsotope.jpg" src="http://www.infosysblogs.com/microsoft/images/MSIsotope.jpg" width="475" height="489" /></p>
<p><strong><u>Data Integration Layer</u></strong><br />•&nbsp;Sqoop - Adapter to extract data from Relational databases.<br />•&nbsp;Flume - Log extraction adapter from various Log sources such as web, etc.<br /><strong><u></u></strong></p>
<p><strong><u>Storage Layer<br /></u></strong>•&nbsp;Hadoop Distributed File System (HDFS): A distributed file system that provides high-throughput access to application data.</p>
<p><strong><u>Computing Layer </u></strong><br />•&nbsp;Processing based on MapReduce principle.</p>
<p><br /><strong><u>Advanced Query Engine<br /></u></strong>•&nbsp;Hive: ANSI SQL like language that provides data summarization and ad hoc querying. <br />•&nbsp;Pig: A high-level data-flow language and execution framework for parallel computation.<br /></p>
<p><strong><u>Data Mining</u></strong> <br />•&nbsp;Mahout- scalable machine learning, supports classification, collaborative filtering, and many more algorithms.<br />•&nbsp;Pegasus- is a Petascale Graph mining engine, fully written in Java. Supports graph mining algorithms such as page ranks, social network analysis engine.<br /></p>
<p><strong><u>Search<br /></u></strong>•&nbsp;Lucene - Provides services for Full Text search, Indexing technology.<br /></p>
<p><strong><u>ODBC Drivers</u></strong><br />•&nbsp;Hive add-in from excel helps connect and query data from HDFS<br />•&nbsp;Provides ODBC driver for Hive to connect and query data from HDFS and render it in tools such as PowerPivot, PowerViewer tools.<br /></p>
<p><strong><u>Presentation Layer<br /></u></strong>•&nbsp;MapReduce Jobs written using JavaScript libraries can be executed directly from Web browser. JavaScript is supported as a first class citizen for MapReduce programming.<br />•&nbsp;PowerPivot, PowerViewer, MS Excel, Browser as data presentation layer</p>
<p>Accessing Hadoop on Windows Azure offers Metro UI with Live Tile.</p>
<p>Finally, year 2011 was a year where Big Data announced itself in a big way, lot of open source successes continue to influence the equations of game.<br />In 2012, it will be exciting to see how some of these start unfolding from enterprise adoption perspective.<br />With this, signing off from this year's blogging. <br />Wishing all a very happy, healthy and prosperous 2012!!!&nbsp;</p>]]>
    </content>
</entry>

</feed>

