Category Archives: windows

The best and worst of Vista multimedia

A friend called on Christmas day. She was away from home and had forgotten to set the video to record a couple of TV programmes. We’re testing Vista media center, so it was a matter of going to Vista’s TV guide, scrolling to the programmes she wanted, and selecting Record. What about the transfer to DVD? Next day, I selected Recorded TV, and scrolled through the recordings, each of which has a preview image. When I found the right one, I clicked on it and noticed that Burn CD/DVD was one of the menu choices. So I stuck a blank DVD -R in the drive, clicked Burn CD/DVD, and a while later (quite a long while) it was done. Tested the DVD in a standalone DVD player and it worked fine. I don’t miss VHS one bit.

Now have a read of Peter Gutmann’s Cost Analysis of Windows Vista Content Protection. Gutmann is a security specialist who describes himself as a professional paranoid, which perhaps explains the tone of the piece – he calls Vista’s content protection a “suicide note”. I doubt he is correct in all his conclusions, but nevertheless it shines a fascinating spotlight on this aspect of Windows Vista.

It has always been possible to make unlicensed copies of media such as music and film, but in the pre-digital world it was inconvenient and always involved some loss of quality. Personal computers changed all that, particularly when combined with the cheap storage which we now have in abundance. This is bad news for industries that depend on selling this content rather than giving it away. Hence Vista tries to put media back into its uncopyable box, so that once again you have to purchase the official item.

A single pinprick is enough to burst a balloon, no matter how airtight the rest of it is. Similarly, to protect media you have to protect every link in the chain, from digital source to final output. Vista calls this the Protected Media Path; read the MSDN article here. The system is intricate and complex, and as Gutmann notes there are undesirable implications. The Protected Environment (PE) relies on “trusted components” such as drivers, codecs and content processors. Each component must therefore be signed by Microsoft after a verification process. But what if a bug or design flaw has slipped through, allowing content to be pirated (a pinprick)? Then the component can be “revoked”, which means some hardware or feature in your system will no longer work properly. Content publishers can even specify that their content will not play if a component known to be unsafe is present, by checking against a revocation list.

Ideally, a revoked component will be replaced by an automatically downloaded update. However, Microsoft’s document on the subject acknowledges that this may not always be the case:

In rare cases, an updated version of the component may not be available, for example, the company that implemented the component has gone out of business. If the component is not essential, the PE can work around the issue by not loading the component. If the component is essential, the application is provided with a URL that directs the user to a Web page that has information on the issue.

That might mean no more protected content for you unless you actually replaced the hardware with something else for which trusted components exist. I presume however that you would still be able to play unprotected content. Still, this would be a severe outcome if, for example, you had a large collection of HD-DVD movies that you played on the system.

It is understandable if hardware vendors such as ATI are unenthusiastic about all this. They have to do the work of creating suitable hardware and drivers, but the beneficiaries are the owners of the protected content.

Several obvious questions come to mind:

  • Will this really work? Such a complex system must be vulnerable to the efforts of determined hackers, as other DRM schemes have been in the past.
  • When playing protected content, what are the performance implications?
  • How about when playing unprotected content ? What, if any, is the performance impact of all this content protection then? Perhaps there is none. It strikes me though that there could be unwanted side-effects.

The existence of this DRM edifice also impacts all of us as consumers. When we purchase content, we’d like to be able to play it on as many devices as possible: home stereo, wireless streaming around the house, computers, portable devices. Technology is at last enabling this freedom, but now technology is also taking it away.

I’ll come back to where I started. Whether Vista content protection stands or falls will depend on the user experience. If it is good, as with my DVD burning from media center, then consumers will forgive a lot, to the frustration of anti-DRM advocates. That’s why Apple gets away with the iTunes store/iPod lock-in. If it is bad, this will damage Vista and Microsoft.

Update

Interesting thread here on audio processing in Vista. Here’s what Amir Majidimehr, digital media VP at Microsoft, has to say about DRM in Vista audio (and referring specifically to Gutmann’s piece):

The writer unfortunately, is misinformed about the Vista content protection capabilities. Yes, it is true that Vista has a substantially upgraded *infrastructure* for content protection. However, its usage is optional and no application is forced to use it. To wit, current HD DVD/BD players do not use any of it and as such, are only subject to provisions of copy protection for those formats (namely, AACS). Ditto for any third-party application that you may run on Vista. As long as they don’t call the new facilities, they run as they did always.

So for all practial purposes, Vista and XP behave the same wrt to playback of digital media.

Vista does allow new applications to provide a new level of robustness against attacks should they wish to provide this level of content protection. That may enable them to get access to content that would not be available otherwise (think HD downloads near Theater release window). As this feature required core operating system changes, we incorporated them into Vista. As with all new facilities, it may be years before they are taken advantage of.

