A handy tip for presenting technology demonstrations

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

After spending much of my day straining to read PowerShell command prompts, GUI interfaces at high resolution on screens that were not large enough for the audience to see and, in one case, a slide deck that looked like it used 14 point text (!), I thought it was worth blogging about a Windows tool that can really help out in technical demonstrations (and which should really be part of every presenter’s toolkit).

Windows Magnifier can be invoked using a variety of methods but the quickest way is probably using the Windows and + or - keys together. As its name suggests, it magnifies a portion of the screen around the current mouse cursor. To switch it off again, press Windows+0 and exit the Magnifier application.

For those who require a little more functionality (e.g. annotation features), there is a SysInternals tool called Zoomit that is available from the Microsoft TechNet website.

Microsoft’s New Efficency comes to Wembley

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

As I opened the curtains in my hotel room this morning, I was greeted with a very wet and grey view of North London. Wembley Stadium looks far less impressive on a day like today than it did in the night-time shot that graced the front page of Bing here in the UK yesterday but still it’s hard not to be in awe of this place.

I’ve been to a couple of events at the new Wembley Stadium before: last year’s Google Developer Day (sadly there was no UK event this year); and the recent U2 concert – but this time I’m here courtesy of Microsoft for their UK Technical Launch event and the main products on show are Windows 7, Windows Server 2008 R2 and Exchange Server 2010 in what Microsoft is calling “The New Efficiency”.

I was twittering throughout the event @markwilsonit but this post highlights some of the key messages from the main sessions today, although I’ve skipped over the details of the standard technical product demonstrations as I hope to cover these in future posts:

  • There are more than 7100 applications tested and working on Windows 7 today and there should be more than 8000 certified by the time that the product hits general availability.
  • Windows 7 was beta tested by more than 8 million people, with 700,000 in the UK.
  • The Windows Optimised Desktop is represented by a layered model of products including:
    • Management infrastructure: System Center and Forefront for deployment, application management, PC monitoring and security management.
    • Server infrastructure: Windows Server 2008 R2 for Active Directory, Group Policy, network services and server-based client infrastructure.
    • Client infrastructure: Windows 7 and the Microsoft Desktop Optimisation Pack for the Asset Inventory Service, AppLocker and BitLocker.
  • Windows is easier than ever to deploy, using freely available tools such as the Microsoft Deployment Toolkit (MDT) 2010 to engineer, service and deploy images – whether they are thin, thick or a hybrid.
  • System Center Configuration Manager (SCCM) 2007 provides a deployment engine for zero-touch installations, hooking into standard tools such as MDT, the User State Migration Tool (USMT), WinPE, etc.
  • PowerShell is becoming central to Windows IT administration.
  • Windows Server 2008 R2’s new brokering capability presents new opportunities for server based computing.

For me, the highlight of the event was Ward Ralston’s appearance for the closing keynote. Ward used to implement Microsoft infrastructure but these days he is a Product Manager for Windows Server 2008 R2 (I’ve spoken to him previously, although today was my first chance to meet him face to face). Whilst some delegates were critical of the customer interviews, his New Efficiency presentation nicely summarised the day as he explained that:

  • Many organisations are struggling with decreasing IT budgets.
  • Meanwhile IT departments are trying to meet the demands of: IT consumerisation (as a generation that has grown up with computers enters the workforce); security and compliance (the last few years have brought a huge surge in compliance regulations – and the global “economic reset” is sure to bring more); and an ever-more mobile and distributed workforce (where we need to ensure confidentiality and non-repudiation wherever the users are).
  • IT departments have to cut costs – but that’s only part of the solution as productivity and innovation are just as important to increase efficiency.
  • In short (productivity + innovation)/cost = doing more with less
  • Managing more with less is about: reducing IT complexity; improving control and reducing helpdesk costs; increasing automation; and consolidating server resources.
    Doing more is about: enabling new services, efficiently connecting people to information, optimising business processes, and allowing employees to securely work from anywhere
  • Microsoft’s New Efficiency is where cost savings, productivity and innovation come together.

