Monday, December 6, 2010

Vista screen resolution resets monitor on lock, reboot, etc. for dual display

Vista has this nice feature called "Transient Multi-Monitor" (TMM) service which detects when monitors are added/removed from your laptop. Unfortunately, it has a habit of LOSING ITS MIND and resetting your display resolution at random times. For example, if you connect a new monitor or (lately) if the screen locks. When I unlock the screen, it resets to 800x600 or some other lame resolution.

This is all controlled by the "TMM" which is run by the task scheduler. If you don't have multiple monitors, then you can just disable it in the Task Scheduler and solve the problem. I, however, DO have multiple monitors which I'm often changing. It worked fine for a while, but has degraded to chaos lately.

Here's a good article about resetting it the registry settings so you can start over and see if it fixes your problems:

These are stored in HKEY_CURRENT_USER\Software\Microsoft\MobilePC\TMM and you can simply delete the tree and have it start over. You need to logout/in to make it fix itself. There are also a lot of semi-related keys stored here: HKEY_CURRENT_CONFIG\System\CurrentControlSet\Control\VIDEO that have similar settings. I don't know what the effect of changing those would be...

Tuesday, November 30, 2010

Single stage snow blower comparison review

I recently went through a bunch of pain and tribulations trying to do some research on single stage snow blowers (snow throwers) to find the best one. Snow blowers come in two basic varieties: single stage and dual stage. The dual-stage throwers are the ones we typically thing of: big giant auger/chewer mechanisms in front that break up snow to feed it to a second high-speed rotor that throws it up in the air. The single stage throwers have a single high-RPM auger that grabs snow and throws it up through the shoot all in one motion. The single-stage blowers tend to be smaller, lighter, and drag themselves along with their primary auger. The dual-stage monsters are large, heavy, and have driven wheels that drive at multiple speeds to chew up snow.

I fell in love with single-stage blowers after using my neighbors old Yardman 720E single-stage green powerhouse. Yardman was eventually purchased by Toro and renamed as the Toro CCR 3650 to ultimately become the Toro Powerclear 421, the Cadillac of single-stage snow blowers. It has a 141cc 2-cycle, 6 hp motor that can throw snow 35 ft and clear 1800 lbs of snow per hour.

