Come Work, Learn & Play with the Campus Rockstars!

The Microsoft Academic Team, in partnership with the Microsoft Student Partners, will be throwing an exclusive Christmas Tech Party for MSPhil AcadTeam friends!

This year’s MSAcadPH Community event, entitled, <METAHYPE/> Embedding Students To The Next Web highlights learning sessions on HTML5, Internet Explorer 9 and CSS3.

Get the chance to learn new techie stuff, play Kinect games and bond with the Microsoft Student Partners in a night full of exciting games and interactive activities for all the participants.

So save the date and details:
December 15, 2011, 5:00 pm – 8:30 pm
16th flr. 6750 Ayala Office Tower, Ayala Ave., Makati City


Here’s how to get a pass for this exclusive event:

1. Play at least 1 of the following IE9 games:

2. Send us a screenshot of your highest score by posting on our wall. Screenshots must include the complete IE9 browser as proof of using IE9. Deadline is on December 14, 2011, 6pm.

3. The highest scorers will receive an event pass and a special Microsoft item from MsPhil AcadTeam.

Limited slots only! So play now and post, post, post! Smile

Fast Application Switching in Windows Phone

  • We’ll start by understanding how does fast application resume which is the HEART of the new release.
  • We’ll explore the execution model which features the fast resume (Dormant state)
  • We’ll look on how does Fast Application Switching affect our application when it comes to application life cycle

What is “Fast Application Switching”?

Microsoft’s platform in Windows Phone 7.5 is to provide a seamingless experience to the user. These are speed and responsiveness.

Most of the users do not just use a single application and use it on their smart
phones, most of them uses multiple applications and switches them back and forth.

Background processing must not affect the battery phone…

The phone should be smart enough to balance the overall system health and
capabilities and that is the reason why Microsoft release Mango release when 
it comes to multi tasking

The consequences..

Even in Mango update, the phone will only allow one application to run at any given time, any application that is no longer in the foreground is actually deactivated. In Windows Phone 7 execution model that is called tombstoning. For example, when the user closes the application by 
pressing the start button, the first application goes in tombstone mode. What does it mean? It means that the operating system saves the application state and dictionary state for later restores. It kills the threads and processes of the application. Now when the user goes back to the application using the hardware button
the OS will resuscitates the application back to the state it was in before being tombstoned. So we're like tricking the users that it is running in the background while in reality it is a brand new process that is being created upon activation and memory state has been restored from the saved state data.

The application lifecycle that Windows Phone 7 implements already addresses the two goals preventing the background processes from impacting the foreground and affecting the battery power. Now the problem is that it takes for a long time for an application to resume from a tombstone mode. If you already have a Windows Phone 7, you’ve probably experienced when you’re restoring your application that it is slow.

The solution

For the Windows Phone 7 developers you notice that there is a new state that has been added in the Application Life Cycle, which is the Dormant State, this is the new and enhanced model for Windows Phone 7.

What the Dormant State does is that it no longer kills the application's threads and processes instead the threads are not destroyed but halted and the application image is kept intact in memory. In other words, the application preserves the application instance if the application is reactivated it instantly resumes as if it is already loaded in the memory. So there is no need to go through to the process of restoring the application state from the saved dictionary as in the case of tombstoning that is what Fast Application Switching is. Also associated with Fast Application Switching is the new ability of the user to quickly jump across applications by pressing and holding the back button which will display the previous listed applications. Unfortunately, this feature is not yet available in the emulator.

So how does Mango Life Cycle works…?

Let’s say we have a running application and then the user presses the start or search button and then user launches a second application from the start menu, in Mango the effect of this action is for the first application to go to Dormant state, the process is not terminated but phone resources are detached and application threads and timers are suspended. The application goes into frozen state, it cannot execute code so it cannot consume battery power and it does not hold on to phone resources.

Before that happens, the deactivated event is raised by the platform and we can handle this event to save our own application data which needs to be saved so that if the application is later activated it will look to the user as if we continued the application running in the background. Now if the user navigates back to the application the activated event is first raised and then the application is fast resumed. Meaning, it restarts instantly as if there is no need for the OS to restore state into memory. Processes are already created, the frameworks are already initialized and application state and content are already present in the memory.

NOTE: While the application is in dormant state, if the user keeps launching new applications eventually the operating system will start running low in memory and it will start reclaiming some of the memory that is used by the dormant applications whose images are maintained and the OS does that by tombstoning dormant application as needed, starting with the one that are frozen first.

Again, tombstone mode means that the application threads are terminated although state dictionary are saved so the application can later be revived.  From there, if the user does return to the tombstone application then the observed behavior is the same as in Windows Phone 7 OS which is that the application will typically resume with the necessary delay to recreate threads and processes and restore state into memory. Note that the activated event is raised in the same way whether we are returning from a dormant state or the tombstone state. The alternative scenario is if the tombstoned app never gets reactivated, Mango will maintain state for a maximum of five (5) tombstoned applications beyond that or if the OS starts running low in memory the oldest tombstoned application will get terminated just like in WP7. So that is our basic deactivation pattern, to complete the lifecycle picture the user may of course choose to close the application while in the running application state by hitting the back button passed to the first page of our application. At this point, the closing event is raised and the application is terminated.

