Showing posts with label mobile. Show all posts
Showing posts with label mobile. Show all posts

Wednesday, April 11, 2012

Windows Phone Unleashed

All Day of Hands on Programming, B.Y.O. Laptop!

Windows Phone 7 is HOT! Come check out Windows Phone 7 Unleashed for everything you need to know to develop for WP7. Whether you're a seasoned veteran or you're just starting with .NET development, there's something in it for you. The first half of this deep dive event is lecture and hands on lab. At the half point mark of the day, you'll have a solid foundation for building WP7 applications. The second half of the day is going straight to code. (there maybe some phones given away too)

Build an app and win from $800 in prizes

  • 1st Place: $500 Gift Card
  • 2nd Place: $200 Gift Card
  • 3rd Place: $100 Gift Card

Free Marketplace Tokens

A limited amount of complimentary tokens are available for those submitting their application to the Windows Phone Marketplace. Organizers of each event will collect names of those interested.

Limited Seating

In order to deliver the best possible experience for attendees, seating at these events is VERY limited. Register NOW!

Seattle, WA - April 20th - Apps at Microsoft Westlake/Terry offices
Portland, OR - April 27th - Games at Microsoft Portland Office
Boise, ID - May 18th - Games - Microsoft Boise Office
Bellevue, WA - June 1st - Games - Bellevue Civica Office

LINE OF BUSINESS APPS (Just April 20th Session)

Introduction to Windows Phone 7 Programming

In this session, we start with a discussion of windows phone, the architecture changes made from 6.5 to 7.0, the hardware specifications and then move into the beginnings of building a WP7 application including...

  • 1.Application life cycle
  • 2.Hardware Foundation
  • 3.Files associated with project template
  • 4.Splash screen and the importance of 1 second / 19 second loading
  • 5.Application Bar
  • 6.Panorama and Pivot controls
  • 7.MVVM
  • 8.Marketplace

Connecting to Services

In this session, we will discuss how Cloud Services help to bring power to the phone. We will be binding to a rest based services and show how to search and display the information received. In this session we will also talk about Navigation, passing information between screens, while working with List and detail information.

  • 1.Navigation
  • 2.Location
  • 3.JSON Deserialization
  • 4.Bing Maps
  • 5.Isolated Storage
  • 6.Binding Sample Data
  • 7.Navigation

Recording Data

In this session we will be adding to our knowledge and learn the importance of live tiles. We will show you how to set up a periodic agent and how to set up and read and write to a SQL Database on Windows Phone.

  • 1. Live Tiles
  • 2. SQL CE
  • 3. Background Processes and Periodic Agents
  • 4. Launchers and Choosers

GAMES DEVELOPMENT

Introduction to XNA

XNA Game Basics

  • 1. What is XNA
  • 2. Game Development Tools
  • 3. XNA Game Projects
  • 4. XNA Game Loop
  • 5. Debugging

Games Working with Images, Sounds and Text

  • 1. Working with Textures
  • 2. Playing Songs and Sound Effects
  • 3. Drawing text with SpriteFonts

Getting User Input

  • 1. Getting input on the phone
  • 2. Using the Accelerometer
  • 3. Using Touch Game State Management

Managing Game Play

  • 1. Keeping Score
  • 2. Tracking Health and Lives
  • 3. Adding Levels

Managing Screens

  • 1. Creating Multi-Screen games
  • 2. Loading content in the background
  • 3. How to pause the game

Managing State

  • 1. Phone Application Lifecycle
  • 2. Supporting Fast Application Switching
  • 3. Persisting and Restoring State

Silverlight and XNA Integration

  • 1. Introduction to Silverlight
  • 2. Silverlight and XNA Integration
  • 3. Creating a Silverlignt and XNA Game

Advanced XNA Games

Marketplace and Advertisements

  • 1. Understanding the Windows Phone Marketplace
  • 2. Submitting your Game to the Marketplace
  • 3. Adding Advertisements to your game

3D Games

  • 1. 3D Support in XNA
  • 2. Creating a simple 3D Game

Multi-Platform Games

  • 1. Building Games for Phone, PC and XBOX
  • 2. Other Multi-Platform options

Cloud Integration

  • 1. Using Windows Azure
  • 2. Social Gaming Toolkit

for more information http://www.winphoneunleashed.com/

Thursday, March 29, 2012

Windows Phone 7 Development Using Visual Studio 2010

with David Kelley and AppDev

Windows Phone 7 is a new step for Microsoft for the mobile platform. This course will introduce the mobile OS and how easy it is to use the.NET knowledge to create applications. The course will cover many introductory aspects of developing applications for the Windows Phone 7. For instance how XAML is used for applications and GUI designs. Also the course will cover many other aspects including controls, user input and forms, working with data, layout and Metro Controls. The course will also cover phone resources such as the Camera, GPS and many other items. To wrap up the course, the publishing the application to the marketplace and hosting of advertisements are covered.

