Category Archives: microsoft

Vista even thinks Control Panel is photos

One of Vista’s most annoying features is the tendency of Explorer to decide, first, that all your documents are music or photos; and second, that if they are, you care more about metadata like “Rating” than humdrum details such as the date of the file.

I had thought that Vista only did this if it found at least one media file in the folder, but today it happened with Control Panel:

Notice how it highlights another user-hostile feature: the name of each applet is in a column too narrow to read, and several applets are indistinguishable from each other because they begin “Microsoft .NET Frame…” or “Internet Information S…”; another triumph of branding over usability.

What I wanted was the Event Viewer; and while I’m in ranting mode, let me add that I much prefer the old NT Event Viewer to the Vista effort. The new one takes ages to populate a clever multi-pane view, which presents too much information in tiny scrolling panels. In practice I use the tree view on the left to select the log I want, subverting the new design by doing exactly what I would have done in the old Event Viewer. Habit possibly; but there are real design problems with the new Event Viewer. Administrators will always choose practical over pretty.

See here for my earlier complaint about Explorer views and a partial remedy. Why wasn’t this fixed in SP1?

Moving Vista to a new hard drive

I have a Toshiba Portege M400 which is a couple of years old now, but it is not too bad a spec (Core 2 Duo 2.00 Ghz and a Tablet), so when I ran out of disk space I decided to upgrade to a larger drive rather than looking for a new machine. The M400 is slightly unusual, in that you can install a second drive in place of the DVD (which I rarely use), so I was able to fit the new drive in this bay while booting into the old system. The old drive is 80GB, and the new one 250GB. My task was to clone the old Vista installation onto the new drive.

I decided to use Drive Snapshot, which is able to make an exact copy of a running Windows installation. I created two partitions on the new drive, one just a little bigger than the old drive, and one to hold the Drive Snapshot backup files. Then I backed up the old drive to the second partition, and restored it to the first. Next, I removed the old drive (which remains as a backup),  moved the new drive to the permanent internal position, and started the system.

No joy. Windows tried to boot but reported a missing winload.exe. I presumed it was looking in the wrong place. I booted from a Vista DVD and chose the Repair option. There was a slight complication: Vista setup needs to load the Toshiba RAID driver in order to see the drive, but fortunately I have this on another CD. The Vista repair fixed the boot configuration, and I restarted thinking all would be well.

Still no joy. Well, partial joy. Vista booted, and I logged on, but only to a blank light blue screen. Using Task Manager I could start Explorer, but Windows told me it was using a temporary profile. I figured out the problem: drive letters. The system drive was meant to be C, but when I created the partition I had assigned it the letter K. I though that Drive Snapshot’s sector copy would overwrite that assignment, but apparently not. In this state, Vista could boot OK but not much worked. Even RegEdit and the disk management utility failed to open, reporting a “path not found” error.

I found some useful information on the problem here. It looked as if I could fix it by editing the registry, if I could work out how to do so. I have a little experience with this, so I knew roughly what to do. I booted again from the Vista DVD, and opened a command prompt. The minimal system recovery version of Windows does have a registry editor, but if you run RegEdit you get the registry of the setup Windows, not the one in the system you are trying to fix. The solution is to use Load Hive to edit the target registry. I found the key HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices and deleted all the entries except Default. Rebooted, and everything worked perfectly.

One task remained. I ran Disk Management, and deleted the spare partition which contained the Drive Snapshop backup files. Next, I right-clicked the Windows partition, selected Extend Volume, and expanded it to fill the entire drive. Success – now I have 155GB free for new versions of Visual Studio, Adobe CS4, Delphi 2009, VirtualBox disk images, interview recordings, and all the other stuff which occupies my time.

Should I have done a clean install? Now I have a spare drive I might do one as an experiment, but considering the work involved in reinstalling everything, plus the fact that there is nothing really wrong with the current installation, I am not keen.

Overall it did not take long, and while there may be better utilities out there for this particular operation, I’m happy with the results from Drive Snapshot.

Technorati tags: , ,

What’s new in .NET Framework 4.0?

Good question. There are a few things we know about Microsoft’s managed application runtime and class library:

There will be major updates to the Windows Communication Foundation (WCF) and Workflow Foundation (WF). According to this announcement along with this post by Steven Martin we are going to see “better support for Web 2.0 technologies like REST, POX and ATOM” and a 10x performance increase in WF.

The table shown here also mentions a bigger role for XAML:

Seamless integration between WF and WCF and unified XAML model. Build entire application in XAML from presentation to data to services to workflow.