I went in search of a good single-stage snow blower to compare against this one. The newest iteration, the Toro Powerclear 421QE runs about $899, which was kind of steep for my budget (lets face it, I'm cheap). I live in Virginia and we get about 5 significant snowfalls every 3 years. (Not counting the Blizzards in early 2010). My basic criteria was as follows:
  • Strong motor: strong enough to rip throw snow and throw it far. I based it against the 141 cc 2-stroke in the Toro/Yardman. Many new ones have 4-cycle engines and I wasn't sure how strong they were. They ranged from piddly 87cc, to 123 cc (deemed "too weak" by many reviews), to 148cc, 163cc (the Toro 421), 179cc, and the largest at 208cc.
  • Gull-wing bent handlebar. Many throwers have a simple squared-off handle bar much like a common lawn mower. I prefer the ones that are bent forward to give some additional torque when pushing the machine along.
  • Easily adjusted chute. The Cadillac Toro 421QE has a "Quick Shute" with remote cables to spin the chute left/right and up/down easily. Most have simple manual chutes that you have to move away from the handle bar to actually move. My experience has been that you end up moving the chute back and forth a LOT during snow removal, so the remote controls are kind of nice. (For reference, the original Yardman had a crank to turn from the handle bar to move it left and right. This was ok, but annoying to turn it back and forth.)
  • Electric start. Modern small motors are very easy to start with standard recoil pull-starters, but the electric start would be an added bonus if the wife ever needed to fire the thing up.
  • Sizeable wheels. Smallest ones are 6", largest are 8". I just find the bigger ones easier to push along.
  • Serviceability. I don't want the thing to break, but if it does, I want to be able to get parts from a reputable dealership.
 After shopping around a LOT and trying to do some research, I finally settled on this one: The Cub Cadet 221 LHP for $539 from Home Depot online. I saw it on the Cub Cadet site for $549 on sale, but they don't sell direct. When the local dealer contacted me with a quote, he basically didn't want to sell a single-stage unit and tried to talk me into a low-end $600 dual-stage unit. My experience with low-end dual-stage units is THEY SUCK, so I decided to go with Home Depot who also sold the Cub Cadet. After calling them, they offered to price match by giving me a 10% discount from the $599 list price to $539, which beat my budgeted price.

Some things I liked about the Cub Cadet:
  • Biggest motor in its class. The 208cc 4-cycle motor puts out advertised 9 ft-lb of torque which works out to 6-7 HP if it matches typical operating speed of 3800 RPM.
  • Easily adjustable chute
  • Gull wing handle
  • Electric start
  • Large 8" ball-bearing wheels
  • Reputable company (Cub Cadet)
  • Bonus: in-dash headlight! (Might be the only one on the market with this.)
I think this compares very well against or even beats the Toro 421QE and beats the price by almost $300! When I started looking, I almost bought a McCollough 961 that was on sale from http://www.snowblowersdirect.com for $449 on Cyber Monday. I noticed it had the 208cc motor that put up an impressive head-to-head comparison on a YouTube video. After grepping around the internet, I discovered the Cub Cadet with the same motor and some fairly strong reviews. I decided the Cub Cadet was close in price and had a LOT more features, so went for it. Here's my comparison spreadsheet on Google docs showing the ones I looked at.

Single Stage Snow Blower Comparison Spreadsheet

I just ordered it and am eagerly awaiting the arrival of my unit and the first snow!

UPDATE1: I got my snow blower a couple days later from Home Depot. Unfortunately, the box got bashed up so the main wheel axle was bent. Another minor point was the head-light mounting clip was cracked and broken, so the light just falls out of the mounting point. I called Home Depot and they happily sent me another one. I returned the first one to a local store and got my payment refunded properly. No big deal. Unfortunately, the second shipment ALSO had a broken headlight clip because the same cross-piece was bouncing around inside the container again. Definitely a shipping flaw.

UPDATE2: I've now gone through a few minor snow storms and must say I'm very pleased with my purchase. The first snow was small ... only a few inches. The cub ripped right through it with no trouble. The second storm was a little more of a challenge. We got about 8" of heavy, wet snow. I went out a few times, the deepest being about 5-6" at once. Again, absolutely no problem. It even plugged through the slushy, mushy stuff the next day and just flung it 10' in whatever direction I pointed it. I was able to blast through the 2" snow bank the plow left for me, as well. That was a little more work and required some maneuvering and a few passed to let it chew through everything.

Overall: very happy with my purchase. I'm not sure it's quite as peppy as my neighbors old 2-stroke Toro, but I have no complaints. I really like the easily adjustable side-to-side swing for the chute as well as the up/down adjuster. (Minor design point: the force of the thrown snow tends to push the angle up unless you really crank the pinch bolts down.) Plus, the little headlight is cool and makes all my neighbors jealous.

Friday, October 22, 2010

Creating a VirtualBox VM from a VMware machine

I recently had some problems where my VMplayer was running really slow for an XP guest machine on my Vista host machine. The performance was terrible -- very very unusably slow. It took 10 minutes to boot and then would have a 2-3 second lag (at least) when moving mouse and clicking on something. I have no idea why, so I thought I'd try some other options.

I decided to try Virtual Box, the free VM player from Oracle/Sun. So far, it work pretty well.

I was able to use the existing VMware disk image for my Vbox image. I copied the VMware .vmdx files from my existing directory into a new place, then created a new Vbox image and pointed it to the existing disk image. It was VERY straight forward.

The one problem I had was networking and display drivers. When I boot the machine, it didn't want to work at very well, all. It  had the generic VGA driver and NO network driver. This made it hard for it to get network disk drivers.

As it turns out, the virtual ethernet control looked close enough to the VMware AMD PCnet device that it was trying to use that driver, which of course failed. Virtual Box comes with some "guest tools" that can be installed which fix the problem. I had to install the guest tools inside the XP image (mounted as CD from ISO image). I also ran the 'unpack drivers' step from the command line based on their instructions to unpack the drivers into a local directory, although I'm not sure that was needed.  After installing these tools, the network adapters STILL didn't work. They were still trying to use the VMware drivers.

I fixed the problem by using "update driver" from the Device manager, then picking my own specific location and driver. It already recognized that it had the VBox AMD PCnet driver installed, but some how was priortizing the VMware one. I simply selected the VBox adapter and it started working.

Another note: I chose 'bridged adapter' in the configuration simply because the Cisco VPN client I was using in my image works better with that. I suspect it would work fine with NAT as well.

The 'guest tools' also installed and fixed the display driver so it ran a little better.

Overall: Vbox seems to be running very smoothly. I like it so far.


Side note: VirtualBox runs on Intel Macs, as well.


Rich

Tuesday, August 10, 2010

Creating a branch in Perforce with P4V

I recently wanted to create a private branch to experiment with some stuff in a Perforce repository. Coming from a SVN history, I had to figure out what 'branching' means in Perforce. Perforce uses the word "integrate" for most branching activities. What's a little strange is that you 'integrate' to create the branch, then you 'integrate' to merge the branch later. I'm still not completely sure what that means.

To create the branch, I used this link: http://www.exogenesis.org/notes/perforce.html which was very helpful.

First, create a new branch spec. Use File > New > Branch Mapping. (To edit it later, use View > Branch Mappings). In it, I created "LogRecords-rmills" as the name of my branch, then gave it a branch spec of

//dev/product/support/tools-internal/LogRecords/... //dev/product/support/tools-internal/LogRecords-rmills/...

which I *think* will create a second version of it right next to where it belongs.

Side project: I also adjusted my current workspace spec to prune down the entire repository that I had. I used View > Workspaces, then edited my workspace to include

//dev/product/support/tools-internal/LogRecords-rmills/... C:/workspace/LogRecords-rmills

Next, you need to actually execute the branch creation, which is done with "Integrate..."
  1. Choose the "LogRecords" entry in the Workspace that I currently have sync'd.
  2. Context Menu > Integrate ... 
    1. "Use Branch Specification"
    2. Select my branch mapping "LogRecords-rmills"
    3. Use "Preview" to indicate that it seems to have the right mapping together
    4. Use "Integrate" to actually start the branch/copy.
It churns for a while and appears to be creating my copy. NOTE: It appears that P4 does client-side copying and branching, so this takes a LOOOOONG time if you have big files.

When finished, I know have files in C:\workspace\LogRecords-rmills.

Tuesday, July 27, 2010

Moving tasks/stories to another Version One project while preserving data

Version One allows you to move stories between project. It maintains some information like Status, Estimate, Owner, etc. It doesn't seem to preserve certain things like Feature Groups. I used this technique to do it.
  1. Start in the Product Planning: Feature Groups area.
  2. Duplicate the feature groups in the other project
  3. In Project One, select a set of stories with Filter: Feature Group for the one you want.
  4. Move all the stories to the other project
  5. In Project Two, select all the newly added stories. They won't have a Feature Group.
  6. Use "Move to Feature Group" to put them in the right group again.
 Note: You can also drag/drop stories into a particular feature group if you want to do it one at a time.

Creating feature groups in Version One

I use "feature groups" in Version One to track tasks that are being executed and group them together by particular themes. In this case, I have some performance testing areas for a set of features in the product that I want to track.

This is done through Product Planning > Feature Groups.

In this case, I have the following breakdown:
  • Performance
    • Perf: Reporting
    • Perf: Collection
    • Perf: Alerting
This way, all tasks roll up to performance testing.

Thursday, April 15, 2010

Various information on virtual private server hosting

I've been looking at various hosting solutions lately, trying to find a good place to host a Unix server that I can play with. There are a variety of hosting types:
  • VPS - virtual private server; you have complete control over it with root access for installing software or destroying system. Runs $20-$70/month depending on options.
  • Basic hosting - a shared hosted platform designed for hosting standard web apps, sometimes with shell access. Costs starting at $5/month.
  • Cloud hosting - kind of like VPS, but much more dynamic. Includes ability to create/destroy server instances quickly. Pay a-la-carte for cpu, bandwidth, and storage uses.

A few sites that look interesting:
  • Amazon EC2 - true 'cloud' hosting. You can get a basic instance going for about $60/month and it has a lot of flexibility for expansion and more-or-less infinite storage and computing capabilities. You can also clone instances on a per-hour charge to start and stop as many servers as you want easily. Minimum server size is 1.7GB RAM, which is big. Disk persistence is kind of strange -- when the server shuts down, it looses all storage unless you do something specific with storage.
  • slicehost.com - good Linux (or windows) hosting for $20-$70/month.
  • vpsland.com - another suggested Linux/Windows hosting site for $20-60/month.
  • http://www.lunarpages.com/basic-hosting/ - another, suggested by Robert. $27 for 256/10/500 service.
  • rackspace.com - similar to EC2, allows you to create cloud server instances. Starts at $11/mo for 256/10/xx server. (Seems REALLY cheap.)
Given everything, rackspace.com looks like a damn good option. Need to investigate a little further.

Wednesday, February 3, 2010

Using WMIC to get Windows process information

Someone recently asked "How do I get the command line used to invoke a process with a command line command similar to 'ps -ef' ?" The response came back:



I always use this:

WMIC PROCESS get Caption,Commandline,Processid






That rocks. I never realized that WMIC could do that. My life just got a little brighter.