Toshiba M400, Vista RC2 & Updated Bios 2.03 = goodness

On the Toshiba Vista RC1 Support Page, Toshiba quietly added some updates. The most interesting one, a new bios 2.03. Previously the latest available was 1.70. I didn't immediately notice much difference. I did a recalculation of my Vista score and the numbers are all identical after the update. But I did notice a BIG difference today when I came into the office an plugged in my external ViewSonic 20” VX2025wm external monitor. I'm now geting the fully 1680x1050 resolution of this monitor. Previiously, I could only get 1600x1200 (with goofy scrolling/clipping & flickering) or 1280x1024). This was also the max I could drive on XP as well. No amount of graphics or monitors would fix that problem but 2.03 of the bios seems to add support for this. I may verify this on XP in the next week of so, but so far for Vista RC2, works great.

I also noticed that after the bios and reboot, on restart, there were some new devices detected and installed, namely, Direct Application Launcher Button (x 2). The buttons on the tablet don't seem to do anything different with some preliminary. I had previously installed the Toshiba Tablet PC Buttons Driver  (V2.0.2.0). The Lock/Key button still brings up the full screen lock menu (same as CTRL-ALT-DEL). The “i” (toshiba assist?) doesn't do anything and neither does the presentation button (last on the right). The rotate (hold down Esc) button still rotates in a sequential order - I have never had the automatic orientation sensor work in Vista. One thing I did notice with rotation is that the external monitors stays the way it is and doesn't get all screwy. I can't be sure if that's because of this most recent bios update or not but all is good on that front. The 4 way button & enter still works as expected.

Opening up Office 2007 files in Office 2003 and XP

The Microsoft Office Compatibility Pack for Office XP and Office 2003 enables a user to open and even save 2007 Office release XML files.  That's cool and reduces the risk when you have some folks using Office 2007 in your company, and others note. Nice feature.

http://technet2.microsoft.com/Office/en-us/library/c6189fcd-3668-4cd7-8bac-5c37e338bde21033.mspx?mfr=true

 

So long John

In case you haven't heard, John Lam is leaving ObjectSharp (and Toronto) for Microsoft (and Redmond) in January of next year. John will be taking his passion and expertise for Ruby and Dynamic Languages and helping out the CLR team buff up its support in that area as a Program Manager. As you may know, John has spent most of his time recently at ObjectSharp on the RubyCLR Open Source project. We'll be figuring out what to do with that over the next few months when John makes the transition to Microsoft. Check out John's blog if you're interested in stepping up to the plate to help out.

On a personal note, I'm sorry to see John leave, but you have to follow your heart and your passion so I wish him the best of luck in his new role. I'll be keeping very close eye on his kool-aid drinking, pill popping, MS assimilation process and can hardly wait to jab him as soon as he starts adding “super” in front his emotions :)

Good luck John.

Unifying My RSS Aggregation: IE7/Vista, Outlook 2007, Newsgator, Exchange

Icarumba! All of those things in the title have 1 way or another of storing RSS feeds. But it wasn't as bad as I hoped. Now that I'm using Vista RC2 fulltime, I figured it was time to start looking into the IE7/Vista RSS store. I had been leaning on the newsgator web based reader for all of my RSS consumption needs - and consequently have been falling behind.

I'm an Office/Outlook 2007 newbie since RC2 of vista. I installed Beta 2 of office and the technical refresh. I managed to get it hooked up to our exchange server, although I wasn't able to get HTTP access working the first time - I had to be on the LAN the first time I connected to the Exchange Server. I may have been doing something wrong, but I was able to do that with Outlook 2003.

One of the options that cam up with Outlook 2007 was the ablity to display/aggregate RSS feeds - and furthermore, sync with the IE7 RSS store. I had the RSS gadget on my sidebar staring at me empty for too long - time to make the plunge. What could I do about all my newsgator feeds though? I didn't want to manually add them, and I suppose I could have exported/imported an OPML file. But I kind of like reading blogs occassionally on other machines (my parents house, my wife's computer in the kitchen, etc.) via the browser.

And then I cam across the NewsGator Desktop Sync Beta that promises to keep readmarks in sync between outlook/windows rss and newsgator. Fantastic, it worked, sort of. It fails to import a number of blogs, citing that the feed contains document type definition references which are not support, and a couple of other meaningless error messages. I'll have to investigate this further, but all I could say was “sweet”. Especially when I opened up Outlook Web Access to our exchange server, and could see the RSS feeds in my inbox there as well.

Is this a good thing I asked myself? I mean, if I really wanted to read feeds through a browser I could use Newsgator's online reader which is way better than OWA. Argh, then I got an email from our exchange server: You mail box is now disabled because it is full. Damn. I told you I was behind on my blog reading. I would have loved to been able to read my blogs in outlook...without storing them on my exchange server. I suppose I don't really need them in outlook. The other sad problem with the Newsgator Desktop Sync Beta is that it lost my nice folder structure of how I've organized my blogs. All I get is one big flat list. Yuck, but sweet. :)

 