For completeness, the launching event is raised before the application event starts. So with this execution model, the typical scenario for the application that is being deactivated is for it to go to dormant state. If you’re familiar with the WP7 OS this is similar to the scenario where the user hits the starts button immediately followed by the back button to return to the application in which case no tombstoning occurs. While in Mango, deactivation without tombstoning is now the common case where in Phone 7 it used to be the exception.

How to build an application in Silverlight in Windows Phone 7


It’s day 2 of my post! Sorry for the very delayed post of my 7 day series of Windows Phone 7 due to busy week on developing an application in Windows Phone 7 and being invited to different schools for Windows Phone 7.

Now it’s day 2 of my introduction. As I normally say to my audience, Silverlight 4 is released last May 2010 but the framework that Windows Phone 7 will be using is only Silverlight 3. So when there is an instance that we want to use the features of Silverlight 4 like TextTrimming, well it’s not yet supported yet in WP7.

Silverlight 3 is the core framework for developing productivity tools, simple silverlight games, etc. It’s framework is purely based from Silverlight 3 framework but there were some enhancements for phone features of course. It’s good to learn Silverlight too when you are interested in developing further in Windows Phone 7 because you’re not only capable of developing applications in Web or Desktop but you also get to develop in the Mobile world! Learning Silverlight is easy! With the help of MSDN, MVP blogs, and PM Blogs you can easily have a jumpstart knowledge on how to develop your own Silverlight application. Silverlight API is so small compared to other frameworks that you Microsoft has. So starting as a Silverlight application will be a good start then advancing to other frameworks like WPF and ASP.NET.

Enough of the introduction. Let’s start the Silverlight tour in Windows Phone 7! Continue reading

I shall return!

After becoming a guest speaker to many different schools here in Metro Manila about Microsoft Technology, it’s time to go to my own school and talk! Will be at FEU – East Asia College, Main Bldg. AVR tomorrow from 9 am to 5 pm! Straight session with no break! Get to learn how to develop and use the SDK/API of Microsoft Multipoint, Silverlight, XNA and Windows Phone 7!

I’ll get back with my blog on Day 2 and Day 3 of 7 days of Windows Phone 7 post. Been busy doing talks and seminars with Windows Phone 7.

Don’t forget to visit these useful links in order for you to get started developing your own applications with Windows Phone 7.


Telerik controls for Windows Phone 7 – first official CTP release

It is a great pleasure to announce the immediate availability of our first official release of Telerik RadControls for Windows Phone 7. It has been an exciting time for us in the last several months while we have been working on these controls. Now we are proud to share the result with you and get your feedback.

RadControls for Windows Phone 7 are natively built for the platform and enable you to create rich mobile applications in the same powerful way that you are used to with the standard controls and Visual Studio.

The CTP release of RadControls for Windows Phone 7 brings 12 new controls, 8 of which are not available in the default MS Toolkit. We also provide LayoutTransform, UniformGrid and DockPanel controls that cannot be found neither in the Windows Phone 7 OS nor in the Toolkit. Please check our comparison table that is publicly available on …

Introduction to Windows Phone 7 and Silverlight

Last October 11, 2010 at  New York City should make you aware enough that Windows Phone 7 is the newest Microsoft OS platform for their mobile phones. Now, I assume that you, who are reading this post right now are all developers who will read this post and might be wondering that, “Okay, Microsoft got a new OS for a mobile phone but is it easy to develop an application for that platform without having to learn a lot of new things again?” . Before you dismiss the capabilities and features of this new OS for our smart phones, try reading the rest of this post before you dismiss trying to develop applications for Windows Phone 7. Continue reading

Windows Phone Developer Tools Update Released

It’s been a month since Microsoft released it’s final release of SDK for Windows Phone 7 and now it’s time for an update from Microsoft! This is the first update for the SDK for Windows Phone 7. This update has added new features to use.

The Windows Phone Developer Tools October 2010 Update includes:

  • Windows Phone Capability Detection Tool – Detects the phone capabilities used by your application. When you submit your application to Windows Phone Marketplace , Microsoft performs a code analysis to detect the phone capabilities required by your application and then replaces the list of capabilities in the application manifest with the result of this detection process. This tool performs the same detection process and allows you to test your application using the same list of phone capabilities generated during the certification process. For more information, see How to: Use the Capability Detection Tool.
  • Windows Phone Connect Tool – Allows you to connect your phone to a PC when Zune® software is not running and debug applications that use media APIs. For more information, see How to: Use the Connect Tool.
  • Updated Bing Maps Silverlight Control – Includes improvements to gesture performance when using Bing™ Maps Silverlight® Control.

Grab the update here.

Just a question: Do you guys think there should be an SQL for Windows phone 7 or should developers just use the SQL Azure?