Archive for February, 2007


ASP.NET AJAX, WPF, WPFe? What does it all mean?

There’s nothing like getting a quick 10 minute overview of a technology to get you started… but which blogs do you look at, which examples are worth exploring?

Andrew Shorten has pulled together a great set of getting resources to get you started with the Microsoft rich experience technologies, covering ASP.NET AJAX, WPF, WPFe, Windows Live and the new Expression range of tools.

You can get the 10 minute intros here:


A question at recent events was… Flash or WPFe?

I’ve attended a number of events over the last few weeks, Designertopia, WebDD, Media Technology Day at Microsoft and the Future of Web apps. During these events a couple of questions have cropped up more than others, firstly isn’t WPF/e just the same as Flash, should I use WPF, WPFe, or XBAP and finally the more general, which technology should I use?

The first question is the one I’m expecting to hear most as we continue talking to the general designer community and in many respects it reminds me in some regards to the old isn’t Flash just the same as Director discussions from many years ago. The end content looked similar, yet the journey to produce that end content was totally different.

In reality I think this is what is happening with WPFe and Flash today.

Designers who have lived with Flash for the last 10 years are picking up WPFe, kicking the tyres and recreating the same kind of work you can create in Flash… from an external point of view for someone looking at the finished work there seems little or no difference, but the journey to get there is totally different.

Well if we ignore the fact that as of today there is no IDE for WPFe which tends to put the brakes on the design process (watch this space though), when you talk to those designers and developers already experimenting with WPFe the difference between WPFe and Flash is stark.

Taking a simplistic view Flash provides a wonderful environment for building self contained applications or widgets, essentially self contained interactive web real estate. It’s a binary file format that recreates a lot of the same functionality as HTML, drop down menus, scrollbars, etc, and it needs to do this as Flash is an island of interactive content within the HTML page. Flash has a robust development language; ActionScript which enables some truly amazing experiences to be produced, but Flash remains something that exists as an element on a page rather than existing as an integrated part of the page.

WPFe tackles the same area of rich content but from a different direction. WPFe could be considered as an extension of HTML and AJAX rather than a standalone technology like Flash. It’s not a binary file format and instead exists as a combination of XML and Javascript. WPFe content is blended into the page in addition to the technology and therefore doesn’t replicate the functionality of the technolgies that already exist.

Flash replaces parts of the page to provide a richer experience, and WPFe extends the page to provide the richer experience.

The end result of both technologies is a richer, and hopefulley better(!) browser experience.

So, when it comes to the wire which technology is better Flash or WPFe. Well I work for Microsoft and left Adobe/Macromedia after 7 years to be here so it’s obvious which direction I prefer. But that decision was a personal one.

It’s all too easy to cloud pragmatic judgements in the real world of end users, deadlines and clients; there is no black and white, right or wrong, it’s all shades of grey and it’s about using the right technology for the right project to deliver the best experience for the user.

For the developers and designers the choice in the long run will probably fall to the technology that fits in with their production model better.

The one thing that we should never forget is that for the client and particularly the end user they don’t really care about the technology – they only care about the experience.


Where do I get started with UX?

That’s the question that Will and Chris asked over at DesignThinkingDigest and to help out they’ve put together a great list of books that can be used for reference or instruction, check out the post here… Where do I get started with UX


Date for the diary, Feb 21st: WPF and Expression Technical session with the team

In December Tim Sneath brought about twenty members of the WPF team together to answer your technical questions and listen to your feedback.

Well that worked well so we’re doing it all over again 🙂

This time the team will be covering both WPF and Expression Blend. If you’re working on a WPF application as a developer or designer, or even just thinking of using WPF, it’s definately worth coming along to heer what’s going on and have the opportunity to question the team directly.

Ideally in addition to the usual Q&A we’d love to hear feedback on what we’re doing right and wrong with WPF, and what you’d like to see in the next release of WPF?

The chat takes place on Wednesday, February 21st 2007 at 7pm UK/GMT, 8pm Europe (that’s 2pm Eastern, 11am Pacific). Use this link to add an appointment to your calendar, and use this link to enter the chatroom on the day of the event.

Grab yourself a cup of tea (or something stronger) settle down and join the team.

Spread the word around, and hope to see you there!


Vista re-built in WPFe

When I was at Macromedia it was always amazing how quickly the community would start producing amazing work with a new version of the authoring tool or player. It looks like nothings changed now I’m here at Microsoft.

Ok so it’s early days for WPFe… the second CTP was released last week (ie pre-beta) and already people, in this case you’ll need to brush up on your Slovenian, are doing some amazing things with it…