It would be easy to criticise today’s event, for instance to pick out certain presenters who that could have benefited from the use of Windows Magnifier, but I know just how much work went into making today’s event run as smoothly as it did and, on balance, I felt it was a good day. For those who have never been to a Microsoft launch, they may have expected something more but I’ve been to more of these events than I care to remember and so this was exactly what I expected: lots of marketing rhetoric delivered via PowerPoint; some demos, most of which worked; and, I think, something for everyone to take away and consider as their organisation looks at meeting the challenges that we all face in our day jobs – even if that was just the free copy of Windows 7 Ultimate Edition… (full disclosure: I accepted this offer and it in no way influences the contents of this blog post).

I’ll be back at Wembley again tomorrow, this time for the Microsoft Partner Network 2009 – and expect to see more Windows 7 and Server 2008 R2 related posts on this site over the coming weeks and months.

Windows 7 application compatibility: Part 1 (introduction)

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

At the Windows Server 2008 launch event last year, I spent some time in David Allen’s (not the GTD guy – and not the Irish Comedian either) Windows Vista application compatibility session and I meant to blog some of the stuff I learned about making legacy applications work with on modern versions of Windows. Time passed by and that became just one of the many blog posts that never made it to completion but today I spent a whole day on one of David’s workshops and I intend to write a series of posts looking at some of the “appcompat” issues around Windows 7.

Whilst the UK launch of Windows 7 is tomorrow, and general availability is later this month, many of Microsoft’s partners and corporate customers already have access to release versions of Windows 7 (after a wide public beta programme) and, if you’re looking a Windows 7 deployment, then the process of application remediation should already have begun. For those who are already on Vista, life should be a little easier as you already went through the pain – 90% of applications that run on Vista should run on 7 and the only real problem applications I’ve seen have been those that interact with the operating system at a low level, such as the Zone Alarm firewall product and the Cisco VPN client. In both these cases my remediation method was to select another product.

You may ask why Microsoft has created this complex scenario where applications no longer work on new operating system releases but Windows today has to cope with new threats that were simply not present when Windows NT was first brought to market. Then there’s new functionality to meet the demands of our changing world (increased mobility, new methods of communication, etc.). Whilst competing operating systems (e.g. Apple’s Mac OS X) can drop support for technology perhaps only one or two versions after announcing that it would be deprecated, many of Microsoft’s customers are still wrestling with 16-bit applications from the days of MS-DOS and Windows 3.x or with applications that were written for Windows 95, where security was almost non-existent and Microsoft had yet to acknowledge the potential of the world wide web.

So, if you’re looking at rolling out Windows 7 (and you should be, if you’re on Windows XP or earlier), what are the main steps:

  • Perform an inventory of your applications and separate them into core (bought-in), core (in-house developed) and non-core applications.
  • For the core (bought-in) applications, check if they are certified for Windows 7. If they are, then you have no worries, if they’re not then is there a version available for Windows 7 that the ISV will support? If the ISV doesn’t support Windows 7, then do they plan to provide support soon (many will within 90 days of Windows 7 general availability, although with the widespread availability of pre-release versions of Windows 7, I’d have to question why they are taking so long…). If you can’t achieve a satisfactory response to this question, start to think about migrating to another application that does run on Windows 7. The basic premise here is not to end up with any core applications that are out of support. Even if the applications can be made to run on Windows 7, support should be a concern.
  • For line of business applications developed in house, test them on Windows 7. Automated tools such as those from ChangeBASE may help here, identifying known problem areas and possibly even performing automated remediation. This should leave a list of applications that work, and some that do not. For the in-house applications that don’t work on Windows 7 and where the source code is available, fix the application (more on that later) and issue a new release. If the source is unavailable, or the product is no longer being actively developed, consider a shim.
    If the application can’t run locally, consider whether this application is critical to business operation or not. If it’s not, then you have two options: replace it; or, if there is no suitable replacement, remove it from the estate (remember, this application is not business critical). If the application is essential to the business then ask yourself why a critical application is based on legacy technology and cannot be updated. That sounds like a risk to me.
  • At this stage, you may have a few “problem” applications and there are a few options: you could consider managed diversity – i.e. deliberately leaving a few Windows XP PCs in place for these applications until the application can be replaced (and it should be); you could look at options such as terminal services, or maybe MED-V (if you have software assurance) but these solutions may not help you in the long term if they still rely on Windows XP or Server 2003, both of which are in their twilight years.
  • Finally there is Windows 7’s XP Mode. Let me be clear about this: from an appcompat perspective, XP Mode is a last resort. It’s great for consumers but for businesses it has some significant drawbacks: it still involves a legacy operating system; it involves managing multiple operating system environments and lacks any management toolsets; it may impose additional application licensing costs on the desktop; it requires specific hardware capabilities (that will not be present in legacy PC hardware); it’s only available with certain product editions; and it may be withdrawn at a future date. You may think that this point that I have a problem with XP Mode but the truth is, it’s fine for use on my own, self-supported, IT but I’d never recommend it to a customer – at least not one with more than a handful of PCs. Quoting Microsoft’s Dave Allen: “I think XP Mode is basically there to keep the boys in Computer Weekly happy” (and he’s right – it’s purely sticking plaster to ensure that applications work and to ensure that Windows 7 receives positive press, unlike Vista, which suffered unfairly, even after Microsoft had fixed it).

