When a 'z' just doesn't cut it... (Oren Nachman's random notes from Microsoft)

November, 2010

  • Randomisation

    WP7 Marketplace Tip #2.5 - Free App + Updates Policy Clarified (finally)


    It's been a while, and there's been a lot of confusion surrounding this topic of "5 free apps", so here's the final low down:

    • Unlimited number of paid applications
      • This includes updates to said applications
      • A paid application cannot be made free 
    • 5 submissions of free applications
      • Unlimited updates to accepted free apps
      • WARNING: failed submission of free applications will count against the 5 submissions

    So let's walk through a scenario

    A (for "awesome" which seems to be my word of the last couple of months) signs up for the marketplace, pays his $99 (or equivalent in local currency) and gets approved. He then submits "A's Awesome Paid App" which fails submission. He fixes the problems, resubmits and the app is published. Based on feedback he submits 4 subsequent updates. Up to this point A has paid no extra fees.

    A then decides to become philanthropic and submits a free application. The application fails submission - and now A is only left with 4 free submissions. A resubmits and the submission goes through, at which point he starts submitting updates, and has 3 submissions left. No matter how many updates A pushes, they will still have 3 submissions remaining.

  • Randomisation

    WP7 Marketplace Tip #2: 5 Free Apps == 5 Free App *Submissions*


    Updated Policy!

    Sure, the App Hub site says:

    Submit up to five free apps to Windows Phone Marketplace, additional submissions are $19.99 USD

    But here's what it really means:

    Submit up to five free apps (including updates) to the Windows Phone Marketplace, additional submissions (of apps or updates) are $19.99USD



    The policy is simple, just not stated that simply. The first five submissions of any free Windows Phone 7 application - be it a new application or an app update is going to be free, anything further is going to be $19.99USD.

    In reality I don't see this affecting the average casual free app developer out there (since they're not making any revenue off this apps and, (very) generally, not submitting that many updates). It will affect those with free apps that have an alternate revenue source (think advertising or subscription) - but since they're actually making money anyway, the $US19.99 shouldn't be a big deal.

    Stay tuned for an official blog post from the App Hub team at some point in the near future, and a revision to the wording on the website to clear this up...

  • Randomisation

    WP7 Silverlight Perf Demo 1: VirtualizingStackPanel vs. StackPanel as a ListBox ItemsPanel


    This is the first in a series of blog posts which run through the demos from my PDC 2010 talk, with small updates and full code download.

    The Demo

    Download the sample

    Load the xap and then compare the two scenarios on the main page. Look out for:

    1. The smoothness (if at all) of the animation in the center of the page (before the listbox shows)
    2. The amount of time it takes to load the listbox
    3. Once the listbox is up, try flicking through it as quickly as possible. See which list creates blank items during flick and which one scrolls smoother.


    Startup Memory Scroll
    VSP Fast (instantiates 3 screens worth of list items) Less (3 screens worth of UI elements) May have slight jerks / blank items if your templates are heavy and your items can’t be brought in fast enough.
    SP Slow (instantiates all items from the get go) More (all elements are loaded at once) Smooth (once loaded)


    1. The default ListBox template is VirtualizingStackPanel (VSP). This can be overridden to use a normal StackPanel (SP), or any other container, by using code similar to the following:

    2. VSP will load faster (since it only loads 3 screens worth of items) and use less memory (see: WP7 Perf Tip #_:  Understanding UI Virtualization) but may have more blank items during scroll, especially if your DataTemplate is complex and takes too long to be instantiated for each new item coming in. 
    3. SP will load much slower (since each item is created ahead of time) and use a lot more memory (relative to the number of items) but once loaded will be smoother since there is no extra work that is needed to be done as you scroll through the list.

    When Should I Use One Over the Other?

    The VSP is the desired Panel for most cases, though for small lists (1 – 200 items) that don’t take up to much memory (don’t forget to measure!) you may find that If you can handle the startup cost, the list will handle a lot better (especially for complex DataTemplates).


  • Randomisation

    Silverlight Performance at TechEd Europe


    If you happen to be down at TechEd Europe this week, don't forget to come by the Windows Phone 7 and Silverlight booths (they're opposite each other in the Technical Learning Centre) and say hello. You'll get to play with some phones from HTC and interact directly with both teams - don't miss out!

    Something else you shouldn't be missing out on are all of the Windows Phone 7 oriented talks (both XNA and Silverlight) and especially, shameless plug, my session on performance. You can find me tomorrow (Thursday, November 11) from 12:00 PM - 1:00 PM  in  Hall 7.3b Europa 1.

    See you there!

Page 1 of 1 (4 items)