Living with Windows 7

So, I’ve been living with my new computer for almost a month now, and that’s given me plenty of time to become familiar with the changes that came with Windows 7.

Previously, I’d only played around with Windows 7 through the betas and release candidates in a virtual machine – which, by its very nature, lacked the power to really let Windows 7 shine.

My new computer, on the other hand, has enough “oomph” to let me turn on all the bells & whistles so I can see how they work and which ones I like. This has allowed me to really get a “feel” for Windows 7 – arguably in an even better way than I did with Vista on my old computer.

So far, I have to say that I am very pleased.

If you’ve read any other Windows 7 reviews, you’ve probably read a lot of praise on how Windows 7 is a great leap forward, it’s so nice, etc.

Well, those people weren’t lying.

Windows 7 is incredibly polished. I’m sort of a details person, so these little details, the “fit & finish” of Windows 7 really impress me.

In any case, let’s get down to the details – in a nice, convenient list format:

  • Multitasking: you need a true multi-core CPU to get the benefits of this, but Windows 7 does a superb job of running lots and lots of programs all at once without any sort of trouble between them. And if one program goes down, you can just kill it and keep on truckin’ – no reboot required.
  • Stability: Windows 7  has so far been incredibly stable for me – and I tend to push my computers hard, so I’m one to know. Of course, part of this is due to the fact that I’m running the 64-bit version, and the 64-bit versions of Windows don’t allow “unsigned” drivers. And since device drivers are often the biggest contributor to instability in Windows, the fact that only “signed” drivers are allowed means that (overall) the quality of drivers is much higher – which means, in turn, that Windows is more stable.
  • UAC: My biggest gripe in Windows Vista was the UAC prompts that would pop up in various places – most annoying to me, personally, was when I tried to drag & drop to re-arrange folders in my start menu (I like to have my start menu nice & neat). If the folder or icon I was dragging & dropping was in the “All users” branch of the start menu, I’d get a UAC prompt when moving it. It was just incredibly annoying. In Windows 7 these prompts come up less often, which makes me very happy!
  • New Task bar: This is one place where I found myself unhappy with the default Windows 7 behavior, which is to show programs in the task bar by icon only (even when the program is open). I like being able to read the title of a window at a glance, without having to mouse over it, so I turned that functionality off. Plus, having the task bar buttons be full-sized with titles helps visually distinguish (even more) between running programs and programs that are just “pinned” to the task bar.
  • Glass Effects: speaking of the task bar, if you hover your mouse over open programs, you’ll see that the sort of glowing colored highlight follows your mouse pointer – as if your mouse pointer were a light shining on the button. On top of that, the color of the highlight is based on the color of the program’s icon… Niiiiiice. It’s little details like this that really impress me.
  • Aero Peek: Though I think the name is a bit pretentious, it is a handy feature. Basically the evolution of the “show desktop” button in that you can just hover over it, and it will make all open Windows 100% transparent so you can see your desktop (any windows that are not full-screen will show a faint outline so you know where they are). Other than that, the button acts just like the old “show desktop” button – click it once to show the desktop, click it again to restore all windows. Simple and easy, but it’s nice to have it permanently attached to the task bar, so you don’t lose it.
  • Libraries: I’m not exaggerating here – I love libraries. I’d been wishing for some sort of functionality like this for years, without even realizing it – or even being able to describe what I wanted. But libraries deliver. Got a folder with some pictures in it, in some strange location on your computer? Just add it to your “Pictures” library and now it’ll show up as if you had copied it into your “My Pictures” folder – but without actually having to copy it there! And since things like Windows Media Center and so on use libraries (rather than specific folders), it makes managing a music & movie collection so much easier!
  • Windows Media Center: The new UI for Windows Media Center is nice, but I didn’t really mind the UI in Vista either, so this doesn’t really impress me that much. It’s nicer, sure, but not enough for me to sing its praises.
  • Windows Media Center Extender Support: OK, so maybe I will sing the praises of the new Media Center UI – at least, as it applies to Windows Media Center Extenders. Because the new UI applies to these little, under-appreciated, under-powered devices. My Media Center Extender (MCE) hasn’t gotten any faster, but it looks nicer and it works more smoothly than it did when it was connected to a Vista computer. So there’s a bonus there.
  • Media Sharing & “Play To”: In addition to having a Media Center Extender, my new TV also supports the Digital Living Network Alliance (DLNA) standard, which means it can connect to my computer and stream media (pictures, videos, music) from my computer. Under Vista, the only way to get this media was to browse for it from the TV – and the UI was a bit clunky and sometimes crashed! With Windows 7 however, the game has changed. Although the UI for browsing media directly from the TV is still clunky and slow, it is much more stable. And if that’s not your cup of tea, you can play media directly from the PC to the TV by right-clicking a file and choosing “Play To” and then selecting the TV (Windows detects any DLNA devices on the network automatically – though they do have to be turned on first!). There is just something deeply, geekily cool about selecting a video on your computer and then hearing it start to play in the other room!
  • Videos link on the Start Menu: It’s a little thing, but it was always very annoying to me that in Vista there was no “Videos” link option on the Start Menu. You had links to Documents, Pictures, and Music – but no Videos! Thankfully, this little oversight has been corrected in Windows 7. Again, it’s the little things that really add up and make Windows 7 such a pleasure to use.
  • Drag and Drop re-arrange of Task bar buttons: I’m not talking about pinned items, but actual task bar buttons for open programs – you can now drag & drop to re-arrange them as you see fit. Previously, you needed a 3rd party program to enable this feature. It’s not a big deal, but it’s nice if you’ve got a lot of windows open and you want them arranged in a certain order.
  • Volume control for multiple audio devices: Although Windows Vista handled volume control pretty well (you could adjust volume on a per-program basis), Windows 7 takes this even further. Now, most people will only ever have 1 audio device – their main sound card – in their computer, but increasingly you find people with secondary sound cards – maybe a USB headset, like I have (for Skype, etc.). When you click the “Volume” icon in the taskbar, it shows the “main” volume control, same as always. But, if you are using a secondary audio device (like, say, you have Skype open and are using your headset), when you click the “Volume” icon you get two volume sliders – one for the main volume, and one for the secondary device. Nice! You can control the volume for each individually – very handy!