By now, you should have managed to identify options for just about every application, so what are the sort of issues that are really likely to present themselves? Well, this is the list of topics that David covered in the workshop today:

  • User Account Control (UAC).
  • New folder locations.
  • Windows Resource Protection (WRP).
  • Mandatory Integrity Control (MIC).
  • User Interface Privilege Isolation (UIPI).
  • Internet Explorer Protected Mode.
  • Operating System and Internet Explorer versioning.
  • Session 0 isolation.
  • Shims and the Microsoft Application Compatibility Toolkit.

Over the next few weeks, I’ll try and cover most of these topics in a way that IT admins like myself can understand with the intention of helping everyone understand common Windows application compatibility issues and what to do about them, rather than just thinking of appcompat as “a developer issue”.

Credit

The contents of this blog post were heavily influenced by David Allen’s Windows 7 Application Compatibility workshop. Read more about David’s work on the Microsoft ISV developer evangelism team’s blog.

iPhone Wi-Fi connectivity via BT Openzone

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Last year I wrote about O2 giving UK-based iPhone users free access to BT Openzone Wi-Fi hotspots but the last few times I’ve tried to connect all I’ve managed to hook up to is a login page.

I’ll be spending most of the next couple of days at Microsoft’s customer and partner launches for Windows 7 and, even though I have the option of Vodafone 3G access from my netbook, I thought I’d investigate further and at least give myself another connectivity option via the iPhone (at another recent event I found that O2’s 3G coverage is virtually non-existent inside the hospitality suite at Wembley Stadium so Wi-Fi would be a major step forward and I know it works in the Hilton a couple of hundred yards away…).

This is what you need to do in order to get an iPhone hooked up to BT Openzone if you’re presented with the BT Openzone login screen:

  1. Select a service provider of O2 from the Openzone login prompt (no need to enter a username).
  2. When prompted, enter your phone number and wait for registration to complete.
  3. If, like me, you’ve had multiple iPhones on your account (i.e. you have upgraded or had warranty replacements), then you may need to send an SMS message to 2121 containing the word WiFi and wait up to an hour (although, in practice, I didn’t find that it took that long).

After this, you should be able to connect to the ‘net from your iPhone over Wi-Fi. Right, let’s hope Steve Ballmer doesn’t spot me using the iPhone

Windows+P is the presenters’ friend

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

I’ve spent most of today working with my friend and (soon to be ex-) colleague, David Saxon, as he delivered a Windows 7 Skills Update course to a selection of IT Professionals from within the company that we work for, with a small amount of support from me. Watching Dave present reminded me of something I meant to blog about last week when I was delivering a Windows 7 presentation to around 40 senior architects from our company at Microsoft’s UK Campus in Reading – the Windows 7 shortcut for Presenter Mode, Windows+P.

Back in the days of XP (and even Vista), setting a notebook PC up with a projector required lots of jiggerypokery with function keys and display driver settings. In the world of Windows 7, I just plug in the cable to connect to the presenter, press and hold down the Windows key whilst pressing P, and I’m given four simple options to chose from: computer only; duplicate; extend; and projector only.