That’s reassuring with respect to my third question above.

Farewell to consistent UI on Windows

Dare Obesanjo says 2006 is the year Microsoft gave up on consistent UI. It’s a follow-up to a post by Mike Torres in which he identifies inconsistencies in various new apps from Microsoft this year. One thing they all have in common is that traditional menus are deprecated, either hidden by default (IE7, Windows Media Player 11) or not available at all (Office 2007).

The reason this is happening is the influence of the Web. The Web gives designers a lot of freedom over how applications are designed, especially in conjunction with Flash. The Web also forces app developers to find some alternative to the traditional menu bar, since it has a page model rather than a window model. Standard desktop apps with File and Edit menus now look dated.

Microsoft has embraced the new designer religion, with the innovative Office 2007 UI, the Expression range of designer-oriented tools, and the Windows Presentation Foundation which gives far more freedom to UI designers.

Nevertheless, Microsoft has slipped up here. The differences that Torres identifies are bewildering to users. I predict that the company will settle on some specific approach (probably the Office ribbon) and try to enforce it throughout. Visual Studio with a ribbon UI?

It means developers have a tricky choice to make with new applications. Broadly:

  1. Stick with tried and tested menus and toolbars until things settle down.
  2. Adopt the ribbon, facing the sign-or-don’t-sign dilemma.
  3. Do your own thing, after all everyone else does.

For an in-house app I’d suggest (1). Menus and toolbars work pretty well, everyone knows how to use them, and most important, it is a lot less work. Further, when non-designers try to take a design-centric approach, the results are invariably ugly.

Technorati tags: , , ,

Why does Vista think my documents are music?

One especially memorable Microsoft bug was in Word 97. You would be typing away, and then Clippy popped up with a balloon saying “It looks like you’re writing a letter.” Invariably you were not. The phrase is referenced over 9,000 times on the Internet according to Google, proving that this blunder has indeed passed into tech folklore.

I guess some team put considerable effort into Clippy and thought it was making life easier for non-technical users.

I was reminded of this when I noticed Vista had decided that my Documents folder contained music. I’ve fixed this folder now, but I found another one to illustrate this blog. I promise I did not configure this manually; Vista did it all on its own:

As you can see, Vista’s Explorer is presenting a folder which happens to contain some Java code as if it were a music folder. There are options to play the files, or burn them to a CD, though I don’t suggest you try. It is actually fairly annoying. When I first hit this problem, I wanted to see the file sizes and dates. I realized it was a View problem, so I hit the View dropdown. I set it to Details, no joy. I tried Organize – Folder and Search options. Lots of options, none any use. The solution is to right-click one of the files and choose Customize this folder. Then you get a dropdown where you can set the folder type. All Items works fine for me.

Just an annoyance, no big deal. It’s disappointing though. Two obvious questions:

  • Why is Vista automatically setting folders as Music when they don’t contain any playable files?
  • Why doesn’t the View menu help me to view the files differently?

It reminds me of Clippy because it is another example of software trying to be over-helpful, and ending up obstructing rather than improving the user experience.

In closing, let me say that I prefer Vista to XP for all sorts of reasons, and software compatibility is proving less of a problem than I’d expected. And good user interface design is very, very difficult. So take this in that context.

Technorati tags: , ,

Bugs in IE7 RSS platform?

I welcome the introduction of the RSS platform in IE7; I think a central repository for RSS feeds is a great idea, even though Outlook’s RSS integration strikes me as totally broken

But is it reliable? I was using it to browse Jensen Harris’s excellent blog and noticed that the entries were from somebody else. A look at the feed properties reveals all:

It appears that the RSS store had somehow zapped the blog, but kept its title attached to a different feed, Bruce Schneier’s security blog as it happens.

I don’t think I have much hope of discovering why this bug occurred, unless someone from the team would care to comment, but it does cast doubt on the RSS store’s reliablity. Or could it be a problem with my blogreader app? The only time this writes to the store is when it marks a feeditem as read, which it does by setting the IsRead property on a FeedItem reference. Strange.

Technorati tags: ,

XNA, XBox 360 and the decline of computer science

I promised some more comment on the conference on XNA game development last week. It was a fascinating event, not so much because of sparkling content (though it was good), but because of the underlying themes. This conference was for the academic community, both students and lecturers. The idea was to promote the adoption of XNA on computer science courses. Presenters included members of Microsoft’s XNA team, Nick Burton who is a graphics programmer from Rare, and Peter Molyneux from Lionhead.

XNA is Microsoft’s new framework for games development. It is a .NET wrapper for DirectX, and a replacement for the earlier Managed DirectX libraries. You can create games for both Windows and XBox 360. The initial target is student and hobbyist developers, and the development kit is free except that to deploy to an XBox 360 you have to join the XNA Creator’s Club, for a modest subscription fee. Even then, you cannot distribute your 360 game except as source code to other club members; you would need to find a publisher or get the game on XBox Live Arcade. A future XNA studio product is planned which will target professional developers.