So those are the big new things I’m very happy about with Windows 7. Suffice it to say, if you have the opportunity, I highly recommend you upgrade. Believe me – it is well worth it!

New Year, New Computer

Well, I finally made the jump to a new computer.

I’d talked about getting a new computer before (and why I had to get a new computer instead of upgrading, as well as the troubles I’d had trying to use the release candidate), and I’d also been looking forward to using Windows 7 – and now, at long last, I have a new, modern, fast computer with Windows 7 (64-bit, even!)

The system properties window from "Yotsuba," my new computer!

Over the last week I had been slowly installing all of my programs on the new computer, so it would be ready for me to use Windows Easy Transfer to bring my user profile over. (The list of programs I had to re-install filled 2 pages!)

This would be my first time using Windows Easy Transfer, and I was a little bit unsure – after all, my user profile was directory junctioned onto a 2nd hard drive. I had serious doubts as to whether it would pick up everything, or if I’d end up re-creating my profile from scratch (which, by the way, would not be the first time I’d had to do that).

Still, the potential benefits of Windows Easy Transfer (i.e., not having to re-create my profile from scratch) meant that I was willing to give it a shot. So just last night I set up the new computer on a temporary table next to my router (so that both computers could be on and connected to the network at the same time) and fired up Windows Easy Transfer.

Truth be told, it couldn’t be easier. It really did detect everything important. The only downside? A 5+ hour transfer time. But that’s really my fault, since I had 212+ GB of data to transfer!!

Still, that’s why I started it in the evening. I just let it run overnight, and sure enough, when I woke up this morning, my new computer was ready to go, with no errors.

Let’s just say, I am really, really happy!