Windows+P

Simple! My preference is always extend, as it allows me to use Presenter View in PowerPoint to view my notes and the upcoming slides on one screen, with the slide show on the projector (and that seemed to work as I’m pretty pleased with the feedback I got for my presentation, only being beaten by the Microsoft presenters who spend far more time in front of an audience than I do).

Of course, Windows+P is just one of many useful combinations and Clinton Garbutt mentions Windows+X (for the Windows Mobility Center) in his post on the subject (Clinton also highlights that you can get to the same interface by running displayswitch.exe). If that’s whetted your appetite then there are a few more Windows shortcuts referenced in the recent 77 Windows 7 tips TechNet article too.

Useful Links: September 2009

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

A list of items I’ve come across recently that I found potentially useful, interesting, or just plain funny:

Some say he has silicon innards and eats data for breakfast…

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

USB StigFans of the BBC’s Top Gear programme may be interested in a novelty “USB memory Stig” that goes on sale today… I can’t take credit for the pun or the title of this post (both were ripped off from a comment on the product page at play.com) but if you know anyone that fancies a racing driver 8GB USB flash drive then this might be worth a look.

(And yes, I know that Top Gear is no longer really a motoring programme and more about a bunch of middle-aged guys messing around in cars and generally failing to grow up… but that’s exactly the point! It seems to me that Messrs. Clarkson, May and Hammond have, quite possibly, the best jobs in the world.)

Shooting tethered on my Nikon D700… using PowerShell

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

About this time last week, James O’Neill was explaining to me how Windows Image Acquisition (WIA) could be used to control my camera over a USB connection. I’m not sure if he told me, or if I suddenly realised, but somewhere along the way came the realisation that I could use this to take a picture – i.e. to drive the camera remotely – and James very kindly shared some Windows PowerShell commands with me.

Today, James published the results of his work, saving me a lot of research into WIA and a related subject – Picture Transfer Protocol (PTP) but, unlike James’ Pentax K7, it seems that my Nikon D700 will allow me to use this to actually take a picture (I haven’t tried on my Canon Ixus 70… with or without the CHDK).

James’ code showed me how to call WIA as a COM object:

$WIAdialog = New-Object -ComObject "WIA.CommonDialog"
$device = $WIAdialog.ShowSelectDevice()

Following this I had an object called $device that I could manipulate as I liked and $device | get-member returned the following methods and properties:

   TypeName: System.__ComObject#{3714eac4-f413-426b-b1e8-def2be99ea55}

Name           MemberType Definition
—-           ———- ———-
ExecuteCommand Method     IItem ExecuteCommand (string)
GetItem        Method     IItem GetItem (string)
Commands       Property   IDeviceCommands Commands () {get}
DeviceID       Property   string DeviceID () {get}
Events         Property   IDeviceEvents Events () {get}
Items          Property   IItems Items () {get}
Properties     Property   IProperties Properties () {get}
Type           Property   WiaDeviceType Type () {get}
WiaItem        Property   IUnknown WiaItem () {get}

$device.Properties was kind of interesting but with $device.Commands I was really getting somewhere:

CommandID                               Name          Description
———                               —-          ———–
{9B26B7B2-ACAD-11D2-A093-00C04F72DC3C}  Synchronize   Synchronize
{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}  Take Picture  Take Picture

Seeing that there was a command to take a picture got me thinking and looking back at the device methods I could see ExecuteCommand so I tried calling it:

$device.executecommand('{AF933CAC-ACAD-11D2-A093-00C04F72DC3C}')

I was amazed to find that my camera did exactly what it was told and fired the shutter! I need to do some more testing, to see if I can control the focus, or return a live preview, etc. but controlling a remote device, over a USB connection, using nothing more than a few basic scripting commands made me feel like a real techie again (even if it was James’ code that got me started!). Who knows, I may even teach myself to code again (as I’ve threatened several times over the last few years) and write an application to remotely control my camera.

Ironically, at the start of last week I was trying to figure out how to take time-lapse photos of the extension that I’m having built on my house right now but it wasn’t software that held me back, it was practical issues like leaving a camera outside for days on end in all weathers and providing power to it. Now, if only I had a 25 metre USB cable (!), I could hook up a cheap webcam and set a script to take a picture every hour or so…