In this course, you will learn:

* How to debug a phone application using an emulator
* About the PhoneApplicationPage and the PhoneApplicationFrame
* How layout controls are used including Grid, Canvas and Stackpanel
* Metro Basics and Phone Metro Controls
* About TextBlock, TextBox and other Form Controls
* What is touch eventing and working with events
* How MVVM (Model-View-ViewModel) works and learn how to use an asynchronous service in MVVM
* About lifecycle/tombstoning events including launching, deactivated and others
* Using media (Sound and Video) with the MediaElements and XNA Sound API's
* How to work with Bing Map Controls and Geolocation (GPS) Services

learn more at: http://www.appdev.com/prodfamily.asp?catalog%5Fname=AppDevCatalog&category%5Fname=W7DProduct&cookie%5Ftest=1#outline

Wednesday, June 15, 2011

Using HTML App Host Tasks from the ECMA Script Context

Using the task framework (http://htmlappwp7.codeplex.com/ and the taskprocessor are pretty easy. Basically it needs to look like this:

window.external.notify("Email:pieseczek@hotmail.com:Email from JavaScriptFWP7");

the format for calls are:

window.external.notify(" Task Name : Paramter1 : Parameter2 : etc ");

the current supported tasks include:

Email : To Email : Subject
SystemTray : Boolean Value
EnableFrameRateCounter : Boolean Value
alert : message value : message box title
play : sound uri path
vibrate : hours : minutes : seconds
MarketplaceSearchTask : app id
Analytics : Parmeters * n
MarketplaceDetailTask : app id
WebBrowserTask : URL String

There is also a custom event on the AppHostShell called ScriptNotify that allows you to extend what you can do with tasks for example in the code base the sample app does this extension from the custom event:


private void webBrowser1_ScriptNotify(object sender, NotifyEventArgs e)
{
switch (e.Value.ToString())
{
case "task1":
EmailComposeTask emailComposeTask = new EmailComposeTask();
emailComposeTask.To = "pieseczek@hotmail.com";
emailComposeTask.Body = "";
emailComposeTask.Subject = "Email from JSWP7";
emailComposeTask.Show();
break;
case "task2":
NavigationService.Navigate(new Uri("/About.xaml", UriKind.Relative));
break;
}

}

this gets around a limition with calling the navigation service that I'm currently working on.

Friday, May 13, 2011

Monetizing Phone 7 Application Methods and Approaches

The past 6 months have been a bit of a wild ride with Phone 7 going live and all the apps I’ve been working on. I guess I really started preparing for phone 7 the end of 09 heading into MIX 10 where I started building apps for the upcoming release. Going from 0 to making money with WP7 apps was kind of a long journey and this is my story, the story of Simon Said and my phone 7 obsession…

For several years there was this thing in the Silverlight Insiders (Super Secret Kabal of Silverlight Universe) about the upcoming new version of the MS phone/mobile platform and many of us knew about the two device directions and in fact knew people on the teams including the super secret design stuff going on in downtown Seattle. This kind of cloak and dagger thing drew our attention but most of what we had to work with for the longest time was conjecture, rumors and half truths. Thank goodness I wasn't a mobile 6.x MVP as I feel they really got the short end of the stick but the Silverlight MVP's had an awesome deal. Coming into MIX10 we had mostly all jumped on board and were building apps albeit for the longest time there were two few prototypes phones we could get our hands on that were weak and most of us were stuck with emulator which was horribly weak as well. (Currently we are still eagerly waiting for Mango, which is promising to be more awesomeness.)

Don't get my wrong, the Silverlight/WP7 team was working over time to get the new phone platform to market so the fact we got an emulator at all was great. Of course it wasn't long before this was hacked and we started getting our fingers into the OS and post the excitement of MIX11 the Dev community started to pick up momentum around the phone and building phone 7 apps. But the question in every bodies mind was will it actually make us money? and how could we be successful?

For the longest time no one wanted to talk about this aspect of the phone much, info was few and far between and hardly anyone knew anything or would tell you anything. Now that the market is open and we have been able to see some of the dynamics in action and some of us have made some money I'm hoping to help bring at least some of my experience to others. Let's start with understanding the basic revenue models that you can do on the phone.

Model 1: The Paid App

The paid application is the most basic model for making money. 'Free App's' do not constitute a revenue model by themselves w/o a more complex model. The idea of buying something, using the existing structure put in place, in a onetime fee sort of way becomes the most basic structure. On the good side this model is the most simple, you need only have a developer account ($99 typically albeit there are MS rebates if you get 2 apps into the market place), the tools which are free and an application. Issues with getting things approved aside, it’s just not hard to do but most of the people I know have not made money at this (at least not a significant amount). For the most part given the current market conditions and the expectation of free apps that developers have themselves propagated by educating the target demographic about the evils of paid apps has made this model difficult to use. The success that I’m aware of with this model have come with primarily with strong 'existing' brands and lots of marketing (any Xbox Live game as an example).

Model 2: Paid w/ Trial

The paid with trial model for making money is really just a variation on a theme from the first model and is only marginally more successful. For the most part all the examples I refer to about Paid apps is basically this model. So unless you have a good Xbox Live company you work for… its not likely you will be successful. Now that certainly can change as the market changes which will happen as the Windows Phone market becomes increasingly viable but not yet.

Ok so how I can Make money with phone 7 apps?

Model 3: Free w/ Advertising

The idea here is that an application is free to the user but you basically sell ad impressions to an ad service such as Microsoft AdCenter and show the ad’s in your application. Companies pay firms for the said advertising. The best part of this model is that it works. A good, well designed application that is targeted to a general demographic will work great. There are problems and complexities to this model but it is achievable to the average developers... When you are talking about AdCenter it really comes down to targeted ad’s. The better you can target your app’s ads the better your 'ecpm' value is which translates into more money. 'Ecpm' basically standards for how much a 1000 impressions of an ad are worth in your application. I’ve tested this and certainly the more you can tell the AdCenter control about your user and the more your ad’s are something that would interest your users the more money you make.

Model 4: Free w/ Paid Version

This model is basically a way of driving sales to a paid application. I’ve seen this one tried but with little success so far. I suspect this might become more viable as market dynamics/conditions change allowing more sales of apps to take place as a larger market share is formed around Windows Phone 7.


Model 5: Free w/ Advert w/ Paid Version

A forth model is a variation of the third. This model really doesn’t make a lot more then model 3 but I think it is well positioned to take advantage of how the market dynamics will change over the next couple years. What this model is, is two applications like model 4 but focused on advertising in the short term as revenue stream. In this model you have an application that is free with advertising that is also driving sales of a paid version. In most cases where I’m seeing success is when the free version is very popular with a built out feature set and not handicapped but at the same time the paid version looses ad’s but also might ad some premium feature. A simple example is that I have a morse code application in the market place that is free with a rich feature set from saving code blocks, sending and transmitting code etc. The paid version of course is w/o ads but also has a complex sound transcoding feature but for the most part the feature set is the same short the one. Then the free version doesn’t expire, is a good free app but also passively drives paid sales. Have a free app tends to drive many, many more eye balls and downloads.

Model 6: In App Purchasing/Purchase Upgrades

Ok here is a six model that can be used with the others and that is in app purchases. There is no market place support for this but if you have the ability to roll your own certainly it can be done. What this means is that in your app either paid or purchased the users has the ability to pay for additional elements, features or other purchases as defined by the application. Basically if you want to write the code you can do this but there is no current support for it however there is a nifty hack I learned about primarily it looks like this… You have this app, and then you have other apps in the market place are packs or expansions for the first app. These ‘pack’s give you a code or other set value that allows you to ad more elements to the first app, maybe some under the covers sync etc. A cool idea but really a bit of a hack and could be cryptic for users.


Case Study: Of a free app?

I have this one application in the market called 'Simon Said' that is now in the top 100 most downloads apps. This started off some years back with a demo project called 'Silverlight Simon' to show how to build composite WPF/Silverlight assets and controls. 'Silverlight Simon' being the case in point. Over the course of several years and 2 mvps 'Silverlight Simon' was in Silverlight, WPF, Surface, Azure, OOB and then the phone came along so I took the existing Simon game control and put it into a Phone 7 application shell and submitted it to the market place just to see that it could be done. At the time I didn’t really think it would be big but I did add the AdCenter control as I was trying all the basic models I could think of. ~3.9 million impression’s later and ~150,000+ downloads I’ve learned a lot about phone 7.

At first people would download the app and get upset that the animations lagged or the timing was slow but I was just focused on testing so Ignored this as the app description talked about this only being for testing and demo purposes but I kept getting issues and less than stellar ratings. I finally realized that there were tens of thousands of people downloading the app so I finally capitulated to building a new version optimized for the phone.

Now the Simon Says is basically a picture of Simon, 4 paths and a text box plus an app bar and the ad control and some code. The highly complex XAML that made of Simon needed to go and that turned out to be 90% of the problem. Most of the other features are implemented as separate views and a combination of a good design, well built app, a degree of familiarity and the AdCenter Ad control and the app being free has continued to drive the apps popularity as one of the top apps in the market place. Of course some guerrilla marketing helps too, a few blog posts, videos etc and its all good but as of late, if you’re a one man or women shop, free with advertising is the way to go.