There will be a new application server codenamed Dublin, which hosts WF/WCF applications and manages messages, long-running transactions, state management. Dublin extends Internet Information Services (IIS) and will run on Windows Server – probably Server 2008 only.*

Dublin supports Oslo, which is Microsoft’s latest attempt at model-driven development. I guess Dublin is the host for Oslo applications, as this post implies. XAML is a good fit with modelling, because it is both declarative and well-suited for visual representation. Models do not have to be visual, and Oslo includes a new textual language which could also be based on XAML (?), but nevertheless there is synergy between modelling and visual designers.

Putting this together, we have a new take on Microsoft’s end-to-end stack, developed in Visual Studio with XAML supplemented by procedural code where needed, hosted on Dublin, and using WPF or perhaps Silverlight(?) for the presentation layer. Thanks to the new REST support, or the old SOAP support, you could also use other clients including JavaScript or Java.

It is all a bit perplexing if you currently think of the .NET Framework as the runtime engine and class library for C# and Visual Basic. It sounds as if .NET Framework 4.0 is enterprisey, more JEE than Java. We are seeing increasing fragmentation or more positively, diversification, in Microsoft’s .NET story. There are micro versions, cross-platform versions (Silverlight), desktop versions (client profile), and more and more pieces that only belong on servers.

How much of Oslo and the Dublin application server is likely to be implemented in Mono, I wonder? I suspect not that much, since Mono has focused in the past on the common language runtime and ASP.NET. There was no WPF support in Mono until Moonlight.

All this begs the question: is .NET becoming too complex? I interviewed Scott Guthrie, Corporate VP Developer Division, at the Remix conference in Brighton last month. I asked him about Oslo, thinking that he must be closely involved in what is, according to some at Microsoft, a major step forward in application development. His reply: “That’s not my world”.

Guthrie is a simplifier. He was one of the original developers of ASP.NET, along with Mark Anders, and as I recall, when asked what modelling tool he used he replied, “a whiteboard”. I spoke to Anders about the early days of ASP.NET and he emphasized the value of simplifying what already exists; see also How ASP.NET began in Java.

Microsoft also claims that Oslo/Dublin will make complex things easier for developers, but looking at all these pieces I’m waiting to be convinced. PDC 2008 is where we will find out more.

*According to this post “Dublin” actually refers to the next version of Windows Server itself, though this announcement says “a set of enhanced Windows Server capabilities codenamed ‘Dublin’ that will offer greater scalability and easier manageability.” I guess this comes to the same thing, and that preview versions of Dublin could either be early releases of the entire OS, or preview bits that install into Server 2008.

Microsoft’s cloud platform, multi-touch Windows 7: mining the PDC schedule

I’ve been looking at the PDC Session schedule, as posted so far. Microsoft is serious about its new cloud computing platform. For a start, count the sessions.

Out of 180 posted so far, here are the subjects with 10 or more sessions:

  1. Cloud services [33]
  2. Windows 7 [22]
  3. SQL Server [16]
  4. Visual Studio [16]
  5. Silverlight [13]
  6. Live Platform [11]
  7. ASP.NET [10]
  8. Languages [10]

That’s a huge focus on the cloud. Microsoft’s problem: the company is not perceived as a leader in cloud computing. It has two distinct challenges: first, getting the technology in place, and second, winning developers to its new platform. In mitigation, it is in theory well placed to migrate users from on-premise Windows and Office to cloud equivalents.

Here’s a few snippets about Microsoft’s cloud platform:

A lap around Cloud Services: … Learn about the pillars of the platform, its service lifecycle, and see how they fit with both Microsoft and non-Microsoft technologies. Also, hear about the services roadmap over the next few years.

Cloud Computing: Economics and Service Level Agreements: … Topics include the pricing model for the cloud computing platform, how to monetize a service, and how to reduce the total cost of ownership.

Connecting Active Directory to Microsoft Cloud Services: … Manage and secure end user access to cloud services using your existing investment in Active Directory. Enable end users to access cloud services through existing Active Directory accounts, the same way they access your intranet-hosted software today. Hear how to enable existing software to use new service capabilities without re-writes, and do it all through the use of open and standard protocols.

That last item is a big deal. Managing separate user identities for local and cloud services is horrible.

What else can we glean from the PDC schedule. Here’s a few items that intrigued me:

Windows 7: Web Services in Native Code … Windows 7 introduces a new networking API with support for building SOAP based web services in native code.

Windows 7: Developing Multi-touch Applications … This session highlights the new multi-touch gesture APIs and explains how you can leverage them in your applications.

