Development, Students, Windows, Windows 8, Windows Azure Mobile Services, WP7, WP8

Code to Win!

Our team at Microsoft is excited to announce the return of the Windows 8 Student App Madness Challenge! Create and publish a Windows 8 app by April 14th, 2014 and you could win* a $50 gift card. Promote your app and receive 100 downloads for the chance to win* an additional $50 gift card. Microsoft will provide you with all the software, resources and support you need to get started, build your app, and publish it to the Windows Store. This is a great opportunity for you to get some app building experience, and win prizes while doing it!

There are two ways you can win:

What could be easier!  There are a lot of helpful tools to get you started including some great app templates, like the SUPER-AMAZING Cross-platform Cloud Kit, advice on building great app logos for your new apps, and great training available online to help you build out the next great app.

As always, reach out to me if you have any question about building apps for Windows 8 and Windows Phone, or if you’re interested in learning more about Windows Azure. Our team is here to help you whenever you need us!

BootCamp, CodeCamp, Development, Events, Featured, Students, Training, Windows, Windows 8, Windows Azure Mobile Services, WP8

Upcoming Microsoft Events

Hey all – the team is starting up a new round of Microsoft events – they’re similar to what we used to do with DevCares and MSDN Events (if you can remember back that far) but all have an education + hands on component to them.  This schedule is for all of Central Region, and although we unfortunately can’t visit every city in the region, hopefully you can find a city near you so that you can attend!

Build 2013 Highlights – The Best of Build!

Were you unable to attend Build 2013 and hear about the latest Microsoft product announcements for software developers? Never fear! In this session, we will give you the best of Build, covering the major announcements and technology innovations you need to know as a developer. We will show code and demos to get you up to speed on the latest with Windows 8.1, XAML, WinJS, Bing, Windows Azure, and Visual Studio.

Agenda

  • Windows 8.1 and Windows Store changes
  • What’s new in XAML and WinJS
  • Introducing the Bing Platform
  • What’s new in Windows Azure
  • What’s new in Visual Studio and web
Date City
Sept. 24 Houston, TX
Sept. 24 Southfield, MI
Sept. 24 Indianapolis, IN
Sept. 25 Columbus, OH
Sept. 27 Overland Park, KS
Oct. 3 Edina, MN
Oct. 9 Austin, TX
Oct. 15 St. Louis, MO
Oct. 17 Irving, TX
Oct. 29 Chicago, IL
Nov. 14 Waukesha, WI
Nov. 22 Independence, OH

 

Monetization of Real-World Windows Apps

Often, as developers, we think of our pet software projects as a hobby. As it turns out, we have one of the most profitable hobbies in the history of hobbies! Billions of dollars have already been made by developers just like you that built an app for a mobile platform, and monetized it effectively. In this one-day event, we will share with you some modest and extreme success stories, some strategies for making money from your apps, and some technical instruction on exactly how to make that happen in your code. We will also demonstrate how easy it is to build one unified codebase that can used on Windows 8, Windows 8.1, and Windows Phone.

Agenda

  • Overview of the platforms, success stories.
  • Monetization Strategies (trial, paid, ads, IAP)
  • Hands-on Labs
  • Implementing Pre-Lunch Strategies in App & Store
  • Using PCLs to share code and increase success
Date City
Oct. 15 Houston, TX
Oct. 17 Indianapolis, IN
Oct. 22 Detroit, MI
Nov. 6 Chicago, IL
Nov. 6 Dallas, TX
Nov. 6 Kansas City, MO
Nov. 6 Columbus, OH
Nov. 12 Edina, MN
Nov. 13 Austin, TX
Dec. 4 St. Louis, MO
Dec. 4 Cleveland, OH

 

Windows 8 + Windows Phone: Better Together

Trying to wrap your head around app development across multiple platforms? Trying to capitalize on the opportunities in both the Windows 8 and Windows Phone 8 marketplaces? Want to maximize your design and development resources and get to market better, faster, and stronger? Then come to this session and learn some real world techniques to maximize your efficiency of developing for both Windows 8 and Windows Phone 8. See how you can minimize your development costs by maximizing sharing and reuse between the two platforms.

Agenda

  • Designing for sharing
  • Developing and sharing
  • Tips and Tricks / Architecture
  • And then there was 8.1… A quick tour of the new stuff
Date City
Nov. 5 Houston, TX
Nov. 14 Downers Grove, IL
Dec. 3 Indianapolis, IN
Dec. 10 Detroit, TX

 

Hands-on Labs: Windows 8 & Windows Phone

Build your first Windows 8 apps with an accompanying app on Windows Phone! We will start from scratch to create a Windows 8 app that is powered by the cloud AND includes a Windows Phone version too!

Agenda

  • Window 8 + Cloud
  • Windows Phone
Date City
Nov. 15 Irving
Nov. 20 Columbus
Nov. 22 Chicago
Nov. 22 Houston
Nov. 22 Edina
Nov. 22 Austin
Nov. 22 St. Louis
Nov. 22 Southfield
Nov. 22 Indianapolis
Azure, Cloud, Development, Featured, ITPro, Product Announcements, USCloud, Windows