Further reading

WIA Camera Devices on MSDN.
WIA Camera support in Windows Vista (part 1 and part 2).
WIA 2.0 and digital camera interaction.

How much is your personal information worth?

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

We’ve all heard the horror stories about personal information, such as credit card details, falling into the wrong hands and, thankfully, in many cases the banking system limits the damage but it’s a growing problem.

Now Symantec have issued the results of some research which shows that this information may be sold on the black market for as little as a few pence as cyber criminals use generous retail promotions like bulk buying and “try before you buy” to sell consumer information and credit card details to other criminals. According to the Internet Security Threat Report 2009 e-mail addresses and accounts are traded among criminals from as little as five pence to as much as £60, with a full identity going for around £45. I don’t know about you but I find those figures to be alarmingly low – until I read on and discover that, according to Symantec, more than 10 million stolen identities are traded each year on the black market.

The online black market is booming compared to real-world criminal activity. It is more profitable, harder to prosecute and provides anonymity. Whereas on the streets of London Metropolitan Police figures indicate that a crime is committed every 37 seconds, an identity is stolen online every three seconds.

So how does this happen? Well, much of the information is harvested using malware on our PCs with many victims unaware that their computer is a “zombie” acting as part of the botnets that are the main source of online fraud, spam and other scams on the Internet today. In addition, we are putting increasing volumes of personal information onto the web through social networking. Meanwhile, action against criminals is hampered by the fact that national laws typically lag behind technological advances and the fact that the Internet is a global network and so requires co-operation from multiple law enforcement agencies.

So, what can we do about it? Well, much of the information in this blog post comes from Symantec/Norton and it’s no surprise that they would like us to buy the latest version of their security suite but, even if you use another reputable company’s security products, it’s worth checking out the advice on their Every Click Matters site including a victim assessment tool that helps you assess your risk (and black market worth) and 10 simple steps we can all take to stay safe. Maybe you, as a reader of this blog, know what to do – put it may be worth highlighting the advice to less-technical friends and family.

Technology actually saved me some time this morning!

This content is 16 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

I’ll be spending the next couple of days at Fujitsu Laboratories’ European Technology Forum listening to presentations on some of the new and upcoming technological advances that could well be making their way into our daily lives (disclosure: I work for Fujitsu but that has no bearing on the contents of this blog post). I had considered driving to London (and leaving the car at my hotel) but, in the end, I decided to take the train. As the state of our railways is something that us Brits spend a lot of time complaining about (since long before privatisation), it’s nice to have something positive to write about my journey this morning.

A few years ago, catching the train meant a weekly trip to the bank to obtain sufficient coinage to feed the parking machines at the station (even when credit card payment was introduced, not all of the machines could accept cards), getting up stupidly early to make the 12 mile trip from the small town where I live to my nearest station, parking the car (if there were any spaces left) and joining a queue to buy a ticket. All of this meant that, in order to ensure I was able to catch a particular train, I needed to allow 45 minutes to an hour.

This time, I used the online booking system to buy my tickets in advance (although, because it was only a few hours in advance, there was no option to have a ticket mailed to me but I did have the collection reference sent over by SMS). Then, when I got to the station, I found a parking space and, instead of feeding money or a credit card into the machine, I used the pay by phone service to enter my location code, confirm my car registration, the length of my stay and my credit card details. I then collected my tickets from a machine and, around 30 minutes after leaving my house, was on the platform waiting for the 07:28 to arrive. Meanwhile, the parking system had e-mailed me a receipt ready for my expenses claim.

None of this is exactly rocket science, but it’s a step in the right direction and a huge timesaver. Looking to the future, there is no reason why the parking payment system couldn’t identify my location using GPS (as more and more mobile phone handsets become GPS enabled) and why I couldn’t print my own rail tickets from home (albeit without the magnetic stripe to operate the barriers at the station – although these could use an alternative access control technology).

Now, the fact that I had to pay £13 for parking my car on top of my £40 travel (when there was no public transport alternative to get to and from the station)… that’s an entirely separate issue about which I’m less happy…