This is a ‘simulation’ of Windows Vista. I think what’s great about this example is while most of us are kicking the tyres, working out the best way to blend WPFe with Ajax, whether to render on the server or within the browser etc, these guys have gone and produced something that pushes the boundry. In fact I’m sure if you’d asked anyone at Microsoft whether this would be possible on the first CTP – the answer would have been no.

Great work… I can’t wait to see how the community starts to use WPFe once it’s a fully realised technology. (Mike Harsh picked this up last week – you should check out his blog for all the latest WPFe goodness)


Final two Boot Camp drivers for Vista

Two fingered trackpad scrolling, trackpad right click and a working iSight camera – finally everything is up and running on my MacBook Pro running Vista Ultimate 🙂

There is one small gotcha with getting the drivers working after sleep or hibernation but we cover that at the end of the post.

The iSight was the easier of the two as all I had to do was install the latest driver from the Boot Camp 1.1.2 drivers disk! I’d never tried this before as there was no indication that it had been updated – it has – and it works 🙂

I’ve missed two fingered scrolling – it’s one of those things that once you’re used to it you want it on every machine. Well now you can have it on Vista as well. Essentially putting two fingers on the trackpad allows you to scoll pages up and down without having to resort to the scoll bar. Putting two fingers on the trackpad and clicking the trackpad button will also produce a right-click.

To get this working just follow the next few steps – it’s just a matter of getting the right driver on the right device… if you need to find out how to extract the device drivers from the Boot Camp drivers CD just see this previous post…

1: Open the ‘device’ manager – just hit the windows key and type ‘dev’ – the first option is normally the device manager

2:  Open out the Human Interface Devices option, and the trackpad is one of these devices – which one may depend on your configuration but mine was the 3rd USB HID device. The quickest way to find out which is controlling your trackpad is to plug in a mouse and then test each device one at a time by disabling it. When your trackpad has stopped working you’ve found the right device to update.

Just remember don’t disable your mouse and trackpad at the sametime 😉

3: Right click on the ‘USB Human Interface Device’ that belongs to your trackpad and select ‘update driver software’ from the menu. A window opens and presents you with two options, choose ‘browse my computer for driver software’.

A second window opens, from these two options choose ‘let me pick from list of device drivers on my computer’.

The following window opens and you need to choose the ‘have disk’ option.

4: Navigate to the ‘aapltp’ folder in your Windows XP drivers folder. You should have one option and this is the driver for the trackpad, select it and press open.

5: You’ll be taken back to the driver window and now you’ll see Vista has recognised the Apple Trackpad driver – choose ‘next’.

6: At this point you’ll get an error – choose ‘install this driver anyway’

7: You’ll get taken back to the device manager and you’ll see a new option in your ‘USB Serial Bus controllers’ called Apple Trackpad – well now your good to go. You’ll have double finger scolling, put two fingers on the trackpad and you can scoll the selected window, put two fingers on the trackpad and click the trackpad button and that counts as a right-click.

The one big gotcha with both of these drivers is that they will not work after sleep or hibernation, and will only come back to life after a restart!

However…  over on Brandon’s blog there is a solution for the Trackpad/hibernation/sleep issue. This doesn’t involve a hack – we simply tell Vista to restart the driver when the machine wakes up. The great news is the exact same steps also work for the iSight driver as well 🙂  (update: iSight still occassionally fails after hibernate – will add an additional post if this get fully resolved)

Nice work Brandon !

Just one thing to note on Brandon’s instructions on step 12 your ID will almost certainly be different so go to the device manager and get the right ID code. When you look for the Hardware ID both devices (trackpad and iSight) will have two IDs, copy the shorter one each time.

And that’s the lot… if you’ve seen my other posts on Boot Camp and Vista you now have everything from Keyboard backlighting and Bluetooth through to two fingered scrolling. Result 🙂


WebDD… Vista saves the day from hell…

This was one of those days when if something could go wrong – it did.

I was on the schedule to present the first session on one of the three tracks at WebDD, a community event held at the Microsoft Campus in Reading. I’d been at Designertopia for the previous 2 days so was leaving London early to make the start in plenty of time… best laid plans and all that…

I got to the NCP car park at about 7.20am… and it was closed… it should have opened at 6.30… not a good sign! After 10 minutes pressing the buzzer I found the NCP number to call for help… eventualy after 20 minutes I managed to get into the car park… phew! Times a bit tight but still ok. As I get to the car the attendant tells me the credit card machine isn’t working and I need to pay in cash! Now anyone that has parked in London recently knows that it’s v.v expensive. I’d been parked for 3 nights and 2 days and the bill came to £115!