Here’s the details on what I finally ended up with:

  • Intel Core 2 Quad (Q9400) 2.66 GHz CPU
  • 6 GB RAM
  • 500 GB HDD
  • ATI Radeon 4350 video card
  • Windows 7 (64-bit) Home Premium

Suffice to say, the new computer is quite a bit faster than my old one, even though technically the new computer is running at a slower clock speed!

The hard drive is still the slowest piece of the equation (as it often is in almost all computers these days, unless they utilize one of the new – and very expensive – solid state drives), but other than that, everything else is faster. The graphics card has more muscle, the CPU to RAM bus speed is faster, and of course the CPU is a true multi-core processor – 4 cores, to be exact.

Which leads me to the name of this new computer. Previously, I had named my computers after fictional/mythical places:

  • Home One (the flagship of the rebel fleet in Star Wars)
  • Sanctuary
  • Mobius (the fictional homeworld of Sonic the Hedgehog)
  • Elysion (the roman afterlife)

I had thought long and hard about a name for the new computer that fit with the existing “theme” of my computer names – and perhaps had some relation to the number “4″ (for the quad-core CPU). But I couldn’t come up with anything.

However, just as I was getting into bed the night before I transferred all my data over to the new computer, I had an idea for the new computer’s name. After sleeping on it, I decided it was the best name I was going to find, and I liked the way it was a subtle nod to the new computer’s 4 CPU cores.

So, my new computer is named (as you probably saw in the screenshot above): Yotsuba, after the manga character of the same name.

I guess the new name for this computer isn’t that odd – after all, I did name my netbook Ryo-Ohki (after a small, cute little rabbit/cat creature that also just happens to be able to transform into a super-powerful spaceship!).

Now all that’s left to do is just change a few little things here and there – things like organizing folders on my start menu, making sure absolutely everything works, re-configuring Windows Media Center (and my Windows Media Center Extender) and so on.

So far though, so good!

Keith’s Logon Screen

Everyone loves to customize their computer a little bit, right? And one of the simpler things (well, sort of) that you can do is to replace the Windows Log-On Screen background image.

Like this, for instance:

keith's logon screen

Yes, that’s right – I have put a close-up picture of myself as my Windows log-on screen background image. I am, to use the industry jargon, a huge geek.

I don’t know why I find this image of myself staring (rather intently!) back out at me so amusing, but I do. Perhaps it has something to do with the fact that when you log on to my computer, it says “hello” in that creepy voice that the turrets from the game Portal use?

Or maybe I just like the reaction people have when they sit down to use my computer and are faced with… well, me!

Ah well, whatever the reason, it’s not like I see this screen very often – maybe once or twice a month, max.

Trying to Upgrade from Vista to Windows 7 – Take 2

So this weekend I set aside a block of time (roughly 5 hours) when I wouldn’t need my computer so I could take a stab at trying to upgrade from Windows Vista to Windows 7 (again).

This time, I moved my Documents, Music, Pictures, and Videos (which constitute the bulk of my user profile) into a separate folder on my 2nd hard drive for safe keeping, and then used a 2nd user account to delete the directory junction that linked my user profile to my 2nd hard drive. Then, I moved my (now much smaller) user profile back on to the boot drive (C:), and began the upgrade process again.

The last time I tried this, I thought that the reason the upgrade failed was because of my use of a directory junction to put my user profile onto my 2nd hard drive. So this time, I thought I’d have better luck, since the link was gone and everything was back where Windows probably expected it to be.

Unfortunately, the result of this second attempt was the same as my first attempt: FAILURE. The only difference is that this time the upgrade didn’t take as long (probably because my user profile was so much smaller). However, it still failed in exactly the same way – it got all the way to the very last step of the installation, and then quit, saying:

“The upgrade was not successful. Your previous version of Windows is being restored.”

It then spent some time rolling back the upgrade, leaving me back where I started. When my desktop came back up, I was greeted by this message:

“This version of Windows could not be installed. Your previous version of Windows has been restored, and you can continue to use it.”

No clue as to the reason for the failed upgrade – that’s my next task.