Rock Paper Azure Redux

Have you heard the news? We’ve recently raised the stakes with Rock Paper Azure game. This cloud-based coding challenge is back for just six weeks – and anyone can win! Simply get your Windows Azure account, and build and upload a bot (or re-boot your existing bot if you’ve already built one). Tweet about it with #AzureRPS to @RockPaperAzure and you’ll be automatically entered to win one of five weekly prizes. When the dust settles, we’ll enter each week’s top 10 bots (60 total) in a random draw for one of three grand prizes.

  • 1st Prize: A Surface tablet.
  • 2nd Prize: A 4GB Xbox 360 with Kinect.
  • 3rd Prize: A Kinect Sensor for Xbox 360.

Don’t have an azure account? Get a FREE 90-day trial at http://aka.ms/thecloud.

Don’t have an existing bot? Build a new one by visiting the Getting Started page on the Rock Paper Azure website.

Full details can be found at the Rock Paper Azure website, located at http://www.rockpaperazure.com/

Android, Azure, Cloud, iOS, Open Source, USCloud, Windows, Windows 8, Windows Azure Mobile Services, WP8

WNS Badge, Toast and Tile Reference

Using WNS as part of your Windows 8 Store app? Digging into Windows Azure Mobile Services?  The Windows Notification Service is a key part of the Windows 8 platform and really great apps know how to use Push Notifications to make their great apps awesome.

Here’s a reference I got from my teammate Nick Harris showing off all the variations of Push Notification messages you can send to a Windows 8 machine, either manually from your own code, or from node.js scripts in your Windows Azure Mobile Services.

Toast variants: http://aka.ms/wnstoast

Tile variants: http://aka.ms/wnstile

Badge variants: http://aka.ms/wnsbadge

For the Mobile Services developer, these manifest themselves in the node javascript code something like this:

var parms = {
    image1src: 'http://link.to/myimage.jpg',
    image1alt: 'Alt tag for my image',
    text1: 'Text to put into the notification'
};
push.wns.sendToastImageAndText01(channel, parms);

Check out these links to learn what badge, tile or toast message options are available, and choose the one that makes the most sense for you and your app.

Azure, Cloud, Development, Featured, ITPro, Open Source, Silverlight, Students, USCloud, Web, Windows, Windows 8, WP7, WP8

BizSpark for Startups

My good friend and colleague Taylor Cowan has begun working on a blog post series entitled “25 Ways Software Startups can use BizSpark”.  Even if you haven’t already formed a company around your latest great idea, Taylor’s series will help you understand how startups can take the best advantage of all the amazing features that BizSpark has to offer. Today was Day 6 (I know, I’m a little behind) but there are still 19 more days to come!

Tune into 25 Ways Software Startups can use BizSpark at http://taylorcowanonline.com

BizSpark, for those that don’t know, Microsoft® BizSpark® is a global program that helps software startups succeed by giving them access to software development tools, connecting them with key industry players, and providing marketing visibility.  The program also includes access to Windows Azure, a flexible, comprehensive, and powerful cloud platform for the creation of web applications and services.  In addition, BizSpark offers technical support, business training and a network of over 2,000 partners to connect members with incubators, investors, advisors, government agencies and hosters.  Since it was established in 2008, more than 45,000 companies in over 100 countries have joined BizSpark.

Here is the BizSpark membership critera:

  1. Privately-held company
  2. Less than 5 years old
  3. Earns less than $1M US per year
  4. In the business of developing software (on any platform, with any language, for any type of device)

That means, if you are building a Windows 8 or Windows Phone 8 application that you intend to sell on in their respective marketplaces, you qualify for BizSpark and can get access to ALL of those amazing benefits!  Contact Taylor today via his blog at http://taylorcowanonline.com to find out more about joining the BizSpark family today!

Development, General, Windows, Windows 8

Windows 8 Certification Tips

My teammate in Ann Arbor, Jennifer Marsman, recently published a blog series on tips for getting your Windows 8 application through the certification process. In the series, she the common problems developers run into when submitting their applications to the Windows 8 Store for certification, and gives some great tips on how to avoid them all together.

Common certification errors when submitting to the Windows Store

1.2 App must be fully functional

3.8 App must meet the basic performance criteria

4.1 App must comply with privacy requirements

6.5 App must be localized

If you read these, and follow her suggestions, you’ll have a much easier time getting your app through the certification process and out onto the Windows Store!

Development, Windows, Windows 8

WebView vs. SettingsFlyout

I was working on a Windows 8 application tonight, as part of some Azure content that I’m creating, and ran into a weird error.  I wanted to share it here in case other people ran into the same issue.

I have a very simple application – it’s essentially a simplified News Reader app that collects a set of RSS or ATOM feeds, displays their items, and allows a user to view the feed item – all within the confines of a Windows Store application.  The UI elements are arranged from left to right – feed list (ListBox), item list (ListBox) and item preview (WebView) looking something like this:

Simple, right?  This is a common pattern for displaying HTML content, and I’m sure one of the reasons a WebView control was included in the SDK.