There is an obvious benefit to Microsoft if it can establish XNA in universities. It gets students familiar with the Visual Studio/Windows platform and helps foster the next generation of Windows and XBox 360 game developers. But what’s in it for the universities?

Here the context is important. There is a crisis in computer science, with dramatic falls in the numbers of students applying for courses. I spoke to Rob Miles, lecturer in computer science at the University of Hull. “The number of people applying to courses across the country has dropped by something like 40% over the last few years,” he told me. Including games programming in the syllabus is a bit of sugar to attract new students. “It will help me motivate students to want to learn to program,” said Miles.

Microsoft says XNA will help to address another crisis, this time in the games industry itself. Developing a game has become extraordinarily expensive. The industry has moved towards the Hollywood model of big-budget titles that can make or break their publishers. Gamers on the other hand complain of too many sequels, lack of innovation, and poor gameplay. Microsoft likes to talk up XNA as the future YouTube of games, recovering the community and excitement that was around thirty years ago, in the days of the BBC micro and other home computers.

Here XNA is competing with Flash, which already has a considerable community of game developers. XNA is vastly more powerful than Flash, but for small, easily deployed games Flash has many advantages including cross-platform support and browser integration.

Is XNA just another hobbyist game programming tool, likes others including AMOS and STOS (for the Amiga and Atari ST), or more recently DarkBASIC? There is a range of opinions here. Peter Molyneux enthused to me about XNA, saying it is “a fast, efficient, better language” than earlier more compromised tools, and “built with ambition in mind,” so that XNA programmers can create the next Populous (the game which made Molyneux his fortune).

On the other hand, Molyneux undermined his evangelism by also stating that C++ remains the language of choice for professional development. If this is the case, then XNA will always be a hobbyist niche, which implies that serious students of game programming should not waste too much time on it.

Not everyone takes this line. The Rare team has spent time with XNA and appears genuinely impressed with its capabilities. Nick Burton showed us both the dramatic reduction in code and the impressive performance of XNA code. While Rare is not yet using XNA commercially, it does expect to do so in a few year’s time. This might be some sort of mixed code, using XNA for game logic and C++ for graphics heavy lifting, or might be pure XNA. A factor for Rare and any professional game studio is the extensive C++ code library which it has built up over the years, which makes any quick move to another platform out of the question.

My view is that the productivity win makes XNA or something like it inevitable in games development at every level. Timing is another matter, and C++ will be hard to shift.

Finally, a couple of hot snippets of game gossip. One is that Rare is working on a Live Arcade title. I got the impression that it is fairly well advanced, though nothing is yet formally announced.

The other is that Molyneux talked up innovation in Fable 2. He told me that it has an unique and surprising feature which he had to fight to include, and which will be unveiled in March at the Game Developers Conference in San Francisco.

Microsoft’s XNA site is here. Note that if you want to develop in XNA, you are well-advised to get hold of the wired XBox 360 controller. It is a decent controller and works nicely with XNA both on Windows and 360.

Technorati tags: , , , , , ,

Installing XNA Game Studio Express on Vista

Yesterday I attended a conference on XNA game development. More on that soon; but first a quick note on what happened when, fired with enthusiasm for XNA, I installed the release build of XNA Game Studio Express on Vista.

At least I tried. You have to install Visual C# Express first (since for some reason XNA does not work with the grown-up Visual Studio 2005). That’s OK since it works side-by-side. Visual C# Express went on OK, but setup for XNA Game Studio Express failed towards the end of the install with an error about a file that could not be run. The install then rolls back completely leaving you with nothing.

I ran msiexec with logging to see more detail. Here it is:

Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: RegisterWithCSExpress, location: E:\, command: “C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\VCSExpress.exe” /installvstemplates

It occurred to me that even an install without the templates might be of some use, or perhaps I could manually install the templates. So I ran up Orca (MSI editor), opened the InstallExecuteSequence table, and deleted the RegisterWithCSExpress action (yes, I’ve wrestled with MSI before).

The hacked install ran OK, and to my surprise the templates were present. This might be because of the earlier failed install, or because I also ran:

VCSExpress.exe /installvstemplates

from the command line. This command, which tells VC# Express to refresh its template cache, is the one that fails. On my system it causes VC# Express to crash, which is why it trips up the XNA install, but it appears to install the templates before it crashes so it is kinda OK.

My official advice therefore is not to try and install XNA on Vista, but the above may help if you are determined.

Microsoft knows about problems with Visual Studio on Vista; we are promised a “Vista Support Update” next year. In the meantime it does mostly work if you run it with elevated permissions.