Toshiba Protege M400 Tablet PC and Vista RC2

I've been running Vista RC2 since the weekend on my Toshiba M400. I was running RC1 before that, and Beta 2 on and off prior to that. During the RC1 “era” (from an XP upgrade)  I had a lot of junk on my laptop that wouldn't work. So I was backfilling with help from Virtual PC, VMWare, and remote desktop into other machines to get real work done.

RC2 looks pretty good so far. This time I did a clean install and just about everything works like I'd hope, save for the HDD vibration. I did not use all of the drivers from the Toshiba M400 Vista RC1 support page. I used their RAID drivers (have to on a clean install) during the initial install. I am using the common modules after that, then the fingerprint drivers, and the flash memory drivers. A couple of friends at MS hooked me up with another build of the bluetooth monitor - which is not the full stack from this page. I think I'm using just the toshiba bluetooth monitor, and then the rest of the MS stack/utilities from that point up. My dial-up networking over bluetooth to my EVDO Bell Mobility phone wasn't working with the pure Toshiba stuff. Works like a charm now with this setup. Since RC1 I've been getting glass my default after installs. I've noticed however that with RC2, it hasn't been turning glass off when I go into multi-monitor mode. Nice.

I did have one major problem - something got pooched after day 2 with my tablet pc input - data execution protection was turning it off and the machine ran like a dog. It happened on the train home on Monday - I threw the machine into rotated tablet mode for the first time since the install - and the Toshiba rotation utility captured the event and rotated nicely. However, something was wrong. When I clicked on a point on the screen - the actual mouse would be positioned somewhere about 2 feet to the right (off screen). I had to use the touch pad to bring it back over. Going back into landscape mode didn't help either. After a reboot - then I was cooked - DEP errors and even going to “Last Known Good Configuration“ didn't help either. I solved the problem by going back to a system restore point from the day earlier and things were fine after that.

