Nokia Lumia Colours

image

I’m a Windows Phone kind of guy, and so I was expecting to like my new Nokia Lumia 800. But I wasn’t expecting to like it quite as much as I do. There have been some mutterings about battery life on the device, and I must admit that the first few charges didn’t last as long as I would have liked. However, I followed the instructions on one blog post and turned off the “Notify me when new networks are found” option for WiFi.

I’m not sure whether this has reduced power consumption or whether the Nokia has just got used to the battery and learnt more about how much charge/discharge it can take. Either way I’m getting better battery life than I used to get with the Samsung Omnia 7 and a lovely user experience. And Kinectimals is a really cute game.

I’ve ordered up some of the multi-coloured cases (Red and Blue look good to me) as I’ve always fancied having a bright coloured phone. Not sure about the green though.

Nokia Lumia 800 For Free-ish

Lumia 800

Very nice too

I only went into the Orange Shop to see what the phone looked like. I wasn’t really far enough into my contract to make it possible to do a upgrade right now. Except that the phone did look very nice. And I can probably find someone who will give me a few quid for my good condition Samsung Omnia 7 (which was until 30 seconds or so into the demonstration my favourite Windows Phone). But the deal clincher was a good one. Turns out that if you are an employee of the university you can get a 25% discount on your Orange phone bill if you take out a new contract. Which means that over a year I’ll save a goodly chunk of the upgrade price. So that was that. Where do I sign?

I’m now the very proud owner of a Nokia Lumina 800. The wheel has turned all the way round. I started out with Nokia phones all those years ago, with a lovely 7110 (the “Matrix” phone) and went through a number of Nokia devices before I jumped ship because the lure of writing programs for my phone just got too great.

And now I’m back with blue boxes. The packaging and presentation were excellent. The phone is a really, really well crafted object. It has quite a turn of speed compared with the Samsung (not that my old phone was ever much of a slouch). The camera is a step up too, and even takes reasonable flash pictures. I’ve got twice as much space for content and the screen is astonishing. It has the clarity of OLED but isn’t quite as “in your face” as the Sansung.

And it runs Cheese Lander.

Guide Text Entry in Windows Phone

image
The layout may not be perfect, but it is a lot easier than writing your own text input.

Some of our students are making quite a good job of Evil Squash. There are even a few Windows Phone versions out there, which is nice. One of the things that the game must do is ask the player for their name. Anyone who is using XNA for the game has a problem here, as text entry in XNA can be non-trivial. Unless you use the XNA Guide.

The Guide is a way that you can ask the user questions and do lots of other interesting things. I used it to write a silly program that asks the user for their name.

if (text.Length == 0)
{
    if (!Guide.IsVisible)
    {
        // display the guide

        Guide.BeginShowKeyboardInput(PlayerIndex.One, 
            "Name entry",       // title for the page
            "Enter your name",  // question for user
            "Fred",             // default text
            new AsyncCallback(gotText),  // callback method 
            this);                       // object reference
    }
}

This is the code that I wrote. It is part of the Update method. The variable text is going to hold the name that the user enters. If it is empty I must display the guide to read it. The first thing I do is to check that the guide is not already visible. If it is I don’t need to display it again. Remember that Update is called 30 times a second on the phone, I don’t want to be overwhelmed by loads of guides.

The BeginShowGuide puts the guide on the screen. The first three parameters make very good sense, the last two are a bit more confusing. The fourth parameter gives the Guide the method to call when the user has finished typing in their name and pressed OK to close the Guide down. The fifth parameter just needs to be a reference to an object that can identify the request. I’ve given it the value of this, which is a reference to the current game. The result of this method call is that the guide is displayed, as you can see in the screenshot at the top.

When the user closes the guide, either by pressing ok or cancel, the Guide will call the gotText method that I told it about:

void gotText(IAsyncResult result)
{
    if (result.IsCompleted)
    {
        text = Guide.EndShowKeyboardInput(result);
        if (text == null)
        {
            // user pressed cancel
            text = "Cancelled";
        }
    }
}

This checks to see if the request is completed. If it is the method gets the text from the Guide by calling EndShowKeyboardInput. If the user pressed cancel the Guide will return a null string. The code above sets the text to Cancelled, otherwise the text is left as whatever the user typed in.

My program just draws the name string on the screen:

image

You can find a sample project with this code in it here.

Windows Phone Camp Hull

