Developing Apps for Microsoft Surface, Windows 8, Windows RT and Windows Phone 8

Recently, at one of the conference i presented at Microsoft Technology center, i was asked the following questions.

  • Is .NET dead? What is .NET Client profile?
  • Is Windows 8 compatible with my current Windows app?
  • Can I build Windows 8 Metro apps in .NET?
  • Can I build apps for both Windows 8 and Windows Phone?

The following table summarizes the latest devices and their operating systems as well as the development technologies along with other useful information (for developers)

image

Well, here are some of the answers and commonly used Windows 8 terminology.

  • Windows Phone 8 now shares a common core with Windows 8. This means you can expect to write apps for one and easily port it to the other, with UI retooling of course. Developers targeting both should use C#/VB + XAML for apps, and C++/D3D for games. Portable class library definitely helps when developing for both the platforms.
  • The term “Metro Apps” now called “Microsoft Design Language” denotes apps that can be purchased in the official Windows App Store and that are built on top of the WinRT runtime, using either C# + XAML, or WinJS + HTML5. Even though Windows Phone features a Metro user interface (and the original one at that), the term Metro Apps does NOT apply to Windows Phone 7.5 apps.
  • The term “Metro Games” denotes apps that can be purchased in the official Windows App Store and that are built on top of the WinRT runtime, using Direct3D (D3D) and C++. Windows RT & Windows 8 Metro games cannot be built in XNA.
  • XNA can still be used to create Windows Phone 7.5, 7.8 and 8.0 games, and sold in the marketplace. You will not need to keep Visual Studio 2010 since Visual Studio 2012 and the Windows Phone 8.0 SDK will still support new development in XNA.
  • WinRT is the new native Runtime for Windows RT and the Metro side of Windows 8. It completely replaces .NET and Win32. Let me make this clear: If you look under the covers of WinRT, there is no .NET and no Win32, all you’ll find is the Windows Kernel. Since the only dev platform supported by Windows RT is WinRT, that means you cannot use .NET to build apps for Windows RT (or for the Metro side of Windows 8). Read this post on Paul Thurrott’s Windows Supersite for a more in-depth explanation.
  • WinRT is not based on .NET but you can use a subset of .NET from WinRT. Microsoft provides a subset of managed types called the .NET APIs for Metro style apps which enables .NET Framework developers to create Metro style apps within a familiar programming framework. Note that porting some .NET apps to WinRT could be trivial while others could be hard, based on which namespaces & classes you use. Check this section of the Metro style development documentation for more details.
  • Side-loading implicates installing non-certified applications using external media, thus bypassing the official Microsoft Windows App Store, whether it originates from a CD/DVD, USB key or web download. Note that developers can always side-load their own apps in a developer-unlocked device.
  • Xbox LIVE games are always platform specific. Microsoft Surface and Windows Phone both feature Xbox LIVE enabled games but this does NOT mean it runs the same Xbox LIVE Arcade games as the Xbox 360.
  • 2D game development can also be done using the same platform as apps. For example, on Windows Phone, 2D games can be built in Silverlight and do not require XNA.
  • Confused about version numbers for Windows Phone? Read my blog post that demystifies it all here.
  • Windows 8 can also be installed on any PC running Windows 7 today, and will also come pre-loaded on future generations of OEM (Dell, HP, Lenovo, Toshiba, etc.) computers, laptops, notebooks, Ultrabooks, Netbooks and tablets. The first column applies to all these other Windows 8 computers as well.
  • Windows RT will also be available on third-party tablet devices offered by Microsoft’s OEM partners (Samsung, Toshiba, Lenovo, etc.) Windows RT cannot be installed manually by a consumer, it must be licensed and pre-loaded by the OEM manufacturing the tablet.

  • 101 Questions and Answers About Windows 8

    1. What tools and information do I need to develop Windows 8 Store applications?

    a. Windows 8 – Download free version here

    b. Visual Studio 2012 Express - Download free version here

    c. Windows Phone - Download free version here

    d. Windows Server 2012 – Download free version here (Optional)

    e. Microsoft Virtual Academy – Register here

    2. How to develop a Windows Phone 8 app in 30 days?

    Register at http://www.microsoft.com/click/services/Redirect2.ashx?CR_CC=200134727

    3. For a Mac user, where can I get the free tools to build Windows Store apps for Windows 8?

    Install Windows 8 and the dev tools on your Mac.

    4. How to start planning now for a cloud-based backend service—user authentication, push notifications, and structured data?

    Sign up for the Windows Azure 90-day Free Trial and receive 10 free Mobile Services running on shared instances.

    5. Get the samples and get started!? Download the design assets—PSD assets include templates, common controls, and common components—and the sample apps pack.

    6. Where to find Windows 8 Sessions and Keynotes — //BUILD Conference Site

    7. Download the Bits — Windows Dev Center

    8. PDF Manual — Windows Developer Preview Guide

    9. Code Examples — MSDN “Metro Style” app examples (or get them all together in a Single ZIP)

    10. What Devices will Run It? — List of Devices in Microsoft’s Test Lab

    11. How to Install on My Machine without Losing Everything even if I don’t have Dual-Format DVDs or 8 GB Memory Sticks Handy — Installing Windows 8 Developer Preview as a Bootable VHD

    12. What About Silver light? — It’s still here, with a diagram from Microsoft to prove it

    13. Chat about Windows 8 or Cry for Help — MSDN Forums for Windows 8

    14. What is WinRT? — Introduction to WinRT and WinRT demystified

    15. Touch Input — Quickstart: Touch Input

    16. Comfort Guide to Controls for Silverlight and WPF Developers — Controls List (for Xaml)

    17. How do I Convert Silverlight to WinRT/Metro? — Blog Series on WinRT vs. Silverlight

    18. But is Xaml REALLY There? — Yes, It Is

    19. The New Architecture — Windows 8 WinRT Capabilities (Tip: Lean forward to make it look flat)

    20. Platform and Tools Architecture — Windows 8 Platform and Tools (Tip: this time lean sideways)

    21. Can I Borrow Someone’s Opinion? — Sure thing: Yours Truly, Michael Crump, Engadget, Wired

    22. Create a bootable USB? jerrynixon.com

    23. Setup boot to VHD? jerrynixon.com

    24. Get an Azure account? http://aka.ms/w8cloud

    25. Get Windows 8? http://aka.ms/w8download

    26. Get Visual Studio 2012? http://aka.ms/w8tools

    27. Get Windows Live SDK? http://aka.ms/w8live

    28. Get Windows 8 Samples? http://aka.ms/w8samples

    29. Get Multilingual Toolkit? http://aka.ms/w8language

    30. Get Advertising SDK? http://aka.ms/w8ads

    31. Get Design Assets? http://aka.ms/w8design

    32. Register your App? http://aka.ms/w8reg

    33. Join 30 to Launch? http://aka.ms/w8launch

    34. View the online labs? http://aka.ms/w8vlabs

    35. Does Windows 8 run Windows 7 software? Yes

    36. Does Windows 8 support .Net 4.0? Yes

    37. Does WinRT replace the .Net framework? No

    38. Can users re-enable the start button in Windows 8? No

    39. Can enterprises disable Microsoft Design Style on their Windows 8 desktops? No

    40. Will Microsoft Design Style be part of the server version of Windows? Yes

    41. Do developers need two apps in the Windows 8 store to support ARM? No

    42. Can apps have a hidden URL in the Windows 8 store? No

    43. What is the revenue split with Microsoft for the Store? 80/20

    44. Do developers need a developer account in order publish an app? Yes

    45. Can developers use payment systems other than Microsoft? Yes

    46. Is HTML5 and JavaScript (JS) supported in Microsoft Design Style development? Yes

    47. What is the HTML rendering engine in HTML-based Microsoft Design Style apps? IE10

    48. Is IE10 Microsoft Design Style the same engine as IE10 desktop? Yes

    49. Can desktop applications create live tiles? No

    50. Can desktop applications use WinRT? Yes

    51. Can desktop HTTP end point be accessed by Microsoft Design Style apps? No

    52. Can Microsoft Design Style applications access a local SQL server? No

    53. Do Microsoft Design Style applications have a local database solution? Yes, Sqlite

    54. Can Microsoft Design Style applications access the internet while the pc is in standby? Yes

    55. Can Microsoft Design Style applications access SkyDrive? Yes

    56. Can Microsoft Design Style applications iterate through the user’s hard drive? No

    57. Is there a Microsoft Design Style version of windows file explorer? No, see above

    58. Can Microsoft Design Style applications detect other Microsoft Design Style apps? No

    59. Can more than one Microsoft Design Style application run at one time? Yes, two

    60. Can push notifications execute client code? No

    61. Are there background tasks in Microsoft Design Style? Yes

    62. Is the performance of HTML5 Microsoft Design Style applications comparable to XAML? Yes

    63. Is native code (C++) supported in Microsoft Design Style development? Yes

    64. Is Microsoft Design Style C different than traditional CPP? Yes

    65. Should all desktop apps be migrate to Microsoft Design Style? No

    66. Will the Windows 8 store support trials? Yes

    67. Will the Windows 8 store support subscriptions? No

    68. Will enterprise apps deliver through the Windows 8 store? No

    69. Can enterprises disable the Windows 8 store? Yes

    70. Can enterprises disable side-loading of apps? Yes

    71. Can apps in the Windows 8 store access desktop apps & services? No

    72. Can side-loaded apps access desktop apps & services? Yes

    73. Can parents disable the Windows 8 store for kids? Yes

    74. Can parents limit the hours in the day their kids can log in? Yes

    75. Can parents limit the cumulative time in a day kids can use the PC? Yes

    76. Can parents filter available web sites? Yes

    77. Can parents disable games based on their rating? Yes

    78. Can Visual Studio 2010 be used to build Microsoft Design Style apps? No

    79. Can Visual Studio 2012 be used to build Windows 7 apps? Yes

    80. Can Visual Studio 2010 access Team Foundation Server 2012? Yes

    81. Can Visual Studio 2012 open 2010 projects without altering them? Yes

    82. Can Visual Studio 2010 open 2012 projects? No

    83. Does the .Net 4 async keyword work in WinRT? Yes

    84. Does Windows 8 WinRT code run on Windows Phone 7? No

    85. Does Windows Phone 7 code run on Windows 8? Yes, some

    86. Does Windows Phone 8 code run on Windows 8? Yes, more

    87. Does Windows 8 code run on Windows Phone 7? Yes, some

    88. Does Windows 8 code run on Windows Phone 8? Yes, more

    89. Can Microsoft Design Style applications roam settings/files across desktops? Yes

    90. Can desktop applications roam settings, too? No

    91. Can Microsoft Design Style applications roam settings/files to Windows Phone? No

    92. Can Windows Phone roam settings to Windows 8? No

    93. Does Windows 8 Microsoft Design Style support XNA game development? No

    94. When was Windows 8 released? Friday, October 26, 2012.

    95. Win+E – Explorer

    96. Win+R – Run

    97. Win+D – Desktop

    98. Win+Plus or Win+Minus (no shift) – Magnifier/Zoom In and Out

    99. Win+F – Find Files

    100. Alt-Tab – Switch between Apps

    101. Win-Tab – Switch between Full Screen Apps

      Free Microsoft Developer Training Kits

      Windows Azure Training Kit – August 2012 REFRESH Update

      The August 2012 REFRESH update of the Windows Azure Training Kit includes 42 hands-on labs, 15 demos and 38 presentations. Some of the updates in this version include:

      • Added the Windows Azure Device + Services 1-day event agenda
      • Added the Windows Azure ITProCamp 1-day event agenda
      • Added 2 presentations designed for Windows Azure Mobile Services
      • Added 15 Demos with Demo Scripts for content delivery

      The previous August 2012 update of the Windows Azure Training Kit includes 41 hands-on labs and 35 presentations. Some of the updates in the version include:

      • Added 7 presentations specifically designed for the Windows Azure DevCamps
      • Added 4 presentations for Windows Azure SQL Database, SQL Federation, Reporting, and Data Sync
      • Added presentation on Security & Identity
      • Added presentation on Building Scalable, Global, and Highly Available Web Apps
      • Several hands-on lab bug fixes
      • Added the Windows Azure DevCamp 1-day event agenda
      • Updated Windows Azure Foundation Training Workshop 3-day event agenda

      Release date: 8/20/2012

      Internet Explorer 10 Training Kit

      This training kit covers development specifics for developers who will be targeting Internet Explorer 10 in their development experience. This kit contains documentation and details on things pertinent to developing applications that target features of the Internet Explorer 10 browser.

      Release Date: 8/8/2012

      Windows 8 Camp in a Box, Release Preview Edition

      This download includes the hands-on-labs, presentations, samples and resources from the Windows 8 camps for developers ramping up on Metro style app development.

      • Windows 8CampinaBoxJS includes the hands-on labs for those using HTML + Javascript.
      • Windows8CampinaBoxCS includes the hands-on-labs that use XAML + C#.

      Release Date: 7/18/2012

      SQL Server 2012 Developer Training Kit

      The SQL Server 2012 Developer Training Kit includes technical content designed to help you learn how to develop SQL Server 2012 database and BI solutions.

      Release date: 7/16/2012

      Identity Developer Training Kit

      The Identity Developer Training Kit contains hands-on labs, presentations and pointers to training videos. This page contains three versions of the Identity Developer Training Kit :

      • Identity Developer Training Kit (July 2012) for Visual Studio 2012 RC
      • Identity Developer Training Kit (April 2011) for Visual Studio 2010 RTM
      • Identity Developer Training Kit (March 2010) for Visual Studio 2008 SP1

      Release Date: 7/5/2012

      Web Camps Training Kit

      Web Camps Training Kit May 2012 Release featuring ASP.NET MVC 4, ASP.NET 4.5, ASP.NET Web API, VS 11

      Release Date: 5/9/2012

      Visual Studio 2010 and .NET Framework 4 Training Kit

      Visual Studio 2010 and .NET Framework 4 Training Kit December 2011 Release

      Release date: 12/30/2011

      Windows Phone 7.5 Training Kit

      Hands on Labs for the Windows Phone 7.5 Application Platform

      Release date: 12/19/2011

      Visual Studio 11 Developer Preview Training Kit

      Visual Studio 11 Developer Preview Training Kit December 2011 Release

      Release date: 12/15/2011

      Dynamics CRM 2011 Developer Training Kit

      This training kit is for .NET developers to learn the development features of Dynamics CRM and help them build applications using Microsoft Dynamics CRM 2011 and CRM Online.

      Release Date:9/6/2011

      Introduction to Visual Studio Team Foundation Server 2010 Training Kit

      Introduction to Team Foundation Server 2010

      Release Date:8/22/2011

      BizTalk Server 2010 Administrator Training Kit

      This training kit contains a complete set of materials that will enable you to learn the core administrator capabilities in BizTalk Server 2010. This kit includes lab manuals, PowerPoint presentations and videos, all designed to help you learn…

      Release Date:8/21/2011

      BizTalk Server 2010 ESB Training Kit

      This training kit contains a complete set of materials that will enable you to learn about the ESB Toolkit in BizTalk Server 2010. This kit includes lab manuals, PowerPoint presentations and videos, all designed to help you learn about the ESB…

      Release Date:8/20/2011

      Visual Studio LightSwitch Training Kit

      Visual Studio LightSwitch Training Kit

      Release Date:7/28/2011

      SharePoint 2010 and Windows Phone 7 Training Kit

      Provides developers with advanced guidance on how to develop Windows Phone 7 Applications for SharePoint.

      Release Date:7/22/2011

      BizTalk Server 2010 Developer Training Kit

      This training kit contains a complete set of materials that will…developer capabilities in BizTalk Server 2010. This kit includes lab manuals, PowerPoint presentations…Virtual Machine that is ready for you to use with the training kit.

      Release Date:7/18/2011

      SharePoint and Windows Azure Development Kit

      The July 2011 release of the SharePoint and Azure Development Kit is a training course to help developers integrate SharePoint and Windows Azure.

      Release Date:7/15/2011

      Office 365 Developer Training Kit – June 2011 Update

      Guidance that provides developers with advanced guidance on how to develop for Office 365 including SharePoint Online, Exchange Online and Lync Online

      Release Date:6/28/2011

      Office 2010 Developer Training Kit – June 2011

      Training kit that provides developers with collateral to get started quickly developing for Office 2010.

      Release Date:6/7/2011

      PHP on Windows and SQL Server Training Kit (March 2011 Update)

      The PHP on Windows and SQL Server Training Kit includes a comprehensive set of technical content including demos and hands-on labs to help you understand how to build PHP applications using Windows, IIS 7.5 and SQL Server 2008 R2.

      Release Date:6/6/2011

      SQL Server 2008 R2 Update for Developers Training Kit (May 2011 Update)

      This training kit is a great resource for developers, trainers, consultants and evangelists who need to understand…hands-on labs and videos that are perfect for self-paced learning or for conducting your own training.

      Release Date:6/2/2011

      SharePoint and Silverlight Training Kit

      Provides developers with advanced guidance on how to develop Silverlight Applications for SharePoint.

      Release Date:4/7/2011

      Web Camps Training Kit

      February 2011 release of the Web Camps Training Kit

      Release Date:2/21/2011

      Windows Phone 7 Training Kit for Developers – RTM Refresh

      This Windows Phone 7 Training Kit for developers will give you a jumpstart into the new Windows Phone world by providing you with a step-by-step explanation of the tools to use and some key concepts for programming Windows Phones.

      Release Date:2/3/2011

      Silverlight 4 Training

      Silverlight 4 Training

      Release Date:12/20/2010

      UC “14″ Developer Training Kit

      This training kit provides deep technical training on all aspects of the Lync Server 2010 and Exchange Server 2010 SDKs to give developers the skills they need to be productive developing communications driven business processes.

      Release Date:12/10/2010

      Windows Server AppFabric Training Kit

      This training kit contains a complete set of materials that will…capabilities in Windows Server AppFabric. The kit has two main sections, one for the AppFabric Hosting…Virtual Machine that is ready for you to use with the training kit.

      Release Date:10/26/2010

      What’s New in BizTalk Server 2010 Training Kit

      Learn about the new features of BizTalk Server 2010

      Release Date:9/23/2010

      SharePoint 2010 Developer Training Kit

      Guidance that provides developers with advanced guidance on how to develop for SharePoint.

      Release Date:5/8/2010

      Windows 7 Training Kit For Developers

      The Windows 7 Training Kit for Developers includes presentations, hands-on labs, and demos designed to help you learn how to build applications that are compatible with and shine on Windows 7

      Release Date:10/22/2009

      Windows Server 2008 R2 Developer Training Kit – July 2009

      A collection of presentations, demos, and hands-on-labs for Windows Server solution developers.

      Release Date:7/20/2009

      ASP.NET MVC Training Kit

      ASP.NET MVC Training Kit containing: hands-on-labs, demos, decks, FAQs, etc.

      Release Date:3/27/2009

      Business Activity Monitoring (BAM) Training Kit

      This training kit provides learning information for Business Activity Monitoring (BAM).

      Release Date:8/21/2008

      .NET Framework 3.5 Enhancements Training Kit

      .NET Framework 3.5 Enhancements Training Kit containing Labs, Demos and PPTs

      Release Date:8/11/2008

      Visual Studio 2008 and .NET Framework 3.5 Training Kit

      Visual Studio 2008 and .NET Framework 3.5 Training Kit containing Labs, Demos and PPTs

      Release Date:11/30/2007

      Received tablet (Slate) from Microsoft as part of winning the GenApp Great Slate Giveaway Competition

      Microsoft sent me a Windows 8 Samsung Slate for being the first few members to successfully publish Windows Store apps at Microsoft store. The apps were available at Microsoft store even before Windows 8 GA (General Availability).

      Below is the box with Windows 8 slate. It came with Digital Pen Stylet.

      IMG_0629

      Figure 1: Package of Samsung Slate

      Fig 2 shows the outside features of Samsung slate.IMG_0634 

      Figure 2: Overview of the Windows 8 slate and it’s features.

      Won Intel App Round 2 – AppInnovation contest Submission Award winner‏

      Looks like my Windows 8 app http://bit.ly/WinStoreApp is winning round 2 of Intel competition.

      Few days ago, i received an email from  CodeProject, mentioning that i am one of the AppInnovation contest Submission Award winner‏. See details at http://emarketing.lakequincy.com/s/1/AIXr/9IcRHWy/6jt9dimage

      They have put up the Winners list at http://www.codeproject.com/script/Awards/competition.aspx?cid=598image

      Well, the contest was fun as there were developers participating in this competition from all over the world.

      Windows 8 App developers – Identify and value your IP – free of charge

      Microsoft and Inngot are implementing a new programme to support the Windows 8 community in making more of its intellectual property.

      Windows 8 will be the first release to feature ‘apps’. Microsoft is looking to help app developers get off to the best possible start by understanding the full range of assets they are creating, and how much these can be worth to their business. In most cases, apps involve a bundle of IP – not just software code, but brands, distinctive designs and characters, and potentially vast user bases. Many apps have spawned entire franchises and become global properties which require careful management to protect and exploit them.

      Microsoft is providing 100 members of the Elite club developing apps for Windows 8 with an opportunity to identify your intellectual property (IP) and intangible assets, and find out what they are worth – at no charge. Don’t delay – we only have 100 profiling and valuation packages on offer, and they are available on a first come, first served basis, for a limited time period. Click here to redeem your code now.

      I was invited to speak at CMAP, Loyola University, Maryland

      I was fortunate enough to have Central Maryland code camp team invite me to speak at the CMAP Code Camp Fall 2012 (Where Technology and People Meet).

      Sessions that I am presenting are:

      You can hear from other great speakers too and you can see them at http://www.cmap-online.org/CodeCamp/Speakers.aspx

      Here is my profile at CMAP code camp website.image

      The schedule is as follows:image

      The Central Maryland Association of .NET Professionals (CMAP) is holding its Fall 2012 Code Camp on Saturday, December 1st, 2012 at the Loyola University Maryland Graduate Center in Columbia, MD.

      The Code Camp will run from 8:30am – 5:30pm with 20-25 awesome sessions covering a wide range of database, software and portal development topics. It’s totally free. No gimmicks. No sales pitches. Enjoy breakfast and lunch at no charge while you mingle with your peers.

      Address to the code camp:

      Loyola University Maryland Graduate Center
      Columbia Campus
      8890 McGaw Road
      Columbia, Maryland 21045

      To register for this event, select the registration menu option.