Oomph: A Microformat Toolkit … a toolkit from the MIX Online Team, that is aimed at web developers and designers to make it easier to create, consume, and style Microformats on the web. See also here.

Concurrent programming: Microsoft Visual Studio: Bringing out the Best in Multicore Systems … demonstrations of the parallel performance analysis and optimization tools in the next release of Microsoft Visual Studio. .

Oslo of course: A Lap around "Oslo" … “Oslo" is the family of new technologies that enable data-driven development and execution of services and applications. Come and learn how to capture all aspects of an application schematized in the "Oslo" repository and use "Oslo" directly to drive the execution of deployed applications.

Generics and constructors in XAML: Microsoft .NET Framework: Declarative Programming Using XAML … Learn about XAML additions like: support for generics, object references, non-default constructors, and more.

Instant cloud apps: Research: BAM, AjaxScope, and Doloto … Hear how BAM can turn a simple specification into a web-based cloud application with the click of a button. Learn how AjaxScope and Doloto automatically instrument and rewrite your web applications’ JavaScript code for end-to-end monitoring and optimization.

Office, a big feature of PDC 2005 when the ribbon was introduced, only has 3 sessions posted so far, though there may be more to come. Normally a new version of Office accompanies each new version of the Windows client.

Another question: what is in .NET Framework 4.0, to merit a full new version number? There is surprisingly little mention of it so far.

Microsoft’s open source breakthrough

Microsoft’s integration of jQuery and Visual Studio/ASP.NET is significant and I wrote about it on the ITJobBlog. I’ve included some comments from Scott Guthrie about ASP.Net AJAX vs jQuery.

Miguel de Icaza, who works on open source versions of .NET, also says it is a “first time for Microsoft”.

Rick Strahl, who is an ASP.NET MVP and writes an excellent technical blog, says in a comment to Guthrie’s original post:

To me jQuery has easily  the most game changing component in Web Development since ASP.NET originally was released.

It is a breakthrough; but note that it comes from the developer division, which is more inclined towards open source than other divisions running Windows and Office.

Internet Explorer no longer the de facto Web standard

Following Scott Guthrie’s remarkable announcement about jQuery getting integrated into Visual Studio and ASP.NET, I took a look at the jQuery site and blog. I mix and match with my browser usage, and on this occasion was using IE7. The page was badly scrambled:

It is meant to look like this, as it does in IE8:

I tried the site with IE7 on another machine and it was fine, so this is not a problem with all IE7 installations, though it is fully repeatable on this particular box. I don’t know what is causing the issue.

Still, it reminded me of a significant change on the Web, which is that IE is no longer the safest choice if you are pragmatic and simply want sites to look right. In fact, there are more occasions when I have to close IE and use Firefox or Chrome to view a site properly, than the other way round.

I also notice a sharp decline in IE usage in my browser stats. 80% of visitors run Windows, but only 40% use IE in this month’s figures. A year ago that was 82% and 58%.

My stats are not representative of the web as a whole, which gives IE a larger share, but everyone seems to be reporting a decline. IE8 may slow the decline, but I doubt it will reverse it.

Google, Adobe, Mozilla: Open source war of words is all about owning the platform

The route to dizzying riches in this industry is to own the platform. Look no further than Microsoft, which not only sells the operating system, but also dominates the applications which run on it, from Microsoft Office on the desktop, to server products like Exchange and SQL Server, and network management software like System Center. Anyone can build applications for Windows, and plenty of third-parties have done so successfully using its free SDK (Software Development Kit), but somehow it is Microsoft that profits most.

Microsoft is still doing its thing, but attention is turning to the next generation of Internet-based computing. I touched a nerve when I asked Google’s Dion Almaer about Adobe Flash: it’s not open enough for Google, he told me. I put this to Adobe’s Dave McAllister, director of standards and open source, who assured me that Flash is all-but open, excepting (ahem) the source code to the runtime. Then he surprised me (considering he is an open source guy) by accusing Mozilla of bad faith over Tamarin, the source code to its ActionScript 3 runtime and just-in-time compiler, and remarking that Sun’s efforts to open source Java had mainly helped its competitors. I wrote this up for the Reg.

The problem is that these companies want the best of both worlds: the widespread adoption and community contributions that open source can generate, but the control and profit that comes from owning the platform.

If you can’t own the platform, the next best thing is that nobody owns the platform, which is why IBM worked to hard to get Sun to open source Java, and deliberately muddied the waters by sponsoring the Eclipse tools platform and alternative Java runtimes and GUI libraries.