Hull Phone Camp 1

Ben addresses the audience.

Ben and Joanna from Microsoft came to see us today and deliver a full afternoon of Windows Phone sessions. We had phones, programs, pizza and tea and coffee. But no biscuits. Sorry about that. Anyhooo, a great time was had by all. Thanks to Ben and Joanna (I keep thinking of ice-cream when I type their names like this) for coming all this way and back in a day.

We did some silly development and we spent some time making a really funky windows phone camera. I promised a download of the code, here it is.

Windows Phone Event at Hull University

DSCF5126

Microsoft are coming to Hull on Wednesday the 16th of November for some intensive Windows Phone Development action.  The event will run from 1:15-5:00pm in Lecture Theatre D in the Robert Blackburn Building. It includes an afternoon tea break, and takeaway pizza at the end.

If you want to find out how you can take your C# skills and apply them the phone, sell you applications and maybe even make some money, then you you should come along.

Spaces are limited so register on EventBrite for free here: http://hullwindowsphonecamp.eventbrite.com/

Windows Phone Blue Book 2011 is coming

Some Pages

The Latest version of the Windows Phone Blue Book is taking shape. It seems to have grown to around 250 pages of Windows Phone 7.5 Mango powered goodness. It has all new content including coverage of databases, sockets, Fast Application Switching and lots of other good stuff. It will be released with a set of assets including slide decks and labs for those that want to use it for teaching. Microsoft Faculty Connection will be making it available soon. All I know is that I’ve finished writing all the words…

Final Nokia Windows Phone Day

We did our final day today at the Emirates stadium today. Another great audience, with some properly detailed questions. Of course I took some photos.

DSCF4303
Underground Station

DSCF4310

That must be our train…

DSCF4332

Branded Water

DSCF4325

Funky keyboard

DSCF4324

Master Plan

DSCF4335
Some of the audience looking suitably impressed.

There are more pictures on Flickr.

After a good day of content we headed out. Thanks to the Nokia folks for making us so welcome at each venue (and there have been some great venues). Also, huge thanks to Andy and Gregg, a pleasure to work with you guys, and a big shout out to Stephanie who basically kept all us ducks in a row…

London Nokia Windows Phone Training

DSCF4189
Heading for the Emirates Stadium.

Today we started what will be our last Nokia Training event for Windows Phone. This one was rather special though, being based at the Emirates Stadium, home of The Arsenal football team. As well as doing our training, a chance of a trip around the ground was in the offing.

DSCF4228
They even had Arsenal branded WiFi access (this one has expired now…)

DSCF4239
The Hallowed turf

DSCF4267
Some of the delegates, more on Flickr. I’ll stitch a panorama when I get home, not got the software on the tiny laptop.

DSCF4272

Free Beer in a football stadium, what could possibly go wrong…

We had some lively discussions and I hope everyone got something out of the day. In terms of resources I said I’d put up links to the content. Here we are:

You can get all the content, slide decks and more, from the Jumpstart web site here:

http://borntolearn.mslearn.net/wpmango/m/mediagallery/default.aspx

The ones you want are:

01 Mango Building Phone Apps
02 Mango Intro Silverlight
03 Mango Advanced Silverlight
05 Mango FastApp Switching
11 Mango XNA Winphone
12 Mango Selling applications

There are also other decks and samples you might find interesting. If you want to watch videos of Andy and myself delivering this content (and who wouldn’t) then you can find them on Channel 9 here:

http://channel9.msdn.com/posts/Mango-Jump-Start-01-Building-Windows-Phone-Apps-with-Visual-Studio-2010

You can find the Tidy ToDo application here. To use the WCF server project you have to have IIS installed on your machine and you must start Visual Studio in Administrator mode:

https://skydrive.live.com/redir.aspx?cid=a4ce6a659fd80c02&resid=A4CE6A659FD80C02!1482

If you want to learn C# from the same text that we teach our students with at Hull, take a look here:

www.csharpcourse.com

There is also a copy of the Windows Phone 7.0 Blue Book there, which has some background on phone programming that you might find useful.

Nokia Windows Phone Training Day 2

DSCF4062

Not a bad way to start the day. Cooked to perfection as well.

Final day of training in Berlin today.

DSCF4064

This time we were in the slightly more intimate surroundings of the cafe next to the college we were at yesterday. Really nice setup, with fantastic food. The food has been really good everywhere I’ve been on this tour.