So now it was time for a bit of early morning exercise as I made a quick dash to the nearest cash machine… by the time I got out of the car park it was just after 8am… now time was tight.

Well somehow I managed to get to Reading on time (just)… I arrived in the seminar room set up, checked the set up, double thumbs up, everything is ready to go. Time to relax… 20 minutes to go before the actual presentation so I thought I’d just grab a drink and some food as I hadn’t had anything since I’d got up at 6am.

At that moment the technican commented on the plasma screens around the room not being able to cope with the resolution I was running (the projector was fine), one of the plasma screens had a slight flicker as well so the technican stood on one of the seats to fiddle with the controls… (these seats are fold up cinema style seats) at which point he slipped… his foot jammed down between the back and the bottom of the seat and he was stuck.

I mean REALLY stuck… 15 minutes to go from the start of the presentation and the technican is stuck with his foot jammed in a seat in the MIDDLE of the room! So there’s Phil, Dave and I pushing and shoving this guys foot from underneath, trying to leverage the seat apart, take his shoe off… still stuck!

10 minutes to go!

One final attempt and… his foot comes free… phew!

5 minutes to go! All’s good… no time for food or drink but at least the rooms set.

At that point Dave asks if he can put a few slides on my machine. Sure… no problem. He puts in his USB stick and nothing happens. He casually mentions that it didn’t work on a machine earlier either… hmmm… I could see Vista had started downloading the driver… a driver for a USB stick… that’s not a good sign I thought…

People were now entering the room for the start of the presentation, 2 minutes to go, the driver finshes installing and then the machine STOPS… a couple of choice words ficked through my mind as I did a hard reboot. Anyone that gives presentations knows that having to do a reboot at the exact moment you’re meant to be starting the presentation is not a good sign!

Vista on average takes about 30 seconds to boot from cold… not this time! About 3 minutes later the machine had just struggled into a usable position… the resolution had dropped from 1440 to 1024, apps were taking 10x longer than normal to open up, this driver was obviously bad and taking a lot of cycles to do nothing… (The guys over a Low End Mac have a post today about driver issues on both OSX and Windows…

We’ll I managed to nurse the machine through the presentation of Expression Web without too many further issues but I’d got another presentation coming up !

Arriving at the next room I found the previous speaker was over running by 15 minutes, through the break and 5 minutes into my session… I’d rebooted my machine outside the room and expected to plug in and go… I plugged in and DIDN’T GO… the keyboard drivers for boot camp on my Mac had stopped working so I couldn’t CTRL, ALT, DEL to get into the machine and machine was now running at 800 x 600! Oh boy! Where’s Dave! I want to tell him what to do with his USB stick 😉

What to do? I quickly nipped out of the room and asked John my colleague to grab a external keyboard for me.

Back in the room I started to explain about the different technologies and products while waiting for the keybaord to arrive, luckily as soon as we plugged it in we were good to go… except… I was now running at 800 x 600 and I couldn’t get the monitors to mirror… so to at least show something to the very patient audiance I decided to do the demo using only the projector image.

Not an ideal set up… my machine was on a podium 4 feet to the side of the screen and 4 feet in front of it… being on a podium you can’t turn the machine round so I had to run the presentation and demo facing the audience twisting my head round to look at the screen… I LOVE days like today!

Then I opened Expression Blend to move into the main part of the demo… and… the machine froze again! DAVE!!! DAVE! Let me tell you what I think about that USB stick of yours!

John had seen my presenting predicament and had nipped out of the room to fetch his machine for me… we did a quick swop and had Blend on screen – still only on the projecter and now with no demo files 🙂 but at least I could show the product 🙂

Blend is an amazing product… it just rocks… it ROCKS! Even though the demo had been cut short by the technical difficulties I think people could really start to see the power of the product and the workflow advantages of XAML.


…John had been working away beside me on my Boot Camped Mac and had used Vista’s restore feature to wind back time to BUSI (Before USB stick incident). The machine booted and ran perfectly… allowing me to do a quick final 5 minutes with real demo files, and some great samples 🙂

Obviously system restore was in XP as well, but in Vista it’s easier to use and find than ever – and it works like a dream !

Note to oneself:
1: Always pray to the demo gods.

2: Never let Dave Sussman near you machine with a USB stick 😉  Well at least, not if you’re about to do a presentation!

3: Always pray to the demo gods.

3: Remember – ‘System Restore’ – it’s a life saver.

4: Did I mention… always pray to the demo gods 🙂

What a day !