I don’t want to admit defeat (i.e., do a clean install) – an upgrade from Vista Ultimate 32-bit to Windows 7 RC 32-bit should work just fine. I guess I’m going to have to spend some time spelunking through arcane log files to see if I can find out the root cause of the failed upgrade – wish me luck!!

UPDATE: I’m not the only one with this problem – Jeff Atwood (of Coding Horror) had a similar problem and asked for help over on the website SuperUser.com (great place for getting help). Sadly, he did not get any further than me!

How to Move your Windows User Profile to another Drive

Update: I’ve revised this article a bit based on some feedback from visitors, and to clarify certain steps a bit better.

Another Update: A lot of people seem to run into trouble trying to do this, and can’t seem to understand where they went wrong. Please do understand that everyone’s situation is a little bit different, and I can’t list every possible step that everyone, under every possible circumstance, would need to perform. At the very least, you need to be a little bit self-sufficient here – and if you don’t understand why you might need to reset permissions on your user profile folder after you move it (or how to do that), or if you don’t understand how to copy your user profile in its entirety (hidden and system files included), then perhaps you shouldn’t try to use this method. After all, we are talking about moving your user profile here – and if you don’t know what you’re doing, you can end up with a big mess. You have been warned!

Lately I’ve seen a lot of posts about various ways to move your Windows user profile (or various parts of it) to another drive or location.

Some of these posts suggest using the “Microsoft-approved” method of right-clicking certain folders in your user profile directory (“My Documents” if you’re using XP, and “Documents,” “Music,” “Videos,” and “Pictures” if you’re using Vista or Windows 7) and selecting “Properties” and using the options there to change the default location of those folders (some posts suggest editing the registry directly rather than using the UI).

documents-propertiesAbove: the “Microsoft-Approved” way to change special folder locations.

Other posts suggest using an unattended install of Windows, which can allow you to set the user profile directory that Windows will use to something other than the default.

I’ve found these methods to be less then optimal, for several reasons:

  • The “Microsoft-approved” method will certainly move your folders, but some programs just blindly assume where your user profile is and will write to the original default directory, ignoring the fact that you’ve changed it.
  • You can’t move your whole profile with this method – only certain folders within it. (For example, you can’t move your “Application Data” or “AppData” folders using this method.)
  • The unattended install method of course means re-installing Windows (and is not for the technically faint-of-heart).

I have talked about my method for moving my user profile before, but I think it bears repeating.

My user profile was getting very large – as in, really, really large. I was running out of space on my C: drive, and I had a 2nd hard drive onto which I could move things, but I didn’t want to move things piecemeal – I wanted the whole kit & kaboodle. I didn’t just want my documents, videos, music, and pictures moved – I also wanted my ISO images, virtual machine hard drives, and email archives moved – a lot of which lived in my “AppData” folder. I wanted to give my user profile room to “grow” – and I also wanted the performance benefit of having my user profile on a different physical hard drive from my OS drive.

The picture below shows what I ended up doing – I created an NTFS junction point for my user profile, and moved it onto a 2nd hard drive. The result: my OS drive, C:, is just my OS (and programs). The 2nd hard drive (labeled K:) is entirely my user profile. Obviously, it’s grown a bit since I moved it!

drives.png

So what do you do if you’re in a similar situation and want to move your entire user profile to a different drive (or just a different location on the same disk)?

Enter NTFS directory junction points.

If you’ve ever used UNIX or Linux, you may be familiar with the concept – however, if you’re not familiar with the concept, it’s fairly simple to imagine (I’ve talked about it before as well). Basically, think of a junction as a file-system-level shortcut. Whereas “normal” Windows shortcuts only work in Windows (and are actually little files that redirect you when you click on them), a junction operates at a much “lower” level in the file system, silently redirecting access requests. (This Wikipedia article does a better job explaining what they are than I could ever do, if you’re curious.)

And that’s the key fact here – because support for a junction is built right into the NTFS file system itself, it’s basically invisible to any higher programs. (Programs can detect a junction of course, if they specifically ask – but few programs do.) So you can redirect any folder into another folder on your computer (including on a different physical hard drive). Which, coincidentally, is just what we’re after!