DSCF4068

They had even branded the conference table upstairs, which was rather sweet.

The German audience stayed tough on us. One of the things that I reckon is that if a course goes well the audience learns a lot. If a course goes really well, the teacher learns a lot too. And that is how it has turned out. Some of the technical questions that we got really had us digging deep to find answers and even writing test programs to show what was going on. And I now have ideas for a whole bunch of blog posts about Windows Phone development that I must write down before I forget.

Then it was straight to the airport to fly home. Busy day tomorrow. Is there any other kind?

Nokia with Windows Phone in Berlin

Today we did the first day of our Windows Phone training in Berlin. Of course I took pictures.

DSCF3900

Not a bad view when you are having breakfast

DSCF3955

What we are here for

DSCF3956

Badges

DSCF3999

They even had branding on the floor…

DSCF4015

Jens Dissmann of Nokia Germany gets things started

DSCF4018

A great audience, with some really tough questions.

I said I’d put up links to the content. Here we are:

You can get all the content, slide decks and more, from the Jumpstart web site here:

http://borntolearn.mslearn.net/wpmango/m/mediagallery/default.aspx

The ones you want are:

01 Mango Building Phone Apps
02 Mango Intro Silverlight
03 Mango Advanced Silverlight
05 Mango FastApp Switching
11 Mango XNA Winphone
12 Mango Selling applications

There are also other decks and samples you might find interesting. If you want to watch videos of Andy and myself delivering this content (and who wouldn’t) then you can find them on Channel 9 here:

http://channel9.msdn.com/posts/Mango-Jump-Start-01-Building-Windows-Phone-Apps-with-Visual-Studio-2010

You can find the Tidy ToDo application here. To use the WCF server project you have to have IIS installed on your machine and you must start Visual Studio in Administrator mode:

https://skydrive.live.com/redir.aspx?cid=a4ce6a659fd80c02&resid=A4CE6A659FD80C02!1482

Mango and Visual Studio 2011

DSCF3729

Spent a little chunk of today upgrading my Windows Phone to the proper version of Mango. Some time ago I was lucky enough to get hold of the Release Candidate for Windows Phone 7.5 and last week they released the final version. When we did the Release Candidate upgrade we were told to make a backup of the phone and keep this safe, safe, safe so that we could revert back to the version from the mobile operator (in my case Orange) and then apply their upgrades too.

Of course I lost mine.

I can’t really think of a good excuse either. I just went back to where it should have been and it wasn’t there. I think I confused CTRL+Drag (copy) with Drag (move) and then ended up with one less copy of the file than I thought.

Never mind, the good news is that the Windows Phone folks have supplied an update that removes the need to return to any backups. This is also nice because it means that any SMS messages, phone calls and other stuff in the really useful messaging threads will stay up to date. The update runs twice, once to put the latest version of Windows 7.5 on your device and again to reconnect the phone to the update servers from your mobile operator. It works well, in fact the first thing that happened after I’d done all this was another update from Samsung.

If you have upgraded your phone to Windows Mango Release Candidate you should be getting the messages about upgrades real soon now. I’ve not noticed much new about the new version yet, but then the Release Candidate was pretty darned solid anyway.

Make sure that when you do the backup you do it on a machine which the phone is synchronised with. That way it will take (another) backup that might be useful in the future. I’m going to try very hard not to lose this one.

Milan Nokia Jumpstart Partner Day

Milan Partner Day

This is the audience at the Nokia Windows Phone Partner day sessions today. On the far right you can see Gregg and Andy. Another great audience, some really good questions (and a chance to see an astonishingly fast Alienware laptop – the red one in the middle).

The Microsoft office in Milan is brand new and in really nice countryside. I took a few minutes before we started to take some pictures.

DSCF3729

Not a bad outlook.

DSCF3736

This would make a reasonable desktop background I reckon.

Oh, and there is no truth in the rumour that Andy, Gregg and myself were actually here for Milan Fashion Week.

Nokia Windows Phone Jump Start Milan

DSCF3531

Today we are in Milan. Great audience again, although they could have looked a bit happier when I took this photograph….Click through the image to my Flickr page, where there are some more pictures. For those of you at the event (including Antonio) you can get all the content, slide decks and more, from the Jumpstart web site here:

http://borntolearn.mslearn.net/wpmango/m/mediagallery/default.aspx