I noticed that the Microsoft folk were running XNA on Vista yesterday.

WPF/E preview is out – but no cross-platform .NET for now

Microsoft has posted a CTP (Community Tech Preview) of Windows Presentation Foundation Everywhere, a cross-platform browser-hosted runtime for XAML, its XML GUI language. There’s a download for Mac as well as Windows, but sadly one of the most intriguing aspects of WPF/E is not yet included. You can code the CTP with JavaScript, but the promised cross-platform .NET runtime is not in this release. It is still planned though:

After the December 2006 CTP, we will also enable a managed code programming model using a subset of full CLR that will enhance the programmability side of the browsers to enable more performant and more scalable Web applications.

The quote is from the WPF/E Architecture Overview, which is a great place to start if you want to know what’s in WPF/E.

See also this interview with Forest Key from back in March, if you have not read it already.

I’ve downloaded but not tried the samples yet.

Postscript: Mike Harsh has some more info and a sample WPF/E video on his blog. The humour in the video is somehow typically Microsoft…

Technorati tags: , , ,

Conquering the Office Ribbon

Rick Strahl was struggling to apply a template to an open document:

My quest today: Apply a template to an open document in Word. Where the hell is that option buried?

My generic solution to this kind of problem is the Quick Access Toolbar. Here’s how it works in this case:

Click the little down arrow at the right of the Quick Access Toolbar

  1. Choose More Commands…
  2. Choose All Commands
  3. Scroll down the list to Templates, select it and click Add
  4. Close the the dialog

Now you can click the Templates icon on the Quick Access Toolbar and it works just like Office 2003.

Of course I still don’t know how you are meant to find it in the ribbon. This technique subverts the ribbon by providing a long, simple list of everything in Word; a kind of super-menu. But it’s actually a fair solution, since the icon stays there giving one-click access to your favourite obscurities. Further, should you happen to find it elsewhere on the ribbon, you can easily remove it.

PS: the Templates dialog is also available on the Developer ribbon, which you can display through Word options

A simple blog reader for the IE7 common feed list

Readers of this blog will know of my dissatisfaction with both the IE7 feed reader and the RSS integration in Outlook 2007.

I’ve now posted the (VB.NET) code for my quick-and-dirty solution, the Hands On Common Feed List Reader.

 

What problems does this solve? Mainly:

  • It allows me to browse through blogs by item and not by feed
  • It reads the feed list directly instead of Outlook’s misguided synchronization efforts
  • It gives me a quick view of all unread items

Just to be clear, this is a reader for the IE7 common feed list. You still need to subscribe and unsubscribe using IE7. Lots of features could be added, but for now this works for me; however fixes and improvements are welcome.

Download the code here.

More on how this is put together in the February 2007 issue of Personal Computer World.

If anyone would like just the executable, let me know and I’ll make a quick setup. Requires .NET 2.0.

Technorati tags: , , ,

What happened to Smart Tags in Office 2007 – and is the ribbon next?

Lem Bingley asks if the SmartTags feature has been quietly removed from Office. It’s an interesting point, especially as the Smart Tags feature was sold to us journos as a major new feature of Office when it was introduced in Office XP – in fact, it was said to be the biggest feature of that release.

The short answer is that Smart Tags are still there, just turned off by default. To get them back, just click the Office button, then Word Options (button at the bottom of the flyout), then Proofing, then AutoCorrect options, then Smart Tags, and check the options you want. But I doubt you miss them.

Come to that, the Adaptive Menus introduced in Office 2000 and touted as a major usability benefit have gone in the new release – see this fascinating blog post by Jensen Harris for why. And even the Task Pane, another Office XP breakthrough, has reduced prominence in 2007. Open up Excel 2003 and what’s the first thing you see? The Getting Started Task Pane, with numerous other Task Panes available from a drop-down list. Some of those Task Panes still exist (Research, for example), but they are now more discreet.

Is there a pattern here? Features introduced with fanfare in one release, developed a little in the next, and then silently dropped two or three versions later? It does look like it, though let’s not forget that Office has still seen off all comers when it comes to market share, so the team must be doing something right.

The obvious question is whether the new ribbon UI will be a buried option and off by default in Office 2010 or thereabouts. If the past is any guide to the future, it might well. On the other hand, I respect the amount of effort Microsoft has put into this one. It is a more convincing effort at UI innovation than Smart Tags or adaptive menus. Personally I’m not having much trouble with it, having discovered the Quick Access Toolbar and how to customize it, though why this is hidden by default mystifies me*. Further, I do see how it exposes features that could easily have been missed before. I am watching with interest to see what how the non-technical world out there reacts.

*Correction: It is not hidden – it appears by default in the top left title bar. I prefer to move it below the ribbon. In my experience, customizing the Quick Access Toolbar is the key to being productive with the new Office.