Before we begin though, it’s worth mentioning that this process involves moving your user profile files around – which can be risky if the move gets interrupted or something terrible goes wrong (power outage while you’re doing it, etc.). So take the time to do a complete backup of your data before trying this – but you knew that already, didn’t you?

So, with that said, here are the steps to move your user profile to another location using directory junctions:

  1. Prepare your 2nd hard drive (or whatever destination you’ve chosen) and pick whatever folder you want to “junction” to.
  2. Log out of your user profile and log back in under a different account. If you don’t have a 2nd account, just create one temporarily. Remember to give it full administrator power over your computer or you won’t be able to proceed!
  3. Move EVERYTHING out of your old user profile directory to your new profile directory (e.g., move everything from C:\Users\UserName-Temp). Don’t just copy the files, you need to move them, because you can’t create a junction if a folder by the same name already exists. Your user profile folder is C:\Documents and Settings\UserName if you’re using XP, or C:\Users\UserName if you’re using Vista or Windows 7. Make sure you move hidden and system files, too!
    Note:
    if you run into trouble moving the files (for example, Windows tells you that files are still “in use”) you may need to reboot into “Safe Mode” to make sure there are no programs/services that are locking files that you want to move.
  4. Once you’ve moved all your files, rename your old user profile directory – it doesn’t matter to what, just as long as it’s different (e.g., rename it to C:\Users\UserName.old). After you’re done with the junction and you’re sure everything is working right, you can delete your old user profile directory – just make sure it is REALLY empty before you delete it!!! (Make sure to check for hidden and system files!)
  5. Open a command prompt (Start > Run > cmd will do the trick) and create the junction with the command: mklink /J C:\Users\UserName D:\Users\UserName
    (If you are using Windows XP or earlier, you won’t have the mklink command on your computer – you can use the Sysinternals junction tool to do the same thing. The command line is a little bit different, so be sure to make that adjustment!)
    Note: if you are using Windows Vista or Windows 7, you will probably have to right-click the command prompt and choose Run as Administrator.
  6. Now you can log out of this “temporary” user and back in as your regular user account. (You can delete the temporary account, as we’re done using it.)

If you did everything right, you should be able to log in normally and nobody will be the wiser (except for you, of course!).

The beauty of this is that it works, and it works silently. Windows doesn’t notice a thing (well, it does, but it doesn’t say anything about it) – you’ll log on normally, and all your programs will just work. Folder redirection is beautiful like that.

users-folder

Above: This is what a redirected user profile folder looks like in Windows Vista. Windows “knows” that it is a directory junction (hence the shortcut overlay icon), but it’s not really a “shortcut” in the traditional sense.

users-c

Above: after double-clicking on the user’s folder in the previous picture, you’ll see the user’s folders as you’d normally expect. Notice the address bar still shows this as being on the C: drive, even though it’s not. (Click the image for a larger version.)

users-k

Above: here’s the same folder, but instead of browsing to it via C:\Users, I went in through the K: drive (my 2nd hard drive). This is where the files really live. (Click the image for a larger version.)

Note that there ARE some caveats with this method:

  • If you are using Windows XP, you will run into a bug with NTFS mount points.
  • If you ever try to upgrade Windows, you may run into problems because of the redirection.
  • If your destination folder is on a different volume then permissions will not be inherited and you will have to set the permissions on the destination folder manually (just copy them from your existing user profile folder).
  • If your profile grows to be larger than the free space on your primary OS drive (usually C:), then you may have problems if you ever delete your user account and choose to “save the files” rather than delete them (something I ran into by accident myself).

Nevertheless, even with these warnings and caveats, using directory junctions is a highly effective method for moving your user profile out from the “default” location and into some other location of your own choosing. Hopefully, one day it will be possible in Windows to move your entire user profile to a different location without resorting to tricks like this, but for now, this is probably your best bet.

If you would like to know a little bit more about junction points, symbolic links, the mklink command, and so on, Wikipedia has several good articles to get you started:

Page 1 of 512345