Why is Google wary of Flash? Simply, because it is risky to build your own application platform on a runtime that belongs to another company. It is not enough for Adobe to say it will never charge for the runtime, any more than it is enough for Microsoft to give away the Windows SDK. Google is watching Adobe, and seeing how it is building online applications like Buzzword which competes with its own Google Docs. Companies with their own platform ambitions (Apple also comes to mind) are more likely to be averse to Flash. Oh, and look who else is building its own alternative to Flash? Yes, Microsoft with Silverlight.

Like Google, Mozilla is trying to build a browser platform that has less need of proprietary plug-ins like Flash. Although I was surprised that Adobe’s McAllister said Mozilla was using its open source contributions in the wrong kind of way, seemingly missing the whole point of open source, I was not surprised to find tensions. I quizzed Mozilla’s John Resig on this exact subject one year ago, when I wrote that Adobe and Mozilla were on course for collision.

As McAllister points out, open source also has risks, particularly the danger of fragmentation and multiple incompatible versions. Maybe Flash is better as closed-source. Still, let’s not pretend it is really all-but open source. The real issue is who owns and controls the platform, and in this case it is definitely Adobe.


Advertisement Click here for special offers including free magazine subscriptions,white papers and ebooks.

Technorati tags: , , , , , , ,

Fixing slow Windows Vista: yet again, it’s a third-party problem

Great post from Mark Russinovitch on fixing a slow Vista system, belonging to his wife.

The fact that was in the family suggests that this kind of incident is common. My reasoning: if Russinovitch were blogging about an unusually slow PC identified in Alaska and sent to Redmond for examination, that would suggest that this stuff is rare. If it happens to the person next to you, it is more likely to be commonplace.

So Vista is “not responding to her typing or mouse clicks”. What’s the problem? Not at all obvious. Russinovitch fires up his Process Explorer (no, Task Manager would not do) and has a look. Still not obvious. Iexplore.exe and Dllhost.exe are the culprits – except they are not. The problem turns out to be a buggy Flash player or application (he still doesn’t know which), and a third-party MP4 demultiplexer. The Flash problem remains unsolved; the only solution when it turns up is to terminate Iexplore.exe. The demultiplexer is now disabled with no ill-effects.

The specifics are only interesting to geeks, but there is a wider point. Most people:

  • Would have blamed Windows and Microsoft
  • Would not have been able to discover the cause of the problem
  • Would have shrugged and rebooted – which would work for a while

That “most people” includes many professionals. Be honest: how many tech professionals, whether in internal or external support, or PC repair experts, would have both known enough and cared enough to identify this kind of issue? A lot will say, “just reboot and hope it doesn’t happen again soon.” I’m not even sure that they are wrong. Look at the economics: if a reboot is a quick fix, how much time and expense does the problem merit?

Further, is Microsoft really innocent? Surely the OS could do a better job of identifying rogue processes and threads, and curbing the extent to which they can grab too much CPU. My experience of the troubleshooting wizards and self-healing capabilities in Vista is dismal; there are examples on this blog. Why isn’t there an automated tool that could follow the kinds of steps Russinovitch follows and identify the actual component that is causing problems?

Technorati tags: , , ,

More OOXML than ODF on the Internet, according to Google

In May 2007, IBM’s Rob Weir made a point of how few of Microsoft’s Office Open XML documents were available on the Internet. Here are his figures from back then:

odt 85,200
ods 20,700
odp 43,400
Total ODF 149,300

docx 471
xlsx 63
pptx 69
Total OOXML 603

The ODF formats are those used by Open Office, Star Office, and Lotus Symphony. Now that Office 2007 has been out for a while, I thought it would be interesting to repeat his test, using the same methodology (as I understand it), a Google filetype search. I added the macro variants to the list as this seems fair, though they don’t affect the total much:

odt    82,000
ods    16,600
odp    26,100
Total ODF 124,700

docx    87,400
docm    1,440
xlsx    14,900
xlsm    738
pptx    31,400
pptm    1,300
Total OOXML 137,178

Let me say at once, I’m not sure this is significant. For one thing, I’m suspicious of Google’s arithmetic (in all search totals, not just these). For another, I reckon it is a mistake to put either format on the public Web: PDF, RTF, or even Microsoft’s thoroughly well-supported binary formats are more fit for purpose.

Even so, it is quite a turnaround. What is particularly odd is that the ODF figures appear to have declined. Again, it could just be that Google changed its way of estimating the totals.

Incidentally, I doubt that this has anything to do with ISO standardization, especially considering that the current OOXML implementation in Office 2007 does not conform. It has everything to do with the popularity of Microsoft Office and its default settings for saving documents.