<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rob Tiffany &#187; Microsoft</title>
	<atom:link href="http://robtiffany.com/tag/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://robtiffany.com</link>
	<description>Author, Mobility Strategist at Microsoft, Speaker, Advisor, Technology Executive, Former Navy Submariner</description>
	<lastBuildDate>Wed, 16 May 2012 01:19:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Books and Taxes</title>
		<link>http://robtiffany.com/books-and-taxes/</link>
		<comments>http://robtiffany.com/books-and-taxes/#comments</comments>
		<pubDate>Sat, 04 Feb 2012 22:55:29 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Writing]]></category>
		<category><![CDATA[Apress]]></category>
		<category><![CDATA[Books]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[Hood Canal Press]]></category>
		<category><![CDATA[Merge Replication]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[SQL CE]]></category>
		<category><![CDATA[SQL Compact]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL Server Compact]]></category>
		<category><![CDATA[SQLCE]]></category>
		<category><![CDATA[Sync]]></category>
		<category><![CDATA[VB]]></category>
		<category><![CDATA[Windows Mobile]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=1376</guid>
		<description><![CDATA[Wow!  Just opened a 1099 tax document for 2011 from Apress.  People must still be buying my old books on eMbedded Visual Basic, the .NET Compact Framework 2.0, and SQL Server Compact 2.0.  The Pocket PC and Windows Mobile live &#8230; <a href="http://robtiffany.com/books-and-taxes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Wow!  Just opened a 1099 tax document for 2011 from Apress.  People must still be buying my old books on eMbedded Visual Basic, the .NET Compact Framework 2.0, and SQL Server Compact 2.0.  The Pocket PC and Windows Mobile live on!</p>
<p>A separate 1099 for Hood Canal Press tells me that my SQL Server Merge Replication books are still killing it!  Our world of disconnected devices require efficient data sync now more than ever.  Despite a variety of sync technologies out there, Merge is still the best!</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/books-and-taxes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prediction: 2012 Will be the Year of Windows Phone</title>
		<link>http://robtiffany.com/prediction-2012-will-be-the-year-of-windows-phone/</link>
		<comments>http://robtiffany.com/prediction-2012-will-be-the-year-of-windows-phone/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 01:01:26 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Windows phone]]></category>
		<category><![CDATA[CES]]></category>
		<category><![CDATA[HTC]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Metro]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows Phone 7.5]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=1246</guid>
		<description><![CDATA[Windows Phone 7.5 is running fast out of the gate for 2012.  The stunning mobile operating system from Microsoft was the talk of CES in Las Vegas this year.  The accolades streaming in from the world&#8217;s most influential newspapers, magazines, &#8230; <a href="http://robtiffany.com/prediction-2012-will-be-the-year-of-windows-phone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Windows Phone 7.5 is running fast out of the gate for 2012.  The stunning mobile operating system from Microsoft was the talk of CES in Las Vegas this year.  The accolades streaming in from the world&#8217;s most influential newspapers, magazines, reviewers, and tech bloggers are unprecedented.</p>
<p>The Nokia Lumia 900 won the Best of CES award in the Smartphone category and it&#8217;s no surprise.  Before listing off the impressive specs, just look at this gorgeous piece of hardware.  Looks matter&#8230;trust me.  Windows Phone is already the most elegant mobile operating system.  Breathtaking industrial design is the other half of the equation.  When paired with iconic hardware, it&#8217;s like pairing your favorite Walla Walla Cabernet with your favorite steak.</p>
<p><a href="http://robtiffany.com/windows-phone/prediction-2012-will-be-the-year-of-windows-phone/attachment/nokia-lumia-900-in-black-2" rel="attachment wp-att-1271"><img class="aligncenter size-full wp-image-1271" title="Nokia Lumia 900" src="http://robtiffany.com/wp-content/uploads/2012/01/Nokia-Lumia-900-in-Black1.jpg" alt="Nokia Lumia 900" width="427" height="328" /></a></p>
<p>I can&#8217;t count the number of reviews and comments stating that Windows Phone on the Lumia 900 has surpassed the iPhone.  If you follow the U.S. wireless market, then you know that things like 4G LTE network speeds, large screens, front-facing cameras, and dual-core processors are the current drivers of smartphone sales.  The Lumia 900 addresses three of those drivers with support for AT&amp;T&#8217;s 4G LTE network, a 4.3-inch AMOLED ClearBlack display, and a front-facing camera for video calls.  It&#8217;s powered by a single 1.4 GHz processor and if you&#8217;ve paid attention to all the reviews in the press, you&#8217;ve heard that Windows Phone runs circles around its dual-core competitors.  Better software design, better engineering, more efficient algorithms, and optimized coding techniques means you can do more with less.  Last but not least, the Lumia 900 comes with an amazing 8MP camera with Carl Zeiss optics.</p>
<p>The HTC Titan II came to the CES party guns-blazing with a monster of a smartphone.  It tics all the required boxes needed for sales by delivering a massive 4.7 inch screen, support for AT&amp;T&#8217;s 4G LTE network, and a front-facing camera.  The 1.5Ghz Snapdragon 2 processor gives this superphone all the horsepower it needs.</p>
<p><a href="http://robtiffany.com/windows-phone/prediction-2012-will-be-the-year-of-windows-phone/attachment/titan2-01-2" rel="attachment wp-att-1272"><img class="aligncenter size-full wp-image-1272" title="HTC Titan II" src="http://robtiffany.com/wp-content/uploads/2012/01/titan2-011.jpg" alt="HTC Titan II" width="344" height="854" /></a></p>
<p>Joining the camera arms-race with the Lumia 900, the Titan II comes equipped with a whopping 16 megapixel camera that can capture 720p video.  If you&#8217;re looking for a giant phone that can go head-to-head with the Galaxy Nexus, this is your device.</p>
<p>2012 is already shaping up to be a great year with compelling hardware matched-up with Windows Phone 7.5, but what else does this platform need to make my prediction come true?  Oh yeah, apps.  Do you remember back in the 80&#8242;s when DOS-based PCs from IBM and Compaq gave Apple IIs and Macs more than they could handle?  It might not have been eye-catching, but DOS had more apps that allowed consumers and companies to be successful.  In the 90&#8242;s, Windows ran away with the computing market with the Mac, Linux, NeXT, and OS/2 unable to compete in the app department.  Why do you think this was the case?  I know a big reason was because Borland and Microsoft made better and easier-to-use development tools for Windows.</p>
<p>With 50,000+ apps in the Marketplace, Windows Phone is surging forward and now sits in third-place behind the iPhone App Store and the Android Market.  Aside from developers betting on the success of a platform, they need development tools, emulators, and programming languages that make it easy for them to be productive.  When I look at the velocity at which new apps are being added to the Windows Phone Marketplace, it tells me that Visual Studio is making a big difference.</p>
<p><a href="http://robtiffany.com/windows-phone/prediction-2012-will-be-the-year-of-windows-phone/attachment/vsphoneexpress-2" rel="attachment wp-att-1266"><img class="aligncenter size-full wp-image-1266" title="Visual Studio" src="http://robtiffany.com/wp-content/uploads/2012/01/VSPhoneExpress.jpg" alt="Visual Studio" width="448" height="252" /></a></p>
<p>In my job, I have to work with the development tools for all the major smartphone platforms and I can tell you without drinking any Kool-Aid that the competition isn&#8217;t even close.  Most iPhone developers I know find that learning Objective-C from the NeXT operating system to be a daunting task compared to modern, high-level languages like C# and VB.  While the world is full of Java developers, the complexity of cobbling the necessary tools together needed to build for Android apps is a real productivity killer.  Just running Eclipse on JDK 1.6 sucks the life and performance out of my fast Windows 7 laptop.  Microsoft Visual Studio 2010 Express for Windows Phone is free and the emulator + SDKs all download and install together making the whole process fast and simple.  Apps get access to all phone sensors, a local database (SQL Server Compact), and Metro design.</p>
<p>Better productivity means faster time-to-market which means more apps for Windows Phone.</p>
<p>If you&#8217;re a web designer/developer, Internet Explorer 9 is alive and well on Windows Phone 7.5.  This means you&#8217;re no longer held hostage to the highly-fragmented WebKit mobile browser platform.  You get a hardware-accelerated, amazingly fast browser with support for more &#8220;fully-baked&#8221; HTML5 standards like Web Storage, Geolocation, Canvas, Audio and Video.</p>
<p><a href="http://robtiffany.com/windows-phone/prediction-2012-will-be-the-year-of-windows-phone/attachment/html5_logo_512-2" rel="attachment wp-att-1277"><img class="aligncenter size-medium wp-image-1277" title="HTML5" src="http://robtiffany.com/wp-content/uploads/2012/01/HTML5_Logo_512-300x300.png" alt="HTML5" width="300" height="300" /></a></p>
<p>The lightning fast-Chakra JavaScript engine supports ECMAScript 5 which means your DOM interactions and Ajax web service calls will blur the lines with native apps.  When you retrieve data from the cloud or your on-premise servers via Ajax, you&#8217;ll now be able to persist it offline in Web Storage.  Support for CSS3 means things will be beautiful, 2D transforms will occur, and media queries will give you responsive design.</p>
<p>So here we stand with the best smartphone operating system, best hardware, best development tools and the best mobile web browser.  I&#8217;m certain that Windows Phone with its army of app developers, OEMs and Mobile Operator partners will be marching to victory this year.</p>
<p>Be fearless,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/prediction-2012-will-be-the-year-of-windows-phone/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: Android &gt; Cloud</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-cloud/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-cloud/#comments</comments>
		<pubDate>Thu, 03 Nov 2011 05:25:12 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[ACS]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[AppFabric]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Claims]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[CoIT]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Consumerization of IT]]></category>
		<category><![CDATA[CRM]]></category>
		<category><![CDATA[Dalvik]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[ERP]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[Honeycomb]]></category>
		<category><![CDATA[Ice Cream Sandwich]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[On-Premises]]></category>
		<category><![CDATA[Private Cloud]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL Azure Data Sync]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-android-cloud</guid>
		<description><![CDATA[In my ‘Consumerization of IT Collides with MEAP’ article last week, I described how to connect Android smartphones and tablets to Microsoft’s On-Premise infrastructure. In this week’s scenario, I’ll use the picture below to illustrate how Android utilizes many of &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-android-cloud/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my ‘<a href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-android-on-premises" target="_blank">Consumerization of IT Collides with MEAP’ article last week</a>, I described how to connect Android smartphones and tablets to Microsoft’s On-Premise infrastructure. In this week’s scenario, I’ll use the picture below to illustrate how Android utilizes many of Gartner’s Mobile Enterprise Application Platform Critical Capabilities to connect to Microsoft’s Cloud services in Azure:</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/11/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://robtiffany.com/wp-content/uploads/2011/11/image_thumb.png" width="596" height="317" /></a></p>
<p>As you can see from the picture above: </p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, there is no Cloud-based device management solution, policy-enforcement, or software distribution solution from Microsoft for Android. As I mentioned in last week’s post, consumer software distribution comes from the Android Market and the enterprise equivalent is facilitated via internal web servers and user-clickable URLs. Since Android is a wide-open system, competing markets and app stores are on the rise from Amazon and others. </li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, Android uses Visual Studio. Endpoint development consists of HTML5, ECMAScript 5, and CSS3 delivered by ASP.NET via Web Roles. WCF REST + JSON Web services can also be created and consumed via Ajax calls from the browser. On the Cloud side of things, the Windows Azure SDK plugs into Visual Studio and provides Android developers with everything they need to build Cloud applications. It includes a Cloud emulator to simulate all aspects of Windows Azure and AppFabric on their development computer. In scenarios where native development is required by the customers, the <a href="https://github.com/microsoft-dpe/wa-toolkit-android" target="_blank">Windows Azure Toolkit for Android</a> can be used to allow Java via Eclipse to securely communicate with the Microsoft cloud. </li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, Android uses the WebKit browser called Chrome to provide HTML5 + CSS3 + ECMAScript5 capabilities. Offline storage is important to keep potentially disconnected Android smartphones and tablets working and this is facilitated by Web Storage which is accessible via JavaScript. </li>
<li>For the<strong> Security Critical Capability</strong>, Android 3.0 and higher provides hardware encryption based on the user’s device passcode for data-at-rest. Data-in-transit is secured via SSL and VPN. LDAP API support allows it to access corporate directory services. Auth in the Microsoft cloud is handled via the Windows Azure AppFabric Access Control Service (ACS). </li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, Android can reach out to servers directly via Web Services or indirectly through the Cloud via the Windows Azure AppFabric Service Bus to connect to other enterprise packages. </li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol is handled automatically by Windows Azure. Cross-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls. Distributed caching to dramatically boost the performance of any client is provided by Windows Azure AppFabric Caching. </li>
<li>As you might imagine, the <strong>Hosting Critical Capability</strong> is handled by Windows Azure. Beyond providing the most complete solution of any Cloud provider, Windows Azure Connect provides an IPSec-protected connection with your On-Premises network and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure. This gives you the Hybrid Cloud solution you might be looking for. </li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, Android runs cross-platform mobile apps including <a href="https://market.android.com/details?id=com.skype.raider&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5za3lwZS5yYWlkZXIiXQ..">Skype</a>, <a href="https://market.android.com/details?id=com.microsoft.bing&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5taWNyb3NvZnQuYmluZyJd">Bing</a>, <a href="https://market.android.com/details?id=msn.android#?t=W251bGwsMSwxLDIxMiwibXNuLmFuZHJvaWQiXQ..">MSN</a>, <a href="https://market.android.com/details?id=com.microsoft.tag.app.reader&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5taWNyb3NvZnQudGFnLmFwcC5yZWFkZXIiXQ..">Tag</a>, <a href="https://market.android.com/details?id=com.hotmail.Z7&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5ob3RtYWlsLlo3Il0.">Hotmail</a>, and of course the critical ActiveSync component that makes push emails, contacts, calendars, and device management policies possible.</li>
</ol>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/11/Samsung-Galaxy-Nexus-UK.jpg"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="Samsung-Galaxy-Nexus-UK" border="0" alt="Samsung-Galaxy-Nexus-UK" src="http://robtiffany.com/wp-content/uploads/2011/11/Samsung-Galaxy-Nexus-UK_thumb.jpg" width="124" height="236" /></a></p>
<p>While Android 3.0 and higher meets many of Gartner’s Critical Capabilities, it doesn’t fare very well when it comes to cloud-based device management.&#160; While other mobile device platforms also come up short in this department, I’m sure this will change in the coming year.&#160; The tidal wave of CoIT means that device management in the future will look very different from how it did 5 years ago.&#160; Expect a clear separation between corporate apps/data and personal apps/data to be managed.</p>
<p>Best Regards, </p>
<p>Rob </p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Current State and Trends of the Mobile Internet</title>
		<link>http://robtiffany.com/the-current-state-and-trends-of-the-mobile-internet/</link>
		<comments>http://robtiffany.com/the-current-state-and-trends-of-the-mobile-internet/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 17:53:22 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[Smartphone]]></category>
		<category><![CDATA[Social]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[Windows phone]]></category>
		<category><![CDATA[Wireless]]></category>
		<category><![CDATA[Youtube]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=1153</guid>
		<description><![CDATA[Since 90% of the world's population has mobile network coverage, lets take a look at how they’re using it, where they're using it, and what we should expect from the future... <a href="http://robtiffany.com/the-current-state-and-trends-of-the-mobile-internet/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since 90% of the world&#8217;s population has mobile network coverage, lets take a look at how they’re using it, where they&#8217;re using it, and what we should expect from the future&#8230;</p>
<p><a href="http://www.webhostingbuzz.com/blog/2011/10/19/mobile-internet-trends/" _mce_href="http://www.webhostingbuzz.com/blog/2011/10/19/mobile-internet-trends/"><img src="http://www.webhostingbuzz.com/blog/wp-content/uploads/2011/10/IG_Browse_640.jpg" _mce_src="http://www.webhostingbuzz.com/blog/wp-content/uploads/2011/10/IG_Browse_640.jpg" border="0" alt="The State and Trends of Mobile Internet" /></a></p>
<p>Interesting stuff!<br />
-Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/the-current-state-and-trends-of-the-mobile-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: Android &gt; On-Premises</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-on-premises/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-on-premises/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 05:50:26 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[CoIT]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Consumerization of IT]]></category>
		<category><![CDATA[CRM]]></category>
		<category><![CDATA[Dalvik]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[ERP]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[Honeycomb]]></category>
		<category><![CDATA[Ice Cream Sandwich]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[On-Premises]]></category>
		<category><![CDATA[Private Cloud]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-android-on-premises</guid>
		<description><![CDATA[In my last ‘Consumerization of IT Collides with MEAP’ article, I described how to connect iPhones and iPads to Microsoft’s Cloud servers in Azure. In this week’s scenario, I’ll use the picture below to illustrate how Android devices can utilize &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-android-on-premises/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my last <a href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-iphone-ipad-cloud" target="_blank">‘Consumerization of IT Collides with MEAP’ article</a>, I described how to connect iPhones and iPads to Microsoft’s Cloud servers in Azure. In this week’s scenario, I’ll use the picture below to illustrate how Android devices can utilize many of Gartner’s Critical Capabilities to connect to Microsoft’s On-Premise infrastructure:</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/10/image2.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://robtiffany.com/wp-content/uploads/2011/10/image_thumb2.png" alt="image" width="596" height="317" border="0" /></a></p>
<p>As you can see from the picture above:</p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, Android uses Microsoft Exchange for On-Premise policy enforcement via Exchange ActiveSync (EAS) but has no private software distribution equivalent to System Center Configuration Manager 2007 from Microsoft today. Instead, in-house apps are hosted and APKs distributed via a web server over wireless by having a user click on a URL or through a variety of app stores. In the future, System Center Configuration Manager 2012 will be able to better manage Android devices.</li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, Android uses Visual Studio. While the Server/EAI development functionality is the same as every other platform, endpoint development will consist of HTML5, ECMAScript 5, and CSS3 delivered by ASP.NET. WCF REST + JSON Web services can also be created and consumed via Ajax calls from the browser.</li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, we will rely on Android’s WebKit browser to provide HTML5 + CSS3 + ECMAScript5 capabilities. Offline storage is important to keep potentially disconnected Android working and this is facilitated by Web Storage which is accessible via JavaScript.</li>
<li>For the<strong> Security Critical Capability</strong>, Android 3.0 and higher provides hardware encryption based on the user’s device passcode for data-at-rest. Data-in-transit is secured via SSL and VPN. LDAP API support allows it to access corporate directory services.</li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, Android can reach out to servers directly via Web Services or indirectly via SQL Server (JDBC) or BizTalk using SSIS/Adapters to connect to other enterprise packages.</li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol directly, via Reverse Proxy, or VPN is facilitated by ISA/TMG/UAG/IIS. Cross-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls. Distributed caching to dramatically boost the performance of any client is provided by Windows Server AppFabric Caching.</li>
<li>While the <strong>Hosting Critical Capability</strong> may not be as relevant in an on-premises scenario, Windows Azure Connect provides an IPSec-protected connection to the Cloud and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure.</li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, Android runs cross-platform mobile apps including <a title="Skype for Android" href="https://market.android.com/details?id=com.skype.raider&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5za3lwZS5yYWlkZXIiXQ.." target="_blank">Skype</a>, <a title="Bing" href="https://market.android.com/details?id=com.microsoft.bing&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5taWNyb3NvZnQuYmluZyJd" target="_blank">Bing</a>, <a title="MSN" href="https://market.android.com/details?id=msn.android#?t=W251bGwsMSwxLDIxMiwibXNuLmFuZHJvaWQiXQ.." target="_blank">MSN</a>, <a title="Tag" href="https://market.android.com/details?id=com.microsoft.tag.app.reader&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5taWNyb3NvZnQudGFnLmFwcC5yZWFkZXIiXQ.." target="_blank">Tag</a>, <a title="Hotmail" href="https://market.android.com/details?id=com.hotmail.Z7&amp;feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5ob3RtYWlsLlo3Il0." target="_blank">Hotmail</a>, and of course the critical ActiveSync component that makes push emails, contacts, calendars, and device management policies possible.</li>
</ol>
<p><a href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-android-on-premises/attachment/samsung-galaxy-nexus-uk" rel="attachment wp-att-1142"><img class="aligncenter size-medium wp-image-1142" title="Samsung-Galaxy-Nexus" src="http://robtiffany.com/wp-content/uploads/2011/10/Samsung-Galaxy-Nexus-UK-155x300.jpg" alt="" width="155" height="300" /></a></p>
<p>Newer versions of Android (3.x/4.0) are beginning to meet more of Gartner’s Critical Capabilities. It’s really improved in the last year in areas of encryption, but device fragmentation makes this improvement uneven.  The app story is still the ‘Wild West’ since the Android Market is an un-vetted free-for-all. This big ‘red flag’ has given rise to curated app stores like the one from Amazon.  As you can see from the picture, the big gap is with the client application runtime critical capability. Native development via Java/Eclipse is where Google wants to steer you and Microsoft doesn’t make native tools, runtimes or languages for this platform. You can definitely perform your own due diligence on <a title="Mono for Android" href="http://android.xamarin.com/" target="_blank">Mono for Android </a>from our friend Miguel de Icaza and his colleagues in order to reuse your existing .NET and C# skills. From a Microsoft perspective though, you’re definitely looking at HTML5 delivered via ASP.NET.</p>
<p>Next week, I’ll cover how Android connects to the Cloud.</p>
<p>Best Regards,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-android-on-premises/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: iPhone + iPad &gt; Cloud</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-cloud/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-cloud/#comments</comments>
		<pubDate>Mon, 17 Oct 2011 20:32:24 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[ACS]]></category>
		<category><![CDATA[AppFabric]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Emulator]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[OData]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL Azure Data Sync]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-iphone-ipad-cloud</guid>
		<description><![CDATA[In my ‘Consumerization of IT Collides with MEAP’ article last week, I described how to connect iPhones and iPads to Microsoft’s On-Premise infrastructure. In this week’s scenario, I’ll use the picture below to illustrate how iOS utilizes many of Gartner’s &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-cloud/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my ‘<a href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises" target="_blank">Consumerization of IT Collides with MEAP’ article last week</a>, I described how to connect iPhones and iPads to Microsoft’s On-Premise infrastructure. In this week’s scenario, I’ll use the picture below to illustrate how iOS utilizes many of Gartner’s Mobile Enterprise Application Platform Critical Capabilities to connect to Microsoft’s Cloud services in Azure:</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/10/image1.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://robtiffany.com/wp-content/uploads/2011/10/image_thumb1.png" alt="image" width="596" height="317" border="0" /></a></p>
<p>As you can see from the picture above:</p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, there is no Cloud-based device management solution, policy-enforcement, or software distribution solution from Microsoft for iOS.  As I mentioned in last week’s post, consumer software distribution comes from the App Store and the enterprise equivalent is facilitated via internal web servers and user-clickable URLs.</li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, iOS uses Visual Studio.  Endpoint development consists of HTML5, ECMAScript 5, and CSS3 delivered by ASP.NET via Web Roles.  WCF REST + JSON Web services can also be created and consumed via Ajax calls from the browser.  On the Cloud side of things, the Windows Azure SDK plugs into Visual Studio and provides iOS developers with everything they need to build Cloud applications. It includes a Cloud emulator to simulate all aspects of Windows Azure and AppFabric on their development computer. In scenarios where native development is required by the customers, the <a href="https://github.com/microsoft-dpe/wa-toolkit-ios" target="_blank">Windows Azure Toolkit for iOS</a> can be used to allow XCode/Objective-C to securely communicate with the Microsoft cloud.</li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, iOS uses the WebKit browser called Safari to provide HTML5 + CSS3 + ECMAScript5 capabilities. Offline storage is important to keep potentially disconnected iPhones and iPads working and this is facilitated by Web Storage which is accessible via JavaScript.</li>
<li>For the<strong> Security Critical Capability</strong>, iOS provides AES 256 hardware encryption as well as Data Protection based on the user’s device passcode for data-at-rest. Data-in-transit is secured via SSL, VPN, and 802.1X.  Auth in the Microsoft cloud is handled via the Windows Azure AppFabric Access Control Service (ACS).</li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, iOS can reach out to servers directly via Web Services or indirectly through the Cloud via the Windows Azure AppFabric Service Bus to connect to other enterprise packages.</li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol is handled automatically by Windows Azure. Cross-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls. Distributed caching to dramatically boost the performance of any client is provided by Windows Azure AppFabric Caching.</li>
<li>As you might imagine, the <strong>Hosting Critical Capability</strong> is handled by Windows Azure. Beyond providing the most complete solution of any Cloud provider, Windows Azure Connect provides an IPSec-protected connection with your On-Premises network and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure. This gives you the Hybrid Cloud solution you might be looking for.</li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, iOS runs cross-platform mobile apps including OneNote, Bing, Tag, and of course the critical ActiveSync component that makes push emails, contacts, calendars, and device management policies possible.</li>
</ol>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/ipad" rel="attachment wp-att-1046"><img class="aligncenter size-full wp-image-1046" title="iPad" src="http://robtiffany.com/wp-content/uploads/2011/09/iPad.png" alt="" width="113" height="144" /></a></p>
<p>While iOS meets many of Gartner’s Critical Capabilities, it doesn’t fare very well when it comes to cloud-based device management.  That being said, this is not a strong area for many mobile endpoints at this stage of the game.</p>
<p>Next week, I’ll cover how Android connects to an On-Premises Microsoft infrastructure.</p>
<p>Best Regards,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-cloud/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: iPhone + iPad &gt; On-Premises</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises/#comments</comments>
		<pubDate>Mon, 10 Oct 2011 21:27:23 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CoIT]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Consumerization of IT]]></category>
		<category><![CDATA[CRM]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[ERP]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[On-Premises]]></category>
		<category><![CDATA[Private Cloud]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises</guid>
		<description><![CDATA[In my last ‘Consumerization of IT Collides with MEAP’ article, I described how to connect a Windows Phone device to Microsoft’s Cloud servers in Azure.  By now you’re probably thinking, “It’s easy to talk about Microsoft endpoints talking to Microsoft &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my last <a href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-phone-cloud" target="_blank">‘Consumerization of IT Collides with MEAP’ article</a>, I described how to connect a Windows Phone device to Microsoft’s Cloud servers in Azure.  By now you’re probably thinking, “It’s easy to talk about Microsoft endpoints talking to Microsoft servers.” So in this week’s scenario, I’ll use the picture below to illustrate how iOS devices like the iPhone and iPad can utilize many of Gartner’s Critical Capabilities to connect to Microsoft’s On-Premise infrastructure:</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/10/image.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://robtiffany.com/wp-content/uploads/2011/10/image_thumb.png" alt="image" width="596" height="317" border="0" /></a></p>
<p>As you can see from the picture above:</p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, iOS uses Microsoft Exchange for On-Premise policy enforcement via Exchange ActiveSync (EAS) but has no private software distribution equivalent to System Center Configuration Manager 2007 from Microsoft today. Instead, in-house apps are hosted and distributed via a web server over wireless by having a user click on a URL.  In the future, System Center Configuration Manager 2012 will be able to better manage iOS devices.</li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, iOS uses Visual Studio. While the Server/EAI development functionality is the same as every other platform, endpoint development will consist of HTML5, ECMAScript 5, and CSS3 delivered by ASP.NET.  WCF REST + JSON Web services can also be created and consumed via Ajax calls from the browser.</li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, we will rely on iOS’s WebKit browser called Safari to provide HTML5 + CSS3 + ECMAScript5 capabilities. Offline storage is important to keep potentially disconnected iPhones and iPads working and this is facilitated by Web Storage which is accessible via JavaScript.</li>
<li>For the<strong> Security Critical Capability</strong>, iOS provides AES 256 hardware encryption as well as Data Protection based on the user’s device passcode for data-at-rest. Data-in-transit is secured via SSL, VPN, and 802.1X.  Built-in LDAP support allows it to access corporate directory services.</li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, iOS can reach out to servers directly via Web Services or indirectly via SQL Server or BizTalk using SSIS/Adapters to connect to other enterprise packages.</li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol directly, via Reverse Proxy, or VPN is facilitated by ISA/TMG/UAG/IIS. Crosss-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls. Distributed caching to dramatically boost the performance of any client is provided by Windows Server AppFabric Caching.</li>
<li>While the <strong>Hosting Critical Capability</strong> may not be as relevant in an on-premises scenario, Windows Azure Connect provides an IPSec-protected connection to the Cloud and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure.</li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, iOS runs cross-platform mobile apps including OneNote, Bing, Tag, and of course the critical ActiveSync component that makes push emails, contacts, calendars, and device management policies possible.</li>
</ol>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/ipad" rel="attachment wp-att-1046"><img class="aligncenter size-full wp-image-1046" title="iPad" src="http://robtiffany.com/wp-content/uploads/2011/09/iPad.png" alt="" width="113" height="144" /></a></p>
<p>As you can see, iOS meets many of Gartner’s Critical Capabilities.  It’s really improved over the years in areas of security and device management.  As you can see from the picture, the big gap is with the client application runtime critical capability.  Native development via Xcode/Objective-C is where Apple wants to steer you and Microsoft doesn’t make native tools, runtimes or languages for this platform.  You can certainly kick the tires and perform your own due diligence on <a title="MonoTouch" href="http://xamarin.com/monotouch" target="_blank">MonoTouch </a>from our friend Miguel de Icaza and his colleagues in order to reuse your existing .NET and C# skills.  From a Microsoft perspective though, you’re definitely looking at HTML5 delivered via ASP.NET.</p>
<p>Next week, I’ll cover how iOS connects to the Cloud.</p>
<p>Best Regards,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-iphone-ipad-on-premises/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Windows Azure at Seattle Interactive Conference</title>
		<link>http://robtiffany.com/windows-azure-at-seattle-interactive-conference/</link>
		<comments>http://robtiffany.com/windows-azure-at-seattle-interactive-conference/#comments</comments>
		<pubDate>Thu, 15 Sep 2011 19:40:26 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Mango]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Phone 7]]></category>

		<guid isPermaLink="false">http://robtiffany.com/azure/windows-azure-at-seattle-interactive-conference</guid>
		<description><![CDATA[Join the Windows Azure team at Seattle Interactive Conference (Nov 2 -3, 2011) for two days of technical content and one-on-one advice and assistance from product experts.&#160; Cloud Experience track is for experienced developers and who want to learn how &#8230; <a href="http://robtiffany.com/windows-azure-at-seattle-interactive-conference/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Join the Windows Azure team at <a href="http://www.seattleinteractive.com/">Seattle Interactive Conference</a> (Nov 2 -3, 2011) for two days of technical content and one-on-one advice and assistance from product experts.&#160; Cloud Experience track is for experienced developers and who want to learn how to leverage the cloud for mobile, social and web app scenarios.&#160; No matter what platform or technology you choose to develop for, these sessions will provide you with a deeper understanding of cloud architecture, back end services and business models so you can scale for user demand and grow your business.&#160; </p>
<p>Learn more about the <a href="http://www.seattleinteractive.com/conference/cloud-experience">Cloud Experience Track at SIC</a>, and view the <a href="http://www.seattleinteractive.com/conference/speakers/cld">speaker list</a>.&#160; Registration for the <a href="http://www.seattleinteractive.com/">Seattle Interactive Conference</a> is $350, and includes full access to conference sessions and activities.</p>
<p>SIC is developing a world-class speaker roster comprised of online technology’s most successful and respected personalities, alongside earlier-stage entrepreneurs who are establishing themselves as the leaders of tomorrow. SIC isn’t just about telling a story, it’s about truly sharing a story in ways that provide all attendees with a thought provoking experience and actionable lessons from the front lines.</p>
<h4>Our confirmed speakers include:</h4>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/Wade-Wegner-150x150.jpg" width="150" height="150" /></p>
<h6>Wade Wegner</h6>
<p>Microsoft</p>
<p>Wade Wegner is a Technical Evangelist at Microsoft, responsible for influencing and driving Microsoft’s technical strategy for the Windows Azure Platform. </p>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/rob-sydney-150x150.jpg" width="150" height="150" /></p>
<h6>Rob Tiffany</h6>
<p>Microsoft</p>
<p>Rob Tiffany is an Architect at Microsoft focused on combining wireless data technologies, device hardware, mobile software, and optimized server and cloud infrastructures together to form compelling solutions.</p>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/steve-marx-150x150.jpg" width="150" height="150" /></p>
<h6>Steve Marx</h6>
<p>Microsoft</p>
<p>Steve Marx is a Technical Product Manager for Windows Azure. </p>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/nick-harris-150x150.jpg" width="150" height="150" /></p>
<h6>Nick Harris</h6>
<p>Microsoft</p>
<p>Nick Harris is a Technical Evangelist at Microsoft specializing in Windows Azure.</p>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/scott-densmore-150x150.png" width="150" height="150" /></p>
<h6>Scott Densmore</h6>
<p>Microsoft</p>
<p>Scott Densmore works as a Senior Software Engineer at Microsoft.</p>
<p>&#160;</p>
<p><img src="http://www.seattleinteractive.com/images/sized/sic/nathan-totten-150x150.jpg" width="150" height="150" /></p>
<h6>Nathan Totten</h6>
<p>Microsoft</p>
<p>Nathan Totten is a Technical Evangelist at Microsoft specializing in Windows Azure and web development.</p>
<p>&#160;</p>
<p>I hope to see everyone there!</p>
<p>-Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/windows-azure-at-seattle-interactive-conference/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sync Framework v4 is now Open Source, and ready to Connect any Device to SQL Server and SQL Azure</title>
		<link>http://robtiffany.com/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/</link>
		<comments>http://robtiffany.com/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 20:54:27 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Sync Framework]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[MEAP]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL Server Compact]]></category>
		<category><![CDATA[Sync]]></category>
		<category><![CDATA[Synchronize]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Windows Phone 7]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=1014</guid>
		<description><![CDATA[The profound effects of the Consumerization of IT (CoIT) is blurring the lines between consumers and the enterprise.  The fact that virtually every type of mobile device is now a candidate to make employees productive means that cross-platform, enabling technologies are &#8230; <a href="http://robtiffany.com/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The profound effects of the Consumerization of IT (CoIT) is blurring the lines between consumers and the enterprise.  The fact that virtually every type of mobile device is now a candidate to make employees productive means that cross-platform, enabling technologies are a must.  Luckily, Microsoft has brought the power to synchronize data with either SQL Server on-premise or SQL Azure in the cloud to the world of mobility.  If you&#8217;ve ever synched the music on your iPhone with iTunes, the calendar on your Android device with Gmail, or the Outlook email on your Windows Phone with Exchange, then you understand the importance of sync.  In my experience architecting and building enterprise mobile apps for the world&#8217;s largest organizations over the last decade, data sync has always been a critical ingredient.</p>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/sql-azure_rgb_2" rel="attachment wp-att-1027"><img class="alignright size-medium wp-image-1027" title="SQL Azure" src="http://robtiffany.com/wp-content/uploads/2011/09/SQL-Azure_rgb_2-300x92.png" alt="" width="300" height="92" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/microsoft-sql-server-2008" rel="attachment wp-att-1026"><img class="aligncenter size-medium wp-image-1026" title="SQL Server" src="http://robtiffany.com/wp-content/uploads/2011/09/microsoft-sql-server-2008-300x246.jpg" alt="" width="300" height="246" /></a></p>
<p>The new <strong><a title="Sync Framework Toolkit" href="http://code.msdn.microsoft.com/Sync-Framework-Toolkit-4dc10f0e" target="_blank">Sync Framework Toolkit</a></strong> found on MSDN builds on the existing Sync Framework 2.1&#8242;s ability to create disconnected applications, making it easier to expose data for synchronization to apps running on any client platform.  Where Sync Framework 2.1 required clients to be based on Windows, this free toolkit allows other Microsoft platforms to be used for offline clients such as Silverlight, Windows Phone 7, Windows Mobile, Windows Embedded Handheld, and new Windows Slates.   Additionally, non-Microsoft platforms such as iPhones, iPads, Android phones and tablets, Blackberries and browsers supporting HTML5 are all first-class sync citizens.  The secret is that we no longer require the installation of the Sync Framework runtime on client devices.  When coupled with use of an open protocol like <a title="OData" href="http://www.odata.org/" target="_blank">OData </a>for data transport, no platform or programming language is prevented from synchronizing data with our on-premise and cloud databases.  When the data arrives on your device, you can serialize it as JSON, or insert it into SQL Server Compact or SQLite depending on your platform preferences.</p>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/sync" rel="attachment wp-att-1032"><img class="aligncenter size-full wp-image-1032" title="sync" src="http://robtiffany.com/wp-content/uploads/2011/09/sync.png" alt="" width="256" height="256" /></a>The Sync Framework Toolkit provides all the features enabled by the<a href="http://blogs.msdn.com/b/sync/archive/2010/11/16/sync-framework-4-0-october-2010-ctp-refreshed-on-11-16.aspx">Sync Framework 4.0 October 2010 CTP</a>.  We are releasing the toolkit as source code samples on MSDN with the source code utilizing Sync Framework 2.1.  Source code provides the flexibility to customize or extend the capabilities we have provided to suit your specific requirements. The client-side source code in the package is released under the <a href="http://www.apache.org/licenses/LICENSE-2.0.html">Apache 2.0 license</a> and the server-side source code under the <a href="http://mef.codeplex.com/license">MS-LPL license</a>.  The Sync Framework 2.1 is fully supported by Microsoft and the mobile-enabling source code is yours to use, build upon, and support for the apps you create.</p>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/windowsslate" rel="attachment wp-att-1051"><img class="alignleft size-full wp-image-1051" title="WindowsSlate" src="http://robtiffany.com/wp-content/uploads/2011/09/WindowsSlate.png" alt="" width="182" height="115" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/windowsphone" rel="attachment wp-att-1050"><img class="alignleft size-full wp-image-1050" title="WindowsPhone" src="http://robtiffany.com/wp-content/uploads/2011/09/WindowsPhone.png" alt="" width="152" height="153" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/mc55a0_lg_us-en-2" rel="attachment wp-att-1048"><img class="alignleft size-thumbnail wp-image-1048" title="MC55A0_LG_US-EN" src="http://robtiffany.com/wp-content/uploads/2011/09/MC55A0_LG_US-EN1-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/html5_logo_512" rel="attachment wp-att-1045"><img class="alignleft size-thumbnail wp-image-1045" title="HTML5_Logo_512" src="http://robtiffany.com/wp-content/uploads/2011/09/HTML5_Logo_512-150x150.png" alt="" width="150" height="150" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/mac" rel="attachment wp-att-1047"><img class="alignleft size-full wp-image-1047" title="Mac" src="http://robtiffany.com/wp-content/uploads/2011/09/Mac.png" alt="" width="184" height="106" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/blackberry" rel="attachment wp-att-1044"><img class="alignleft size-full wp-image-1044" title="Blackberry" src="http://robtiffany.com/wp-content/uploads/2011/09/Blackberry.png" alt="" width="173" height="173" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/ipad" rel="attachment wp-att-1046"><img class="alignleft size-full wp-image-1046" title="iPad" src="http://robtiffany.com/wp-content/uploads/2011/09/iPad.png" alt="" width="113" height="144" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/android" rel="attachment wp-att-1043"><img class="alignleft size-full wp-image-1043" title="Android" src="http://robtiffany.com/wp-content/uploads/2011/09/Android.png" alt="" width="154" height="153" /></a><a href="http://robtiffany.com/sync-framework/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/attachment/symbian" rel="attachment wp-att-1049"><img class="alignleft size-full wp-image-1049" title="Symbian" src="http://robtiffany.com/wp-content/uploads/2011/09/Symbian.png" alt="" width="152" height="163" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Now some of you might be wondering why you would use a sync technology to move data rather than SOAP or REST web services.  The reason has to do with performance and bandwidth efficiency.  Using SOA, one would retrieve all the data needed to the device in order to see what has changed in SQL Server.  The same goes for uploading data.  Using the Sync Framework Toolkit, only the changes, or deltas, are transmitted over the air.  The boosts performance and reduces bandwidth usage which saves time and money in a world of congested mobile data networks with capped mobile data plans.  You also get a feature called batching, which breaks up the data sent over wireless networks into manageable pieces.  This not only prevents you from blowing out your limited bandwidth, but it also keeps you from using too much RAM memory both on the server and your memory-constrained mobile device.  When combined with conflict resolution and advanced filtering, I&#8217;m sold!</p>
<p>I think you&#8217;ll find the Sync Framework Toolkit to be an immensely valuable component of your MEAP solutions for the enterprise as well as the ones you build for consumers.</p>
<p>Keep Synching,</p>
<p>Rob</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/sync-framework-v4-is-now-open-source-and-ready-to-connect-any-device-to-sql-server-and-sql-azure/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Performance and Memory Management Improvements with Windows Embedded Handheld</title>
		<link>http://robtiffany.com/performance-and-memory-management-improvements-with-windows-embedded-handheld/</link>
		<comments>http://robtiffany.com/performance-and-memory-management-improvements-with-windows-embedded-handheld/#comments</comments>
		<pubDate>Sun, 04 Sep 2011 15:49:39 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Windows Embedded Handheld]]></category>
		<category><![CDATA[.NET Compact Framework]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[Merge Replication]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[RDA]]></category>
		<category><![CDATA[Remote Data Access]]></category>
		<category><![CDATA[SQL CE]]></category>
		<category><![CDATA[SQL Server Compact]]></category>
		<category><![CDATA[Sync]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=944</guid>
		<description><![CDATA[It should be no surprise that over 80% of enterprise handhelds shipped are running Windows Mobile or Windows Embedded Handheld.  <a href="http://robtiffany.com/performance-and-memory-management-improvements-with-windows-embedded-handheld/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A lot has changed since the launch of Windows Phone in the Fall of 2010.  Microsoft now has a compelling phone platform that targets consumers inside and outside the office.  One thing that that hasn&#8217;t changed is the widespread use of Windows Embedded Handheld to solve tough enterprise mobility problems.  It should be no surprise that over 80% of enterprise handhelds shipped are running Windows Mobile or Windows Embedded Handheld.  They include support for barcode scanning, RFID reading, rugged hardware, every type of wireless, full device encryption, complete over-the-air software distribution and device managment support, FIPS compliance, and both capacitive touch and stylus operation.  On the application platform side of the equation, they have rich support for WinForm development using Visual Studio and the .NET Compact Framework, C++ and a full-featured database with built-in sync capabilities via SQL Server Compact.  They can easily communicate with WCF SOAP and REST web services running on Windows Servers on-premise or with Azure in the cloud.  Support for Merge Replication means faster time to market to get device synchronizing with SQL Server with almost no coding.</p>
<p><a href="http://robtiffany.com/windows-embedded-handheld/performance-and-memory-management-improvements-with-windows-embedded-handheld/attachment/motorola-es400" rel="attachment wp-att-951"><img class="alignleft size-medium wp-image-951" title="Windows Embedded Handheld" src="http://robtiffany.com/wp-content/uploads/2011/09/motorola-es400-144x300.jpg" alt="" width="144" height="300" /></a><a href="http://robtiffany.com/windows-embedded-handheld/performance-and-memory-management-improvements-with-windows-embedded-handheld/attachment/pp-psion-teklogix-12-6-10" rel="attachment wp-att-978"><img class="alignleft size-medium wp-image-978" title="pp-Psion-Teklogix-12-6-10" src="http://robtiffany.com/wp-content/uploads/2011/09/pp-Psion-Teklogix-12-6-10-183x300.jpg" alt="" width="183" height="300" /></a><a href="http://robtiffany.com/windows-embedded-handheld/performance-and-memory-management-improvements-with-windows-embedded-handheld/attachment/dolphin" rel="attachment wp-att-976"><img class="alignleft size-medium wp-image-976" title="dolphin" src="http://robtiffany.com/wp-content/uploads/2011/09/dolphin-163x300.jpg" alt="" width="163" height="300" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://robtiffany.com/windows-embedded-handheld/performance-and-memory-management-improvements-with-windows-embedded-handheld/attachment/intermec" rel="attachment wp-att-979"><img class="alignleft size-medium wp-image-979" title="intermec" src="http://robtiffany.com/wp-content/uploads/2011/09/intermec-140x300.jpg" alt="" width="140" height="300" /></a><a href="http://robtiffany.com/windows-embedded-handheld/performance-and-memory-management-improvements-with-windows-embedded-handheld/attachment/honeywell_99ex" rel="attachment wp-att-977"><img class="alignleft size-medium wp-image-977" title="honeywell_99ex" src="http://robtiffany.com/wp-content/uploads/2011/09/honeywell_99ex-127x300.jpg" alt="" width="127" height="300" /></a></p>
<p>Since Windows Embedded Handheld uses an advanced version of the operating system kernel used by Windows Mobile 6.5.3, many of the techniques and best practices I&#8217;ve taugh customers and developers all over the world still apply.  While it still uses the slotted memory model found in Windows CE 5 with 32 processes and 32 MB of memory per process, you&#8217;ll find that numerous enhancements and tuning has taken place to give your line of business apps more of what they need.  I&#8217;m talking about more memory per process and improved performance.  Therefore, I&#8217;d like you to sit back and watch the video of a presentation I delivered at Tech Ed in Los Angeles a couple of years ago so you can better learn what this mobile platform has to offer in the form of better memory management and improved performance:<br />
<iframe style="width: 512px; height: 384px;" src="http://channel9.msdn.com/Events/TechEd/Europe/2009/MOB401/player?w=512&amp;h=384" frameborder="0" scrolling="no" width="320" height="240"></iframe></p>
<p>A recent Gartner report recommends that organizations should stay with Windows Embedded Handheld as the best mobile platform for enterprise line of business needs.  Great devices are available from OEMs like Intermec, Motorola, Psion, and Honeywell just to name a few.  I hope this video helps you with any memory management or performance issues you may need to deal with in your enterprise mobile apps.</p>
<p>Best Regards,<br />
Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/performance-and-memory-management-improvements-with-windows-embedded-handheld/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: Windows &gt; Cloud</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-cloud/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-cloud/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 04:51:39 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[ACS]]></category>
		<category><![CDATA[ADFS]]></category>
		<category><![CDATA[ADO.NET]]></category>
		<category><![CDATA[AppFabric]]></category>
		<category><![CDATA[Auth]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Azure AppFabric]]></category>
		<category><![CDATA[CIO]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[CoIT]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Consumerization of IT]]></category>
		<category><![CDATA[Critical Capabilities]]></category>
		<category><![CDATA[CTO]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[EAI]]></category>
		<category><![CDATA[ERP]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[IE9]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Integrated Development Environment]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[IT Director]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[MDM]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[OData]]></category>
		<category><![CDATA[On-Premises]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL Azure Data Sync]]></category>
		<category><![CDATA[Sync]]></category>
		<category><![CDATA[Sync Framework]]></category>
		<category><![CDATA[Web Role]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[Web Storage]]></category>
		<category><![CDATA[WIF]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows Intune]]></category>
		<category><![CDATA[Worker Role]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-cloud</guid>
		<description><![CDATA[In my Consumerization of IT Collides with MEAP article last week, I described how to connect a Windows 7 device to Microsoft’s On-Premises servers.&#160; Whether you’re talking about a Windows 7 tablet or laptop, I showed that you can follow &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-cloud/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In my Consumerization of IT Collides with MEAP article last week, I described how to connect a Windows 7 device to Microsoft’s On-Premises servers.&#160; Whether you’re talking about a Windows 7 tablet or laptop, I showed that you can follow the Garter MEAP Critical Capabilities to integrate with our stack in a consistent manner.&#160; Remember, the ability to support multiple mobile apps across multiple mobile platforms, using the same software stack is a key tenant to MEAP.&#160; It’s all about avoiding point solutions.</p>
<p>If you need a refresher on the Gartner MEAP Critical Capabilities, check out: <a title="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-on-premises" href="http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-on-premises">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-on-premises</a>&#160;</p>
<p>In this week’s scenario, I’ll use the picture below to illustrate how Mobile versions of Windows 7 in the form of slates, laptops, and tablets utilize some or all of Gartner’s Critical Capabilities to connect to Microsoft’s Cloud infrastructure:</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/08/image1.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://robtiffany.com/wp-content/uploads/2011/08/image_thumb1.png" width="596" height="318" /></a></p>
<p>As you can see from the picture above:</p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, Windows 7 uses Windows Intune for Cloud-based device management and software distribution. </li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, Windows 7 uses Visual Studio. The Windows Azure SDK plugs into Visual Studio and provides developers with everything they need to build Cloud applications.&#160; It even includes a Cloud emulator to simulate all aspects of Windows Azure on their development computer. </li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, Windows 7 uses .NET (Silverlight/WPF/WinForms) for thick clients. For thin clients, it uses Internet Explorer 9 to provide HTML5 + CSS3 + ECMAScript5 capabilities. Offline storage is important to keep potentially disconnected mobile clients working and this is facilitated by SQL Server Compact + Isolated Storage for thick clients and Web Storage for thin clients. </li>
<li>For the<strong> Security Critical Capability</strong>, Windows 7 provides security for data at rest via Bitlocker, data in transit via SSL, &amp; Authorization/Authentication via the Windows Azure AppFabric Access Control Serivce (ACS). </li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, Windows 7 can reach out to servers directly via Web Services or indirectly through the Cloud via the Windows Azure AppFabric Service Bus to connect to other enterprise packages. </li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol is handled automatically by Windows Azure. Crosss-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. Cross-Platform data synchronization if provided by the Sync Framework. These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls. Distributed caching to dramatically boost the performance of any client is provided by Windows Azure AppFabric Caching. </li>
<li>As you might imagine, the <strong>Hosting Critical Capability</strong> is knocked out of the park with Windows Azure.&#160; Beyond providing the most complete solution of any Cloud provider, Windows Azure Connect provides an IPSec-protected connection with your On-Premises network and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure.&#160; This gives you the Hybrid Cloud solution you might be looking for. </li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, Windows 7 runs cross-platform mobile apps include Office/Lync/IE/Outlook/Bing. </li>
</ol>
<p>As you can see from this and last week’s article, Windows 7 meets all of Gartner’s Critical Capabilities whether it’s connecting to Microsoft’s On-Premises or Cloud servers and infrastructure.&#160; They great takeaway from the picture above, is Windows 7 only needs to know how to integrate its apps with WCF in the exact same way as is does in the On-Premises scenario.&#160; Windows developers can focus on Windows without having to concern themselves with the various options provided by Windows Azure.&#160; Cloud developers just need to provide a WCF interface to the mobile clients. </p>
<p>When an employee walks in the door with a wireless Windows 7 Slate device, you can rest assured that you can make them productive via Windows Azure without sacrificing any of the Gartner Critical Capabilities.</p>
<p>Next week, I’ll cover how Windows Phone connects to an On-Premises Microsoft infrastructure.</p>
<p>Best Regards,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-cloud/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Consumerization of IT Collides with MEAP: Windows &gt; On-Premises</title>
		<link>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-on-premises/</link>
		<comments>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-on-premises/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 21:23:07 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[MEAP]]></category>
		<category><![CDATA[CIO]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[CoIT]]></category>
		<category><![CDATA[Consumerization]]></category>
		<category><![CDATA[Consumerization of IT]]></category>
		<category><![CDATA[Critical Capabilities]]></category>
		<category><![CDATA[CTO]]></category>
		<category><![CDATA[EAI]]></category>
		<category><![CDATA[ERP]]></category>
		<category><![CDATA[Gartner]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Integrated Development Environment]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[IT Director]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile Enterprise Application Platform]]></category>
		<category><![CDATA[On-Premises]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://robtiffany.com/meap/consumerization-of-it-collides-with-meap-windows-on-premises</guid>
		<description><![CDATA[The Consumerization of IT is an unstoppable force where employees are bringing every kind of mobile device imaginable into the office expecting to be productive.  Over the course of the next 20 articles, I’ll describe how IT professionals can use &#8230; <a href="http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-on-premises/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The Consumerization of IT is an unstoppable force where employees are bringing every kind of mobile device imaginable into the office expecting to be productive.  Over the course of the next 20 articles, I’ll describe how IT professionals can use the principles of Gartner MEAP to connect any type of mobile device to Microsoft’s On-Premises and Cloud servers.</p>
<p>Gartner specifies the following Critical Capabilities that must be addressed in order for a given product or stack of products to be considered a Mobile Enterprise Application Platform (MEAP):</p>
<ul>
<li><strong>Integrated Development Environment</strong><br />
<blockquote><p>A dedicated environment or plug-in for composing backend server and client side logic, including UI and UX</p></blockquote>
</li>
<li><strong>Application Client Runtime</strong><br />
<blockquote><p>The client runtime logic for the application, either in native format or packaged within a container.</p></blockquote>
</li>
<li><strong>Enterprise Application Integration Tools</strong><br />
<blockquote><p>Tools for integration of mobile server with back end systems, both bespoke and purchased apps or application suites.</p></blockquote>
</li>
<li><strong>Packaged Mobile Apps or Components</strong><br />
<blockquote><p>Self standing mobile applications or components.</p></blockquote>
</li>
<li><strong>Multichannel Tools or Servers</strong><br />
<blockquote><p>Tools that allow for &#8220;write once, run anywhere&#8221; thick or rich mobile clients, cross compilers or environments or platforms that allow business logic to be supported across thin, thick, and rich mobile architectures.</p></blockquote>
</li>
<li><strong>Management Tools</strong><br />
<blockquote><p>Tools for provisioning, supporting, debugging, updating or decommissioning mobile applications.</p></blockquote>
</li>
<li><strong>Security </strong><br />
<blockquote><p>Tools for ensuring the security and privacy of enterprise data on board the device, while transiting through wired or wireless networks, through peripherals, and with backend systems and integration packages.</p></blockquote>
</li>
<li><strong>Hosting</strong><br />
<blockquote><p>The ability to host all development, provisioning, management functions, and optionally corporate data.</p></blockquote>
</li>
</ul>
<ul>In this first scenario, I’ll use the picture below to illustrate how Mobile versions of Windows 7 in the form of slates, laptops, and tablets utilize some or all of Gartner’s Critical Capabilities to connect to an On-Premise Microsoft infrastructure:</ul>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/08/image.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://robtiffany.com/wp-content/uploads/2011/08/image_thumb.png" alt="image" width="600" height="323" border="0" /></a></p>
<p>As you can see from the picture above, Windows 7:</p>
<ol>
<li>For the <strong>Management Tools Critical Capability</strong>, Windows 7 uses System Center Configuration Manager (SCCM) 2007 for on-premises device management and software distribution.</li>
<li>For both the Client and Server <strong>Integrated Development Environment (IDE) and Multichannel Tool Critical Capability</strong>, Windows 7 uses Visual Studio.</li>
<li>For the cross-platform <strong>Application Client Runtime Critical Capability</strong>, Windows 7 uses .NET (Silverlight/WPF/WinForms) for thick clients.  For thin clients, it uses Internet Explorer 9 to provide HTML5 + CSS3 + ECMAScript5 capabilities.  Offline storage is important to keep potentially disconnected mobile clients working and this is facilitated by SQL Server Compact + Isolated Storage for thick clients and Web Storage for thin clients.</li>
<li>For the<strong> Security Critical Capability</strong>, Windows 7 provides security for data at rest via Bitlocker, data in transit via SSL+VPN, data in the database via RSA/AES, &amp; Authorization/Authentication via Active Directory.</li>
<li>For the<strong> Enterprise Application Integration Tools Critical Capability</strong>, Windows 7 can reach out to servers directly via Web Services or indirectly via SQL Server or BizTalk using SSIS/Adapters/Sync to connect to other enterprise packages.</li>
<li>The <strong>Multichannel Server Critical Capability</strong> to support any open protocol directly, via Reverse Proxy, or VPN is facilitated by ISA/TMG/UAG/IIS.  Crosss-Platform wire protocols riding on top of HTTP are exposed by Windows Communication Foundation (WCF) and include SOAP, REST and Atompub. Cross-Platform data serialization is also provided by WCF including XML, JSON, and OData. Cross-Platform data synchronization if provided by the Sync Framework.  These Multichannel capabilities support thick clients making web service calls as well as thin web clients making Ajax calls.  Distributed caching to dramatically boost the performance of any client is provided by Windows Server AppFabric Caching.</li>
<li>While the <strong>Hosting Critical Capability</strong> may not be as relevant in an on-premises scenario, Windows Azure Connect provide an IPSec-protected connection to the Cloud and SQL Azure Data Sync can be used to move data between SQL Server and SQL Azure.</li>
<li>For the <strong>Packaged Mobile Apps or Components Critical Capability</strong>, Windows 7 runs cross-platform mobile apps include Office/Lync/IE/Outlook/Bing.</li>
</ol>
<p>It should come as no surprise that Windows 7 has a compelling and complete MEAP story to address the issues surrounding the Consumerization of IT (CoIT) when an employee walks in the door with a wireless Windows 7 Slate device.</p>
<p>Next week, I’ll cover how Windows 7 connects to the Cloud.</p>
<p>Best Regards,</p>
<p>Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/consumerization-of-it-collides-with-meap-windows-on-premises/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Windows Phone SDK 7.1 Beta2 is Available!</title>
		<link>http://robtiffany.com/windows-phone-sdk-7-1-beta2-is-available/</link>
		<comments>http://robtiffany.com/windows-phone-sdk-7-1-beta2-is-available/#comments</comments>
		<pubDate>Wed, 29 Jun 2011 22:34:02 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Windows Phone 7 Developer Tools]]></category>
		<category><![CDATA[Expression Blend]]></category>
		<category><![CDATA[IE9]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[SQL CE]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>
		<category><![CDATA[Windows Phone 7]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://robtiffany.com/?p=753</guid>
		<description><![CDATA[Beyond developing apps and games with Silverlight and XNA, take advantage of the new emulator to view and test your new HTML5 websites. <a href="http://robtiffany.com/windows-phone-sdk-7-1-beta2-is-available/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Head on over to <a title="Download Tools" href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=26648" target="_blank">http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=26648</a> to download the new tools.  This update can be used to develop applications for both 7.0 and 7.1 (Mango) version of Windows Phone OS releases.</p>
<p>The Windows Phone SDK includes the following components:</p>
<ul>
<li>Windows Phone SDK 7.1 (Beta2)</li>
<li>Windows Phone Emulator (Beta2)</li>
<li>Windows Phone SDK 7.1 Assemblies (Beta2)</li>
<li>Silverlight 4 SDK and DRT</li>
<li>Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0</li>
<li>Microsoft Expression Blend SDK Preview for Windows Phone 7.1</li>
<li>WCF Data Services Client for Window Phone 7.1</li>
<li>Microsoft Advertising SDK for Windows Phone 7</li>
</ul>
<p>Beyond developing apps and games with Silverlight and XNA, take advantage of the new emulator to view and test your new HTML5 websites.</p>
<p>-Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/windows-phone-sdk-7-1-beta2-is-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Phone 7 Line of Business App Dev :: Uploading Data back to Azure</title>
		<link>http://robtiffany.com/windows-phone-7-line-of-business-app-dev-uploading-data-back-to-azure/</link>
		<comments>http://robtiffany.com/windows-phone-7-line-of-business-app-dev-uploading-data-back-to-azure/#comments</comments>
		<pubDate>Wed, 04 May 2011 05:11:35 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Windows Phone 7]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Azure Queues]]></category>
		<category><![CDATA[Azure Table Storage]]></category>
		<category><![CDATA[Data Contract]]></category>
		<category><![CDATA[Data Member]]></category>
		<category><![CDATA[DataContractJsonSerializer]]></category>
		<category><![CDATA[DELETE]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[Hadoop]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[Loosely-coupled]]></category>
		<category><![CDATA[Memcache]]></category>
		<category><![CDATA[MemoryStream]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[POST]]></category>
		<category><![CDATA[PUT]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Slate]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[Tablet]]></category>
		<category><![CDATA[URI]]></category>
		<category><![CDATA[UriTemplate]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[WebClient]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows Communication Foundation]]></category>
		<category><![CDATA[Windows phone]]></category>
		<category><![CDATA[Windows Slate]]></category>
		<category><![CDATA[Wireless]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XmlSerializer]]></category>

		<guid isPermaLink="false">http://robtiffany.com/windows-phone-7/windows-phone-7-line-of-business-app-dev-uploading-data-back-to-azure</guid>
		<description><![CDATA[Looking back over the last 6 months of this series of articles, you’ve created wireless-efficient WCF REST + JSON Web Services in Azure to download data from SQL Azure tables to Windows Phone.  You’ve maintained in-memory collections of objects in &#8230; <a href="http://robtiffany.com/windows-phone-7-line-of-business-app-dev-uploading-data-back-to-azure/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div>Looking back over the last 6 months of this series of articles, you’ve created wireless-efficient <strong>WCF REST + JSON</strong> Web Services in <strong>Azure</strong> to download data from <strong>SQL Azure</strong> tables to <strong>Windows Phone</strong>.  You’ve maintained in-memory collections of objects in your own local <strong>NoSQL</strong> object cache.  You&#8217;ve used <strong>LINQ</strong> to query those collections and bind results to various <strong>Silverlight</strong> UI elements.  You’ve even serialized those collections to <strong>Isolated Storage</strong> using memory-efficient JSON.  So what’s left to do?</div>
<div><a href="http://robtiffany.com/wp-content/uploads/2011/05/Sub.png"><img class="aligncenter size-medium wp-image-681" title="Submarine" src="http://robtiffany.com/wp-content/uploads/2011/05/Sub-180x300.png" alt="" width="180" height="300" /></a></div>
<div></div>
<div>Oh yeah, I guess you might want to know how to <strong>upload</strong> an object full to data back to a WCF Web Service in Azure.  In order to keep this article simple and to-the-point, I’m going to work with a basic Submarine object and show you how to fill it with data and upload it from a <strong>Windows Phone</strong> or <strong>Slate</strong> to a WCF REST + JSON Web Service.  Let’s take a look at this object:</div>
<div></div>
<div><span style="font-family: Consolas;">using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Text;<br />
using System.Runtime.Serialization;</span></div>
<div><span style="font-family: Consolas;">namespace Models<br />
{<br />
[DataContract()]<br />
public class Submarine<br />
{<br />
[DataMember()]<br />
public int Id { get; set; }<br />
[DataMember()]<br />
public string Name { get; set; }<br />
}<br />
}</span></div>
<div></div>
<div>It includes just an integer data type called <strong>Id</strong>, and a string called <strong>Name</strong>.  As in previous articles before, its decorated with a <strong>[DataContract()]</strong> and two <strong>[DataMember()]</strong>s to allow<strong> .NET serialization</strong> to do its thing.  So the next thing we need to do is create and populate this Submarine object with data, serialize it as JSON, and send it on its way using <strong>WebClient</strong>.</div>
<div></div>
<div>Below is the method and its callback that accomplishes this:</div>
<div></div>
<div><span style="font-family: Consolas;">using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Net;<br />
using System.Windows;<br />
using Microsoft.Phone.Controls;<br />
using System.IO;<br />
using System.Runtime.Serialization.Json;<br />
using System.Text;</span></div>
<div><span style="font-family: Consolas;">private void AddSubmarine()<br />
{<br />
Uri uri = new Uri(&#8220;</span><a href="http://127.0.0.1:81/SubService.svc/AddSubmarine&quot;);"><span style="font-family: Consolas;">http://127.0.0.1:81/SubService.svc/AddSubmarine&#8221;);</span></a></div>
<div><span style="font-family: Consolas;"> Models.Submarine submarine = new Models.Submarine() { Id = 3, Name = &#8220;Seawolf&#8221; };<br />
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Models.Submarine));<br />
MemoryStream mem = new MemoryStream();<br />
ser.WriteObject(mem, submarine);<br />
string data = Encoding.UTF8.GetString(mem.ToArray(), 0, (int)mem.Length);</span></div>
<div><span style="font-family: Consolas;"> WebClient webClient = new WebClient();<br />
webClient.UploadStringCompleted += new UploadStringCompletedEventHandler(webClient _UploadStringCompleted);<br />
webClient.Headers["Content-type"] = &#8220;application/json&#8221;;<br />
webClient.Encoding = Encoding.UTF8;<br />
webClient.UploadStringAsync(uri, &#8220;POST&#8221;, data);</span></div>
<div><span style="font-family: Consolas;">}</span></div>
<div><span style="font-family: Consolas;">void webClient_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)<br />
{<br />
var x = e.Result;<br />
}</span></div>
<div></div>
<div>As you can see above, I point the <strong>URI</strong> at a WCF Service called <strong>SubService.svc/AddSubmarine</strong>.  How <strong>RESTful</strong>.  Next, I create an instance of the Submarine object, give it an <strong>Id</strong> of <strong>3</strong> and the <strong>Name</strong> <strong>Seawolf</strong>.  I then use the same <strong>DataContractJsonSerializer</strong> I’ve been using in all the other articles to serialize the Submarine object to a JSON representation.  Using the <strong>MemoryStream</strong>, I write the JSON to a stream and then artfully turn it into a string.  Last but not least, I instantiate a new WebClient object, create an event handler for a callback, and upload the <strong>stringified</strong> Submarine object to the WCF Service.</div>
<div></div>
<div>So where did I upload the Submarine object to?</div>
<div></div>
<div>It takes two to Mango, so let’s take a look.  For starters, it goes without saying that every WCF Service starts with an <strong>Interface</strong>.  This one is called<strong> ISubService.cs</strong>:</div>
<div></div>
<div><span style="font-family: Consolas;">using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Runtime.Serialization;<br />
using System.ServiceModel;<br />
using System.ServiceModel.Web;<br />
using System.Text;</span></div>
<div><span style="font-family: Consolas;">namespace DataSync<br />
{<br />
[ServiceContract]<br />
public interface ISubService<br />
{<br />
</span><span style="font-family: Consolas;">[OperationContract]<br />
[WebInvoke(UriTemplate = "/AddSubmarine", BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, Method = "POST")]<br />
bool AddSubmarine(Models.Submarine sub);</span></div>
<div><span style="font-family: Consolas;"> }<br />
}</span></div>
<div></div>
<div>Unlike previous articles where I had you download data with <strong>WebGet</strong>, this time I’m using <strong>WebInvoke</strong> to denote that a <strong>PUT</strong>, <strong>POST</strong>, or <strong>DELETE</strong> <strong>HTTP</strong> <strong>Verb</strong> is being used with our <strong>REST</strong> service.  The <strong>UriTemplate</strong> gives you the RESTful <strong>/AddSubmarine</strong>, and I added the <strong>Method = “POST”</strong> for good measure.  Keep in mind that you’ll need the exact same Submarine class on the server that you had on your Windows Phone to make all this work.</div>
<div></div>
<div>Let’s see what we get when we <strong>Implement this Interface</strong>:</div>
<div></div>
<div><span style="font-family: Consolas;">using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Runtime.Serialization;<br />
using System.ServiceModel;<br />
using System.ServiceModel.Web;<br />
using System.Text;<br />
using Microsoft.WindowsAzure;<br />
using Microsoft.WindowsAzure.Diagnostics;<br />
using Microsoft.WindowsAzure.ServiceRuntime;<br />
using Microsoft.WindowsAzure.StorageClient;<br />
using System.Configuration;<br />
using System.Xml.Serialization;<br />
using System.IO;</span></div>
<div><span style="font-family: Consolas;">namespace DataSync<br />
{<br />
public class SubService : ISubService<br />
{<br />
public SubService()<br />
{ </span></div>
<div><span style="font-family: Consolas;"></p>
<div>}</div>
<p></span></div>
<div><span style="font-family: Consolas;"> public bool AddSubmarine(Models.Submarine submarine)<br />
{<br />
try<br />
{<br />
if (submarine != null)<br />
{<br />
//Do something with your Deserialized .NET Submarine Object<br />
//… = submarine.Id </span><span style="font-family: Consolas;"> //… = submarine.Name</span></div>
<div><span style="font-family: Consolas;"> return true;<br />
}<br />
else<br />
{<br />
return false;<br />
}<br />
}<br />
catch<br />
{<br />
return false;<br />
}<br />
}</span></div>
<div><span style="font-family: Consolas;"> }<br />
}</span></div>
<div></div>
<div>Here we end up with <strong>SubService.svc</strong> with the simple <strong>AddSubmarine</strong> method where you pass in a Submarine object as a parameter.  What you do with this object, I’ll leave to you.  Some might be tempted to INSERT it into <strong>SQL Azure</strong>.  I’d prefer that you drop it into an <strong>Azure Queue</strong> and have a <strong>Worker Role</strong> do the INSERTing later so you can stay <strong>loosely-coupled</strong>.  Just in case you need a refresher on a REST-based <strong>Web.config</strong> file, here’s one below:</div>
<div></div>
<div><span style="font-family: Consolas;">&lt;?xml version=&#8221;1.0&#8243;?&gt;<br />
&lt;configuration&gt;<br />
&lt;!&#8211;  To collect diagnostic traces, uncomment the section below.<br />
To persist the traces to storage, update the DiagnosticsConnectionString setting with your storage credentials.<br />
To avoid performance degradation, remember to disable tracing on production deployments.<br />
&lt;system.diagnostics&gt;<br />
&lt;sharedListeners&gt;<br />
&lt;add name=&#8221;AzureLocalStorage&#8221; type=&#8221;DataSync.AzureLocalStorageTraceListener, DataSync&#8221;/&gt;<br />
&lt;/sharedListeners&gt;<br />
&lt;sources&gt;<br />
&lt;source name=&#8221;System.ServiceModel&#8221; switchValue=&#8221;Verbose, ActivityTracing&#8221;&gt;<br />
&lt;listeners&gt;<br />
&lt;add name=&#8221;AzureLocalStorage&#8221;/&gt;<br />
&lt;/listeners&gt;<br />
&lt;/source&gt;<br />
&lt;source name=&#8221;System.ServiceModel.MessageLogging&#8221; switchValue=&#8221;Verbose&#8221;&gt;<br />
&lt;listeners&gt;<br />
&lt;add name=&#8221;AzureLocalStorage&#8221;/&gt;<br />
&lt;/listeners&gt;<br />
&lt;/source&gt;<br />
&lt;/sources&gt;<br />
&lt;/system.diagnostics&gt; &#8211;&gt;<br />
&lt;system.diagnostics&gt;<br />
&lt;trace&gt;<br />
&lt;listeners&gt;<br />
&lt;add type=&#8221;Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&#8243;<br />
name=&#8221;AzureDiagnostics&#8221;&gt;<br />
&lt;filter type=&#8221;" /&gt;<br />
&lt;/add&gt;<br />
&lt;/listeners&gt;<br />
&lt;/trace&gt;<br />
&lt;/system.diagnostics&gt;<br />
&lt;system.web&gt;<br />
&lt;compilation debug=&#8221;true&#8221; targetFramework=&#8221;4.0&#8243; /&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;/system.web&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;!&#8211;Add Connection Strings&#8211;&gt;<br />
&lt;connectionStrings&gt; </span></div>
<div><span style="font-family: Consolas;"></p>
<div>&lt;/connectionStrings&gt;</div>
<p></span></div>
<div><span style="font-family: Consolas;"> &lt;system.serviceModel&gt;<br />
&lt;behaviors&gt;<br />
&lt;serviceBehaviors&gt;<br />
&lt;behavior&gt;<br />
&lt;!&#8211; To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment &#8211;&gt;<br />
&lt;serviceMetadata httpGetEnabled=&#8221;true&#8221;/&gt;<br />
&lt;!&#8211; To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information &#8211;&gt;<br />
&lt;serviceDebug includeExceptionDetailInFaults=&#8221;false&#8221;/&gt;<br />
&lt;/behavior&gt;<br />
&lt;/serviceBehaviors&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;!&#8211;Add REST Endpoint Behavior&#8211;&gt;<br />
&lt;endpointBehaviors&gt;<br />
&lt;behavior name=&#8221;REST&#8221;&gt;<br />
&lt;webHttp /&gt;<br />
&lt;/behavior&gt;<br />
&lt;/endpointBehaviors&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;/behaviors&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;!&#8211;Add Service with webHttpBinding&#8211;&gt;<br />
&lt;services&gt;<br />
&lt;service name=&#8221;DataSync.SubService&#8221;&gt;<br />
&lt;endpoint address=&#8221;" behaviorConfiguration=&#8221;REST&#8221; binding=&#8221;webHttpBinding&#8221;<br />
contract=&#8221;DataSync.ISubService&#8221; /&gt;<br />
&lt;/service&gt;<br />
&lt;/services&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;serviceHostingEnvironment aspNetCompatibilityEnabled=&#8221;true&#8221; multipleSiteBindingsEnabled=&#8221;true&#8221; /&gt;</span></div>
<div><span style="font-family: Consolas;"> &lt;!&#8211;&lt;serviceHostingEnvironment multipleSiteBindingsEnabled=&#8221;true&#8221; /&gt;&#8211;&gt;<br />
&lt;/system.serviceModel&gt;<br />
&lt;system.webServer&gt;<br />
&lt;modules runAllManagedModulesForAllRequests=&#8221;true&#8221;/&gt;<br />
&lt;/system.webServer&gt;<br />
&lt;/configuration&gt;</span></div>
<div></div>
<div>This Web.Config gives you the <strong>webHttpBinding</strong> you’re looking for to do a <strong>REST</strong> service.  I even left you a spot to add your own database or Azure storage <strong>connection strings</strong>.</div>
<div>This article wraps up the <strong>Windows Phone 7 Line of Business App Dev series</strong> that I’ve been delivering to you since last September.  Who knew I would make fun of <strong>OData</strong> or have you create your own <strong>NoSQL</strong> database to run on your phone along the way?  I think I actually wrote the first article in this series from a hotel room in <strong>Nantes, France</strong>.</div>
<div></div>
<div>But have no fear, this isn’t the end.</div>
<div></div>
<div>In preparation for <strong>Tech Ed 2010 North America</strong> coming up on May 16th in Atlanta, I’ve been building the <strong>next-gen</strong>, <strong>super-fast</strong>, <strong>super-scalable Azure architecture</strong> designed for <strong>mobile devices roaming on wireless data networks</strong>.  I’ve spent the last decade building the world’s largest and most scalable mobile infrastructures for Microsoft’s wonderful global customers.  Now it’s time to make the jump from supporting <strong>enterprise-level scalability</strong> to the much bigger <strong>consumer-level scalability</strong>.</div>
<div></div>
<div>Yes, I’m talking <strong>millions</strong> of devices.</div>
<div></div>
<div>No, you won’t have to recreate <strong>Facebook’s</strong> servers, <strong>NoSQL</strong>, <strong>Memcache</strong>, or <strong>Hadoop</strong> infrastructure to make it happen.  I’m going to show you how to make it happen with Azure in just two weeks so I’m looking forward to seeing everyone in Atlanta in two weeks.</div>
<div></div>
<div>Keep coding,</div>
<div>Rob</div>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/windows-phone-7-line-of-business-app-dev-uploading-data-back-to-azure/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>What the new App Hub in Windows Phone Mango means for the Enterprise</title>
		<link>http://robtiffany.com/what-the-new-app-hub-in-windows-phone-mango-means-for-the-enterprise/</link>
		<comments>http://robtiffany.com/what-the-new-app-hub-in-windows-phone-mango-means-for-the-enterprise/#comments</comments>
		<pubDate>Sat, 16 Apr 2011 19:13:27 +0000</pubDate>
		<dc:creator>Rob Tiffany</dc:creator>
				<category><![CDATA[Windows Phone Marketplace]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[App Hub]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Beta]]></category>
		<category><![CDATA[Beta Distribution Service]]></category>
		<category><![CDATA[Claims]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Corporate]]></category>
		<category><![CDATA[deep link]]></category>
		<category><![CDATA[deeplink]]></category>
		<category><![CDATA[Encryption]]></category>
		<category><![CDATA[Enterprise]]></category>
		<category><![CDATA[Live ID]]></category>
		<category><![CDATA[Mango]]></category>
		<category><![CDATA[Marketplace]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MIX]]></category>
		<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Private Distribution Service]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[SOAP]]></category>
		<category><![CDATA[Sockets]]></category>
		<category><![CDATA[Software Distribution]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[SQL CE]]></category>
		<category><![CDATA[SQL Compact]]></category>
		<category><![CDATA[SQL Server Compact]]></category>
		<category><![CDATA[SQLCE]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[WCF]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Azure]]></category>
		<category><![CDATA[Windows phone]]></category>
		<category><![CDATA[Windows Phone 7]]></category>

		<guid isPermaLink="false">http://robtiffany.com/windows-phone-marketplace/what-the-new-app-hub-in-windows-phone-mango-means-for-the-enterprise</guid>
		<description><![CDATA[If you attended MIX 11 or watched it on Channel 9, you might have seen Todd Brix’s session titled “Making Money with your Applications on Windows Phone.”&#160; In this session, Todd talked about all the great things Windows Phone users &#8230; <a href="http://robtiffany.com/what-the-new-app-hub-in-windows-phone-mango-means-for-the-enterprise/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you attended MIX 11 or watched it on Channel 9, you might have seen Todd Brix’s session titled “Making Money with your Applications on Windows Phone.”&#160; In this session, Todd talked about all the great things Windows Phone users and developers can expect with the new Marketplace and App Hub in the Mango timeframe.&#160; I just want to focus on two items that will be of great significance to companies and organizations that are looking to build, and privately distribute Windows Phone apps to their employees, partners and customers.</p>
<p><a href="http://robtiffany.com/wp-content/uploads/2011/04/Mango-Sizes.jpg"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Mango-Sizes" border="0" alt="Mango-Sizes" src="http://robtiffany.com/wp-content/uploads/2011/04/Mango-Sizes_thumb.jpg" width="442" height="484" /></a></p>
<p>The <strong>Beta Distribution Service</strong> allows developers to distribute <strong>pre-certified</strong> apps to an access-controlled set of beta users.&#160; How does it work?</p>
<ul>
<li>The developer selects a list of up to 100 testers.&#160; This number is subject to change based on feedback we get. </li>
<li>Developer sends an email to the designated testers that includes a private deeplink that points to the app in the Marketplace.&#160; This allows only the testers to access and download the content since the <strong>app is not discoverable in the Marketplace via Search.</strong> </li>
<li>Only testers selected in the App Hub based on their Windows Live ID can test the app and provide feedback for 90 days.&#160; Yes, the app will “time bomb” after 90 days. </li>
<li>The beta cannot be updated.&#160; If you have multiple updates based on testing feedback, you must resubmit them like the first beta and send updated deeplinks to testers. </li>
<li>Testers won’t have to unlock their phone in order to beta test the apps. </li>
<li>Since there’s no certification requirement, there’s no latency between when you publish a beta app and when your private list of testers can access and download your content. </li>
<li>The cost of the beta app must be free. </li>
</ul>
<p><strong>Takeaway</strong>: No matter who you’re building apps and games for, the Beta Distribution Service will allow you to create higher quality content since you can now include beta testing in your development cycle.</p>
<p>The <strong>Private Distribution Service</strong> allows developers to <strong>privately</strong> distribute <strong>certified</strong> apps to a <strong>targeted group of users</strong>.&#160; How does it work?</p>
<ul>
<li>The app must be <strong>certified</strong> by Microsoft before distributing. </li>
<li>Developer sends an email to the targeted group of users that includes a private deeplink that points to the app in the Marketplace.&#160; Keep in mind that the <strong>app is not discoverable in the Marketplace via Search</strong> by the general public. </li>
<li>A private app can be updated and pushed to the targeted group of users. </li>
<li>There are <strong>no limits</strong> on the <strong>number of users</strong> or the <strong>duration of time</strong> that those users can use the app.&#160; This works just like the public Marketplace rules we have today. </li>
<li>There is <strong>no access enforcement</strong> based list of targeted users.&#160; In other words, if an employee at a company shares the deeplink with a fellow coworker, that new person can download the content.&#160; By including <strong>appropriate authentication and authorization mechanisms</strong> in published apps, you can prevent unwanted users from being able to do anything with the app. </li>
<li>Private apps can be free or paid </li>
<li>These private apps can be published to the public Marketplace at any time. </li>
</ul>
<p><strong>Takeaway</strong>: This enables the private distribution of released apps to a small or large community of users.&#160; You could use this as an extension of your application beta testing cycle if you want to send out a release candidate to a broader group of testers than the 100 allowed via the <strong>Beta Distribution Service</strong>.&#160; It’s also a great way to privately send your app to magazines, blogs, and other media channels to be publicly reviewed.</p>
<p><strong>What does this mean for the enterprise?</strong>&#160; Those of you who have worked with or administered enterprise software distribution systems, will quickly recognize that the <strong>Private Distribution Service</strong> doesn’t allow an administrator to push out and restrict software usage to specific organizational groups or roles.&#160; It also doesn’t allow an administrator to uninstall specific apps&#160; from the phones of specific users or groups either.&#160; Lastly, it doesn’t map to an enterprise LDAP service like Active Directory.&#160; You’re probably thinking System Center and this is definitely not that.</p>
<p>That being said, the <strong>Private Distribution Service</strong> overcomes the single-biggest blocker that company executives have expressed to me as a reason why they might not create and publish apps for Windows Phone.&#160; They don’t want their private corporate apps publicly viewable and/or accessible by the broad general public searching for apps in the public Marketplace.&#160; When they build B2C apps to reach their own customers, this is no problem, but when they build line-of-business apps meant just for their employees or partners, they don’t want these apps to be discoverable.</p>
<p>This means IT departments will be able to build undiscoverable Windows Phone apps for private internal use by the users they designate.&#160; Some of the administrative issues around software distribution can be alleviated by having a corporate IT authority publish Beta and Private apps via a single Windows Live ID.&#160; That publishing administrator can then map users, groups or roles to existing or new Windows Live IDs of employees that need to use the app.&#160; That administrator will be able maintain the application lifecycle through beta testing, publishing, updating and decommissioning.&#160; As I alluded to earlier in the post, once a designated employee has access to the app, her ability to run and access data and various parts of the app can be controlled by on-premise or cloud-based authentication and authorization mechanisms.&#160; This includes things like passing Domain credentials or using claims-based auth.&#160; Your data-in-transit is protected by SSL and your data-at-rest in Isolated Storage is protected by AES encryption.</p>
<p>We’ll be seeing a new Windows Phone, App Hub, and Marketplace before the end of 2011.&#160; Its line-of-business credentials include encryption, private software distribution, server auth mechanisms, the ability to call SOAP and REST web services, socket support, multitasking, background agents, and a local SQL database just to name a few.&#160; </p>
<p>You’ll soon be looking at the most enterprise-ready smartphone on the market.</p>
<p>-Rob</p>
]]></content:encoded>
			<wfw:commentRss>http://robtiffany.com/what-the-new-app-hub-in-windows-phone-mango-means-for-the-enterprise/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