Since that, everything has been roses (knock on wood). Things working include Multi-monitor, rotation, fingerprint, flash media reader, DVD Burner, usb ready-boost. wifi, bluetooth (mouse and DUN are all that I'm using). I even captured a home video over IEEE firewire last night surprisingly simple. I plugged in my camera and it just showed up and offerred to import the video (including rewinding the tape for me). It was almost like a I had a Mac for a moment. When it got to the end of the tape (on my Canon Elura) instead of parsing up the video into scenes like it said it would, it just displayed an error message that said there was no tape in the camera. Fortunately the tmp file was sitting my Videos folder and I was able to rename it and then open it up in Movie Maker, and it it cut it up into scenes very nicely.

I haven't loaded the cross-fire craplet - but that was working on my upgrade with RC1. I'm not using the buttons utility or hotkey display from Toshiba - they've never done anything for me in the past so I'd just as soon as not muddy the waters. The auto-detect orientation button on the M400 never worked with it either (and still doesn't without). Depressing that button does rotate, but it just advances 90 degrees each time. The 4 way joystick seems to have a mind of it's own so I need to figure out what to do with that. Up goes into Windows-Tab carousel mode. Down shows the desktop. Left opens up a new IE window. Right opens up Excel. I'm not sure what press-down does yet - but it's something. ESC stranglely loads up Media player. The Key/lock button is the same as CTRL-ALT-DEL and gives you the option of locking the machine. The “i” info button doesn't do anything and the the presentation mode button doesn't do anything either - although I really want that to use the built-in vista presentation mode accessed from the windows mobility center if I can ever figure out that.

Appcompat is a bit better. VMWare player 1.02 installs and work fine. I have yet to try out Virtual PC but I'm going to have to today or tomorrow (lest I use an old stunt machine for customer session I'm doing tomorrow with team system).

A few weeks ago when I first tried out RC1, and did some goofing around with Acronis True Image to back up my old system on a second drive (in the HDD Adapter slim-drive bay) something wierd happened. My cmos battery appears to have died. I can't keep an accurate time anymore. I suspect it's the battery because at one point I restored back to XP and still had the problem. At the same point I also did the 1.70 bios update so maybe that caused it. It does seem strange that a 6 month old laptop cmos battery would die. I'm told I have to bring it in for service for them to look at that. What a pain.

CVT in my upcoming Prius

A while ago I shared some information on the benefits of turning off your car and not idling unnecessarily. One of my commentors, Ben Fulton, suggested I buy a car that does it for me automatically, and then some. A few other folks have been making Prius recommendations for some time now. So on Saturday I went and bought a 2007 Toyota Prius. I don't actually get the car for “4 to 6 weeks”, but I'm having fun researching more about the ins and outs of this cool car.

Of particular interest is Alex Hart's interactive flash animation and documentation of the inner workings of the Toyota's Power Split Device (PSD), a nifty gearset used to combine power from the electrical motors and the internal combusion engine. The PSD acts as a continuous variable transmission (CVT), which avoids the typical “rev-lurch-rev-lurch” of a traditional transmission. Alex's nice enough to post the source for his demo at the end of the page.

Jeremy Kusnetz takes that to the next level and wires up this flash to turn this into a live feed (1/400 scale) in the display of his Prius. He's got a quicktime movie of it's operation. It's a cool modification, but I do not endorse the camera angle this video was taken from (the drivers seat). I need to figure out what city Jeremy lives in so I can not walk around there at night time.

Visual Studio and Team Systems Service Pack Betas

So we have a few service packs to talk about....

Firstly, Visual Studio 2005, SP1 is now in beta testing. This is a fairly big service pack, lots of bug fixes, and the odd new feature. The list is not complete of things fixed yet but Microsoft promises to update that list when they ship. You can read the announcement here and if you like, register for the beta on the Microsoft Connect Site. In that announcement, Soma also goes on to talk about Vista support and what that means for Visual Studio 2002, 2003, and 2005. Keep in mind, this has little to do with your applications running on Vista - but is about running the development environment on Vista.

Secondly, Brian Harry anounced the beta availability for Team Foundation Server SP1. You can register for the download on the Microsoft Connect Site. I'm most thankful for full-fledged extranet support. As you may know, there are some security hiccups when not using a VPN and trying t pass through a variety of firewalls/proxy servers. This one should have been in the 1.0 release in my opinion, but better late than never.

I do a fair amount of Work Item Type customization for customers so I'm pretty excited about the ability to create custom controls on your work item forms.

Other notable improvements: Better performance and scale, Excel/Project 2007 Support, Support for the new Web Application Projects.

I have it on good authority that you don't have to worry about what version of the client you have for compatibility with the server. So feel free to mix and match, you know, like Garanimals.

 

You'll find increased scalability and better performance with Work Item Tracking, Version Control, and the Data Warehouse.

Visual Studio Team System Public MSDN Chat

Come and join members from the Visual Studio Team System product group to discuss features available in Visual Studio Architect, Developer and Tester editions and Team Foundation Server. There will be experts on hand to answer your questions.

Join the chat on Wednesday September 6th, 2006 1:00pm - 2:00pm Eastern time. (Convert this to your timezone.)

To add this to your calendar, click here.

Turn off your car

Some interesting facts about idling and turning off your car.

  • 10 seconds of idling uses as much gas as restarting your car. As a rule of thumb, if your car will be stationary for 10 seconds or more, turn it off to save gas and reduce greenhouse gas emissions.
  • The wear on components by the additional starting of your car will equate to about $10/year.
  • An idling engine releases twice as much exhaust fumes as a moving vehicle
  • If every light-duty vehicle's driver reduced idling by 5 minutes a day, this would result in 1.6 million tonnes of carbon dioxide emmissions in Canada annualy.

It's kind of fun to see how far you can coast with your engine off, but beware that power brakes and steering don't work when your ignition is off. If you're going to try this, make sure to practice with no cars around, especially mine :)

 

Unit Testing Custom MSBuild Tasks

If you're developing custom MSBuild Tasks, and you're interested in testing them (and you should) using NUnit or VSTS there are a few considerations.

The first is the strategy you want to adopt for testing the custom task. In the spirit of “Unit” testing, you may choose to test only your code in the tightest scope possible. In this scenario, you may choose to new up your custom task, set some properties on it, and fire the Execute method.

Be forewarned however, that when you do this, you don't have the full Build engine around running around your task. If you use the built in task logging mechanism, i.e.

Log.LogMessage("QueueName {0}, Message {1}", this.queueName, this.message);

You'll get an exception thrown....

Error message:

Test method ExecuteTest threw exception: 
System.InvalidOperationException: Task attempted to log before it was initialized.

Stack trace:

at Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(String resourceName, Object[] args)
at Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(Boolean condition, String resourceName, Object arg0)
at Microsoft.Build.Utilities.TaskLoggingHelper.LogMessage(MessageImportance importance, String message, Object[] messageArgs)
at Microsoft.Build.Utilities.TaskLoggingHelper.LogMessage(String message, Object[] messageArgs)
...

If you still want to test your custom task like this, you can test for the presencen of the build engine and not use it's built in logging features....i.e.

if (this.BuildEngine!=null)
     Log.LogMessage("QueueName {0}, Message {1}", this.queueName, this.message);

Of course, if you choose to fire off your custom build task within the scope of the build engine by executing a test build script harness (and that's a good idea too) you won't run into this problem, i.e.

Process buildProcess = new Process();
buildProcess.StartInfo.FileName = "C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\MSBuild";
buildProcess.StartInfo.Arguments = "testscript.msbuild /target:testTarget”;
buildProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
buildProcess.StartInfo.CreateNoWindow = true;
buildProcess.Start();
buildProcess.WaitForExit();
buildProcess.Close();
//TODO: Assert that the script did what it was supposed to do.

My preference is to do both types of tests. The first style is helpful in the case of my actual custom task being faulty. If the first style fails, I'm very certain that the error is within the guts of that task. The second style is helpful in more of an integration test way. If the second style fails (and not the first) it means there is a problem in the way I'm calling my custom task within a build script.