Susan IbachTechnical Evangelist
This blog is part of a series, you can see the rest of the series here.
If you want to develop for Windows 8, you need to decide which programming model best suits your needs and skills and find some resources to help you get started with your chosen model. Don’t forget in Canada, any app you publish before end of March 2013 can earn you rewards through the Developer Movement, and students building apps can enter them in Imagine Cup!
Let’s look at options for different types of developers:
There are a number of options for game development on Windows 8, what makes sense for you depends on your existing game experience and the complexity of the game you plan to build.
I would not recommend C++ and DirectX for a beginner programmer, but, when it comes to high performance games, serious gamers turn to C++ and DirectX. With DirectX and C++ you can build great games for Windows 8. To get started, check out the Developing Games for Windows 8 or Developing apps with C++ and DirectX (scroll down to the section Game Programming in C++.)
Easier for beginners than DirectX, you might be surprised at the games you can build with HTML and Canvas. It is growing in popularity for web games, especially with fewer platforms supporting Flash. The same HTML and Canvas capabilities that exist on the web can be used to build cool games for Windows 8. To get started here’s a good post by David Rousset called Everything you need to know to build HTML5 games with Canvas
XNA is not included on Windows 8, however there is an open source cross platform implementation of the XNA framework called MonoXNA that you can use to build Windows 8 apps. To get started check out Tara Walker’s blog on Windows 8 development using C#, XNA and MonoGame 3.0
There are a lot of companies out there who produce tools for beginner and experienced game developers. These products have their own development environments and generate the application code for you. Some of these tools are free, some charge you either for the development environment tools, or to publish the apps. To get started check out cross platform tools that support Windows 8
If you are already familiar with the .NET framework, you will probably find it easiest to develop your apps in C# or VB .Net with XAML. To get started check out the Roadmap for Windows 8 apps using C# or Visual Basic.
If you have already coded in Java, you will find it pretty easy to pick up C#. Consider building your apps with C# and XAML.To get started check out the Roadmap for Windows 8 apps using C# or Visual Basic.
Go ahead and build your app using C++ and XAML. To get started check out Building your first Windows Store app using C++.
There’s some great resources to help you bring your knowledge of Objective-C, Cocoa Touch, and XCode to Windows Store app development. To get started check out Resources for iOS developers. If you are planning to build a new app and want to target multiple platforms you may also want to check out Cross platform tools that support Windows 8.
The platforms are different, but you can certainly take an app you built for Android and port it to Windows 8. To get started check out this article Porting Android apps to Windows 8 . If you are planning to build a new app and want to target multiple platforms you may also want to check out Cross platform tools that support Windows 8.
Want your app on multiple platforms without rewriting all the code? Here’s a summary of some of the tools, libraries and SDKs out there to support building multi-platform apps.
Every mobile developer struggles with the decision of which platforms to support, and most end up building for more than one platform. I am frequently asked what tools are out there to make it easier to build for multiple platforms. Well, there are lots of options out there for you, everything from professional paid tools to open source libraries. I decided to sit down and put together a list for you. Information is all based on what I could find on their websites at the time this blog was posted. For the most up-to-date information I recommend you visit the product sites themselves. Each product title is linked back to their website. There are some gaming and graphic specific tools listed as well.
Don't forget good design of your app also makes it easier to implement on multiple platforms. Using a Model View ViewModel architecture makes it easier to re-use your code. Check out this MVVM Light Toolkit or Okra (formerly Cocoon) to help you get started with the MVVM model pattern in XAML. This is great when combined with portable class libraries which allows you to share code between Windows Phone 8 and Windows 8 apps.
Apache Cordova (formerly known as PhoneGap)
Embarcadero RAD Studio XE3
Yo Yo Games GameMaker
Construct2 by Scirra
I’m sure there are some I missed, feel free to add comments to point out any good tools and tips for cross platform development that you have discovered. Don’t forget in Canada when you publish your app you could earn rewards through Developer Movement!
This open source template makes it easy for you to take a WordPress site and provide it’s content through a Windows 8 store app
if you are a WordPress user (Wordpress.org this template does not support Wordpress.com), there is an open source Windows 8 template built by IdeaNotion you can use to quickly create a Windows 8 store app to showcase the content on your WordPress site.
The app created by the template allows a user to
You can download the source code and there is a quick start guide from IdeaNotion to help you out as well.
Make your WordPress site available to more users through the Windows 8 store! Don’t forget students can publish their Windows 8 apps for free!
How do you get the Windows 8 SDK and Visual Studio? What if you have Visual Studio already?
This blog is part of a series, you can find the entire series here.
In Step 2 we learned where to find and different options for installing Windows 8 which is required before you download and install the SDK. Now you need the Windows 8 SDK and a version of Visual Studio 2012. In this blog we’ll look at what you need to install so you can start building a Windows 8 app. This blog post covers the following:
If you are in a technical program like Computer Science you may have access to DreamSpark Premium which is usually accessed through your school IT department or through a special portal maintained by your school like this one from Carleton where you can download Visual Studio and Expression Studio.
If you are a student in a non technical program such as business administration or you are in a technical program that does not have a DreamSpark Premium subscription, you can still get a copy of Visual Studio through DreamSpark Standard. DreamSpark Standard subscriptions are given to universities, colleges, and even school boards so that high school students can access Microsoft developer software. They are usually tied to a school email address. For example a student with an email address that ends in @Ryerson.ca is recognized as a student from Ryerson who can access the Ryerson University subscription. If your school does not have a subscription, you can request a verification code by contacting your local Microsoft representative. (In Canada that’s us!). Now you can
Note: when you download Visual Studio and Expression Studio, you will get an .iso file. You will need to either burn a copy of the .iso onto a DVD or use a tool such as Virtual Clone Drive to read the .iso and allow you to install it.
If you are a Microsoft Student Partner, or work at a company with an MSDN subscription you can download a copy of Visual Studio from the Microsoft Download Center.
That’s okay you don’t need a full version of Visual Studio to develop an app, when you install the Windows 8 SDK it will install a copy of Visual Studio 2012 Express with Blend you can use to develop your app.
If you do have access to a full version of Visual Studio 2012 and Expression Blend, install it before you install the Windows 8 SDK. When you install the Windows 8 SDK it will detect your copy of Visual Studio 2012 and install the Windows 8 templates into your existing copy of Visual Studio. Visit the the windows dev center (dev.windows.com) to download the tools and SDK.
If you do not have a copy of Visual Studio 2012 already, then all you need to do is download the tools and SDK and it will install a copy of Visual Studio 2012 Express and Blend for Visual Studio on your system so you can start developing.
Where do I get Windows 8? Can I set up a dual boot? Can I install it in VM? How? This post answers those questions
This post is part of a series, you can see all the posts in the series here.
You can’t build a Windows 8 app without installing Windows 8. So you need to get a copy of Windows 8 and you need to install it. This blog post will either explain or provide links to references that explain the following:
First check the System requirements to make sure your PC can handle Windows 8. You do not require touch, Windows 8 works fine with keyboard and mouse. Though you might want to learn a few keyboard shortcuts.
All of the options below will provide you with a .iso file, so you will either need a DVD burner so you can burn a DVD with the .iso file to install Windows 8, or you will need a tool like Virtual Clone Drive to read the .iso file directly.
You may be able to download Windows 8 for free from DreamSpark Premium. Note: this is only available for students in programs that have DreamSpark Premium. Many students have access to DreamSpark Standard which allows you to download a lot of free software including Visual Studio, but does not include the operating system software such as Windows 8.
if you are a Microsoft Student Partner, or you work at a company that has an MSDN subscription, you may be able to download Windows 8 using your MSDN subscription.
There is a 90 day evaluation version of Windows 8 you can download for free, but note: IT CANNOT BE UPGRADED TO THE FULL VERSION. To upgrade, the evaluation must be uninstalled and a non-evaluation version of Windows must be re-installed. So if you are going to choose the trial version, you probably want to do it as a dual boot or in a virtual machine.
Until Jan 31, 2013 you can buy a Windows 8 Pro upgrade for $39.99. You can do the upgrade easily if you are running Windows 7. If you are running Windows XP or Windows Vista you will need to reinstall your apps after you upgrade.
If you are downloading the trial version, or you just aren’t ready to upgrade yet (though honestly I found, after a week on Windows 8, I didn’t miss Windows 7, and was completely comfortable working with Windows 8, my existing printer, external monitor, mouse, and programs all work fine on Windows 8). But still I understand that you may have reasons for keeping a copy of Windows 7 running on your laptop. You can of course set up your laptop to have dual boot so you can start it in Windows 8 or Windows 7.
Installing Windows 8 in a Virtual machine won’t run as fast as upgrading your operating system to Windows 8 and from what I am seeing in the comments on these blogs, you may need to brace yourself for a bit of fiddling to get it working. But for those of you who are not ready to upgrade, it is certainly an option and I’ve seen lots of developers at our hackathons building Windows 8 apps inside a VM.
Here’s a twist on the virtual machine option to consider as well. Windows 8 comes with Hyper-V support. So you could install Windows 8 on your machine and then run Windows 7 in a Hyper-V virtual machine on your Windows 8 PC.
Now you’ve got Windows 8 installed, you can develop apps for Windows 8 or Windows Phone 8! Great preparation for the Imagine Cup or your first step to getting rewards from the Developer Movement. Get coding!