OK – now that mock data is displaying like it’s supposed to, we move on to adding the “real” data.  Like all good Windows Store applications, the data for the list of feeds should be something users enter through the Windows 8 Settings panel.  To make it easy for us to implement custom content for the Settings panel, Tim Heuer created a really useful control in his Windows 8 Callisto library (also available via NuGet) called SettingsFlyout. I added some code based on his sample application to implement the SettingsFlyout, and tested it out.

I was expecting this, but it didn’t turn out that way:

What I saw, was no flyout.  Well… not a visible flyout anyway.

What to do?

The obvious answer was fire up Lync and ping Tim on IM 🙂  Talking to Tim, I learned that our friend the WebView control is a bit of a z-order piggie.  As it turns out, the SettingsFlyout was actually flying out as expected, but the WebView was obscuring it from view. The problem, in other words had NOTHING TO DO with the SettingsFlyout, or my implementation of it – rather the problem was related to the WebView (which I suspect has it’s problems rooted somewhere in COM, as COM is usually the source of chaos in managed applications…)

So – the fix?  A bit klunky, but it seems to work – there is a nifty control included in the WinRT SDK called WebViewBrush. The purpose of this brush, as described by the official MSDN documentation, says it best:

WebView has the characteristic that other UI regions such as controls cannot be rendered on top of the WebView. This is because of how window regions are handled internally, particularly how input events are processed and how the screen draws. If you want to render HTML content and also place other UI elements on top of that HTML content, you should use WebViewBrush as the render area. The WebView still provides the HTML source information, and you reference that WebView through element name binding and the SourceName property.WebViewBrush does not have this overlay limitation.

The clunky part, of course, is that you can’t just use a WebViewBrush to display your content.  The MSDN documentation again guides us through how we should implement this: when the Settings panel is opened, “capture” the current content of the WebView control into the WebViewBrush and display that via a Rectangle control, while also hiding the WebView.  When the Settings panel is closed, switch back to the real WebView.  Here’s my code that shows what I did:

private void RegisterForCommands(SettingsPane sender, SettingsPaneCommandsRequestedEventArgs args)
{
    var feedsCommand = new SettingsCommand("manageFeedsCommand", "Manage Feeds", (feedCommand) =>
    {
        // create the settings flyout
        SettingsFlyout settings = new SettingsFlyout();
        settings.Closed += (s, e) =>
        {
            FeedItemWebView.Visibility = Windows.UI.Xaml.Visibility.Visible;
            FeedItemWebViewRect.Fill = new SolidColorBrush(Windows.UI.Colors.Transparent);
        };
        settings.FlyoutWidth = SettingsFlyout.SettingsFlyoutWidth.Wide;
        settings.HeaderBrush = new SolidColorBrush(App.VisualElements.BackgroundColor);
        settings.HeaderText = "Manage Feeds";
        BitmapImage bmp = new BitmapImage(App.VisualElements.SmallLogoUri);
        settings.SmallLogoImageSource = bmp;
        settings.Content = new SettingsContent();

        // hide the webview due to z-order chaos
        WebViewBrush b = new WebViewBrush();
        b.SourceName = "FeedItemWebView";
        b.Redraw();
        FeedItemWebViewRect.Fill = b;
        FeedItemWebView.Visibility = Windows.UI.Xaml.Visibility.Collapsed;

        // show the settings panel
        settings.IsOpen = true;

    });
    args.Request.ApplicationCommands.Add(feedsCommand);
}

So – not the most elegant solution, but enough to be getting on with for now. Viva la cutting edge!

PS – Mad props to Tim Heuer for the AWESOME Callisto library, and helping to set me straight on the WebView control.

Development, MVVM, Open Source, Videos, Windows, Windows 8

Microsoft DevRadio: Community Corner – Update Controls for Windows 8 app Development

This entry is part 2 of 3 in the series Dev Radio: Community Corner

I recently had the  pleasure  to interview wicked smart Microsoft Client App Dev MVP Michael Perry as part of the Microsoft DevRadio show to hear about the amazing work he’s done on an open source databinding framework called  Update Controlswhich can help Windows 8 app developers simplify their code by automatically discovering dependencies so that you won’t have to manage them in your view model.

Next Steps:

Subscribe to the podcast via iTunes, Zune, or RSS

If you’re interested in learning more about the products or solutions discussed in this episode, click on any of the below links for free, in-depth information:

Websites:

Videos:

Virtual Labs:

Download

Cloud, Development, General, user group, Videos, Windows, Windows 8

Microsoft DevRadio: Community Corner – How I created my Windows 8 app for UserGroup.tv

This entry is part 1 of 3 in the series Dev Radio: Community Corner

I had the great pleasure recently to interview Microsoft C# MVP Shawn Weisfeld as part of the Microsoft DevRadio show to hear about the Windows 8 app he built for UserGroup.tv. Tune in and listen to this great story as Shawn describes his experience building the app and how you can watch great user group created content anywhere, anytime.

Next Steps:

Subscribe to our podcast via iTunes, Zune, or RSS

 If you’re interested in learning more about the products or solutions discussed in this episode, click on any of the below links for free, in-depth information:

 Websites:

 Videos:

 Virtual Labs:

Download