The ones you want are:

01 Mango Building Phone Apps
02 Mango Intro Silverlight
03 Mango Advanced Silverlight
05 Mango FastApp Switching
11 Mango XNA Winphone
12 Mango Selling applications

There are also other decks and samples you might find interesting. If you want to watch videos of Andy and myself delivering this content (and who wouldn’t) then you can find them on Channel 9 here:

http://channel9.msdn.com/posts/Mango-Jump-Start-01-Building-Windows-Phone-Apps-with-Visual-Studio-2010

Nokia Paris Partner Day

DSCF3445

We had our second day in Paris as part of the Nokia and Windows Phone tour. Great fun. At lunch we ended up right on top of the building, looking out over the river and the Paris skyline.

DSCF3452

Photogenic train

DSCF3455

Taking lunch

DSCF3462

Nice afters too….

The delegates were another great bunch, and were even kind enough to laugh at my “favourite computer joke in all the world”.

DSCF3465DSCF3464

Some of the audience.

DSCF3468

CDG airport terminal on the way back looking good.

We are taking the roadshow, and my favourite jokes, to Milan next week.

Nokia Windows Phone Jump Start Paris

Andy, Gregg and myself have just had a great day talking Windows Phone. DSCF3291   DSCF3292

Hi to the audience, great job folks

DSCF3293

This was on at the same time in the conference centre. I was able to use the line “It’s not Rocket Science. That’s next door….” I said I’d put links to the content we described. You can get all the content, slide decks and more, from the Jumpstart web site here:

http://borntolearn.mslearn.net/wpmango/m/mediagallery/default.aspx

The ones you want are:

01 Mango Building Phone Apps
02 Mango Intro Silverlight
03 Mango Advanced Silverlight
05 Mango FastApp Switching
11 Mango XNA Winphone
12 Mango Selling applications

There are also other decks and samples you might find interesting. If you want to watch videos of Andy and myself delivering this content (and who wouldn’t) then you can find them on Channel 9 here:

http://channel9.msdn.com/posts/Mango-Jump-Start-01-Building-Windows-Phone-Apps-with-Visual-Studio-2010

After the sessions we went up the tower. Used the stairs. Cheaper and no queues. Great fun

DSCF3382

More tomorrow. Looking forward to it.

Welcome to Paris–Mostly

DSCF3269

I’m here in Paris as part of the Nokia Windows Phone Jumpstart tour. Should be great fun. It starts tomorrow. Our hotel is just across the road from the tower in the picture, which is really nice. With a bit of luck we might find time tomorrow to go up it.

But I have learned one thing about travel, and that is “Don’t go abroad with a brand new, recently imaged” laptop and expect for stuff to keep working”. I tried to log in to Facebook and it said “Aha! Not seen this machine before and Rob seems to have changed country. I’ll lock him out”. Not a huge problem in the great scheme of things, but very irritating all the same.

I logged into the Facebook site to try and fix the problem and Facebook went “Aha! We are in France, I’ll give Rob the French version of the site and no obvious way to change this”. So now I’m being asked security questions in French about things I’ve never told it. The last five characters of my driving licence? As if? So I plump for a Facebook innovation, passwords by pictures. This was even more disastrous. I have quite a few friends, and many I have never actually met in person. So I don’t know what they look like.

Towards the end Facebook threw in the towel I reckon, and showed me some pictures of family members. That worked and I’m now back on line again. But my Flicker account steadfastly refuses to work. They’ve made it so secure it is unusable.

Windows Phone vs Windows 8

Leeds

I’ve been playing some more with Windows 8 and reading a bit about how it works. Very interesting. The thing that I find most surprising though is how unsurprising a lot of it is to me. I think this is because I’ve been deeply into Windows Phone development for the last 18 months or so. The Metro user interface and the use of XAML to design the front end are just how I think about doing things, based on my Windows Phone experience.

The underpinnings of the operating system, with this new Windows runtime are the really fascinating parts, but if you just want to write Windows 8 applications using C# and .NET you could do a lot worse than get hold of the Windows Phone SDK and have a play. My guess is that when the Windows 8 Marketplace opens up it will have a very similar way of working to the Phone one too, so you would also be able to get experience in how to publish programs.

I thought at the time of the Windows 8 keynotes “We are all Windows Phone developers now”, and I reckon this is definitely the way things are going to go.