Over the past year and a bit, I've begun playing with Virtualization on my PC. The reason was mainly because I got very tired of having to rebuild my OS when I inevitably got it so cluttered with garbage that it drove me crazy. I'm not talking viruses or other malware, just programs reminants from a variety of shareware and other software installs and uninstalls.
I started with a very brief trial of VMWare Workstation, but gave up on it quickly at the time as I thought it was overkill for what I needed. In fairness, I was actually struggling with the concept of virtualization, and why I'd even need it. After about couple more OS rebuilds, though, I gave it a shot again. VMWare was again the product of choice, and I became a big fan of the snapshot feature.
For those of you who have never used VMWare Workstation, (or any other Virtual Machine software,) you basically install another operating system in a sandbox. So for me, I was running Windows XP on my laptop, and I created a separate copy of Windows XP in a VMWare session. It's completely separate from your original install, so you can do whatever you want to it, without worry of messing up your host OS.
Now the snapshot feature allowed you to install the base virtual OS, and then manage an entire tree of snapshots. So I was able to create a nice clean Windows XP install and take a shot there. From there I was able to create several spinoff images. Let's say it looked like this:
|---> Base + Office 97
|---> Base + Office 2000
|---> Base + Office 2003
|---> Base + Office 2007, Beta 2
|---> Base + Office 2007, Beta 2 + Tech Refresh
At this point, if I wanted to install a totally non office related application, I'd go back to the base snapshot, install the app I wanted, and I'd have a new snapshot with Base + MyApp. All in all a very cool feature.
This was all very good, but one big issue arose when I migrated to Vista... VMWare Workstation does not seem to play very nicely there yet. 🙁
With the upgrade to Vista, it became even more important to me to have a virtual system on my development PC. I'm now running Office 2007, but I will still need to develop and test applications to work in prior versions of Office, and on the Windows XP platform. (I'm not supporting apps on anything earlier.) So far, the only product that I've found that makes the Vista cut is Microsoft's own Virtual PC 2007 Beta.
I can't say much about the product, as I've only been using it a couple of days, but it does not have the snapshot feature that I love so much in VMWare. It does have Microsoft's own flavour of it though, called "Differencing Disks", which sounds similar. The help files are kind of weak on it, but someone pointed out an Excellent article on this feature which explains it much better than I could.
For reference, Virtual PC 2004 is free to use, as the 2007 version will be too.
One other (Free) product worth mentioning here is SVS Juice. This is not a full OS virtualization package, but rather just an application that installs as a sort of layer between your OS and the applications. Any time you want to install a new app, you can create a new layer and install the app into it. You can then activate or deactivate the application at will.
As a case study, let's assume that you get a new game from your brother. You want to try it out, but it needs an install and you're pretty sure you won't want to play it very often. This is the perfect situation for SVS Juice. You create a new layer, install the game, and can play it to try it out. Once you're done, you deactivate the layer, and all the registry keys and disk changes that it made are rolled up into a little package and stored away. They are no longer interfering with your system, and should you choose to delete the layer, will not be left behind.
I used SVS Juice to install any kind of trial software, just to avoid the left over garbage if I didn't want to keep it.
Granted, it doesn't work with everything, and it can be confusing when a file you made that day disappears, or if you want to update layers, but you can get used to it. The sad thing is that it also does not work on Vista yet. 🙁
If you are on XP though, I'd highly recommend checking it out.
I've decided to start playing around with the Ribbon, and figured that I might as well document my journey through this new piece of Excel. I'm going to start fairly slow with it, and add more as I experiment with different pieces.
For reference sake, the examples in this and following posts will be constructed running Office 2007 on Windows Vista, both of which are the RTM, not Beta versions. You will need Office 2007 to follow along, but you don't need to be running it on Vista, per se. My understanding is that it will help to be using the full version, but if all you have is access to the Beta2 or Beta2TR versions, then you should be okay for the most part.
It would also be a great help to have the CustomUI tool that you can download from OpenXML Developer. If you don't want to do things the easy way, you can always follow the hard route from Microsoft's article. 😉
Okay, so here we go...
Part 1 - The basic XML framework
The ribbon is constructed in XML, and we'll need a little XML to make our own. First though, we'll go into Excel and create a new workbook (or use the default blank one). Save it as an "Excel Macro Enabled Workbook" (xlsm), and close the file.
Now, open the Office 2007 CustomUI Editor that you downloaded above, and open up your Excel file. You'll notice that you are staring at a blank page. Paste the following code in there:
Now... this won't do anything for you, but basically it's the main framework that we'll adjust when we're playing with it. See the blank space in the middle? That's where we're going to put in the XML that we actually want to use to do stuff. They key is that any (and as many) tabs we want to create will go between the "tabs" and "/tabs" tags.
Part 2 - Add Some Useful XML
Now, we're going to drop in a little more XML to round things out. In that blank space, we'll add some code to create a new tab on the ribbon called "Custom Tab". Because it's boring to have a totally empty tab, we'll add a group to it, called "Custom Group". No point in leaving that empty either, so we'll put in 3 buttons. We'll call them something really imaginative, like "Custom Button 1"... you can probably guess the rest.
So here's the XML for that. Just drop it in the blank space above:
Now, you'll want to Validate the XML before you save it, to make sure it's well formed. If it isn't, nothing will happen in Excel. No errors, no modification, no nothing. (I actually find that quite irritating, in truth. I'd rather see something to alert me that there is an issue.) To validate the XML, just click the button with the red check mark on it. If it tells you the XML is well formed, all is good, so save the file. If not, try following the steps above to make sure it looks like this:
Part 3 - Link VBA to the Ribbon
So now we have our XML set and saved, we need to reopen the workbook in Excel. You should see a nice new tab on the menu called "Custom Tab" that looks like this when you click it:
Now this is great, but you get an error when you click the buttons, since there is no VBA associated to do anything. So press Alt+F11 to open the VBE. Insert a new standard module, and drop the following code in there:
[vb] Private Sub CallControl(Control As IRibbonControl)
MsgBox "You clicked " & Control.ID
Once you've done that, exit the VBE, and try clicking those buttons. It should tell you what button you clicked.
Actually, if you pay close attention, you'll notice that it feeds you the ButtonID that we set in the XML. (No space... The actual caption on the button has a space.) This is important to note, as it gives us a way to truly tell what button was clicked. The XML we wrote tells the button to call the CallControl subroutine, and passes it's ButtonID to that routine. So if we wanted to call a certain macro for each button, we could use code such as:
[vb]Private Sub CallControl(Control As IRibbonControl)
Select Case Control.ID
Case Is = "Button1"
Case Is = "Button2"
Case Is = "Button3"
Well this sucks... I was writing up a post on using XML to customize the Excel 2007 Ribbon, but WordPress interprets my XML. Nothing I've done so far seems to get it to post in plain text. I'm still pretty new to this, but it's really annoying so far.
20 minutes later...
And WordPress is on a diet! I found the iG:Syntax Hiliter, which is awesome. Super easy to follow instructions to install and configure, even for a non-php and HTML guy like myself. 🙂
A further 30 minutes later...
And I'm not so sure. The XML works, but only if I post it right away. If I preview it, it eats it again! Grr... At least I can get something out there though.
I'm a big fan of Firefox, and have just recently upgraded to version 2.0. The main reasons I like it are:
For me, I find it loads pages much faster than using Internet Explorer 7.0.
I like the tabbed browsing. (Something that was added in IE7.)
There are a ton of snap-in themes available
There are a ton of extension (add-on) products available
All themes and extensions are free. 🙂
Now, granted, IE7 introduced a lot of new features to catch up to Firefox, but I was converted a while ago. Between the add-ons, snap-ins and page speeds, though, I'm still sold on Firefox.
I run Firefox using the LittleFox theme, which makes the task bar as small as I can get it. The more screen real estate I have, the happier I am.
My add-ons include the following:
Gmail Notifier. This little program just places a little icon in the bottom right of the Firefox window that pops up when I'm browsing and a new email comes in. I have all my forum notifications sent to a gmail account, so this is kind of handy for power surfing/posting. 😉
IETab. This beauty makes use of the IE ActiveX control to run IE in Firefox. You can get a fully customizable list of domains that you always want to run in an IE session. Windows update, for example, or any other Microsoft site. I love this add-on, and very rarely use IE for anything now.
What's really cool about these add-on and theme products is that they are very quick and easy to install, (just click the button, wait a couple of seconds, restart Firefox,) and you are notified if updates become available. In addition, I had no problem using them in Firefox 1.0 through 2.0.
Another great Firefox related program that I came across in the Vista install process was MozBackup. Another fast install, and I was able to back up all my Firefox data in only a few intuitive clicks. The restore was just as easy. Install MozBackup and you are only a few clicks away from restoring everything. It installed just as easily on Vista as Windows XP, and I was blown away to find that it was like I hadn't even moved from another OS. I saw a seamless transport of the following settings from version 1.5 to 2.0:
General options settings
Now, there is one thing I can't say I'm thrilled with in version 2.0 of Firefox. In 1.5, there was a button to the right of the screen which would close the active tab (window). So you could click it multiple times to close multiple windows. In version 2.0, the close button is found right on the tab, which means you have to mouse over to it. Much less convenient.
Overall, though, it's a small issue. I love this program, and it's one of the first things I install on any new system I use.
With the recent release of the RTM version of Microsoft Office, it was finally time for me to move my Outlook email to the new platform. I had no issue testing the other programs, but at the time I had no guarantee of having access to Office 2007 after the Beta was over. Since now I do, it looks like a safe move.
The one part of a systems upgrade that I never enjoyed was dealing with Outlook. I'm not sure why, to be honest, except that I never knew all the things I had to do. So with that in mind, this post is intended as a guide on how to migrate from Outlook 2003 to Outlook 2007, all in one place. I'm not covering macros in it, as I'm fairly confident that you know how to deal with those if you're a coder. But for the rest, I'm definitely interested to know what I've missed. I don't use 100% of Outlook, so I'm sure there are a few pieces I've missed. If you know them, post them for the benefit of the next person. :)I focussed pretty much on backing up the following items:
My folder system (Microsoft, take a hint from gmail that labels are better 😉 )
I did not bother to ensure that my task list or calendar was migrated, although they seemed to come along for the ride anyway. The bad news is that my rules did not come across. They all seemed to have issues pointing to the folders. The rest seemed to work very well though.
Microsoft does have a couple of articles in their knowledge base on the migration, if you'd prefer to read theirs:
Record your Email account info
I took a screen shot of all of the email accounts that I had configured in Outlook. (Oh yes, I have several.) I'm pretty comfortable with setting up my email accounts, so I didn't make too much in the way of notes, but you should know the following:
The email address
Your POP3 and SMTP servers
Your logon username
If you need to use authentication to send
Now, fortunately, you should be able to get almost all of this by just going into your Outlook Tools|Accounts, and then editing your account. Take a screenshot of that screen and you should be good... As long as you remember your password that is. 😉
Backup your email, contacts, folders and stuff
I say "and stuff" because I'm sure that this is where my calendar items and task list items came along for the ride. What I did is:
Opened up Outlook (2003)
Selected my "Personal folders" at the very top level
Choose File|Import and Export
Choose to Export to a file
Choose Personal Folder File (.pst)
Choose the top level "Personal Folders" item. Don't forget to put a check mark in the box that says Include Subfolders!
On the next screen, choose your destination file. I just left the option of Replace Duplicates (the default) selected
Backup Outlook Rules
This part resulted in broken rules for me. I'd be curious to know if anyone made this work, and if so, what they did differently.
What I did is went into Tools|Rules and Alerts (in 2003. I think the verbiage is different for prior versions). Click the Options button, then click Export Rules, and choose the file to save it into. That's it. It should be just that simple.
Install Office 2007
This is way and far gone out of the scope of this article. Once you have it done, though, open Outlook 2007. You may need to configure an email account right away when you do open it, so pull out those notes that you made above. 🙂
Importing your email, contacts, folders and stuff
This isn't too difficult to do, but it may take some time, depending on the size of your PST file. The steps are:
Go to the File menu, and choose Import and Export
Choose Import from another program or file
Scroll down the list and select Personal Folder File (*.pst)
Locate your file, and then click next. (Again leave the default regarding duplicates.)
At this point, clicking Finish should start the import process
Importing your Rules
The steps I followed were:
Go to Tools|Rules and Alerts
Click Import Rules
Browse to the Rules file and open it. Then click OK
Now, the funny thing is that, at this point, everything looks fine. My first rule was set to send things to the Junk Mail folder, and it says so in the rule... until I click OK, Apply, or anything else. At that point, every one of my rules loses the folder it points to. I'm fairly sure that this is a bug, but will be checking with Microsoft on that.
Transporting things is pretty easy, with the exception of rules right now. If anyone has anything to add, or wants me to clarify anything, please post a comment. 🙂
Last night (Friday, Nov 17), I upgraded my PC to Windows Vista. I'm fortunate to have access to the full version through MSDN, so figured that I'd give it a shot.
One thing I would recommend doing is downloading and installing the Windows Upgrade Advisor if you're going to do this. It has a pretty cool feature that scans your PC and lets you know what you may have issue with after upgrade, and what to do about it. You can print it out and have it on hand, meaning that you don't have to remember it all.
So before I did this, I did the natural thing... backups. I have my hard drive partitioned into three logical drives. One for the OS, one for general data, and one for virtual PC images. First I backed up my Outlook email, contacts and rules, Firefox settings, to my data drive, and I then burned a DVD of all my data. I always do a full install when upgrading my OS, so there was no way I was going to trust that my logical partitions wouldn't be wiped out.
Now, the install was actually kind of interesting. I read somewhere that the install was supposed to go pretty fast. I will say that it wasn't blazing, but it was definitely faster than XP. I've done more XP installs than I can remember, and it always seems to take me over an hour to go through the bare install. After that comes the inevitable customizing, which usually costs me about a day. Vista was way faster than that for sure. Within an hour, I was up and running, the only unnerving part of the install being that the screen tends to go black several times for more than 5 seconds at a time. It's not in my nature to be patient, so it was hard to ride some of those out. 😉
One of the things that surprised me about the installation was that I didn't see a way to reformat the existing partition on the drive to start truly fresh. It identified that there was another windows version there, and moved all that info into a "windows.old" folder and left it on the drive. In addition, I had a couple of other directories there that it kept, all of which I was expecting (and would have preferred) to be gone. A few deletes there, though, and all was good.
As with all OS upgrades, it will take a little getting used to. I like the "gadgets" part, which lets me put a CPU clock, weather report, clock and pictures right on my desktop. Its a little weird to work around it at first, and may end up being a fad, but it's some kind of cool "bling" for now. 🙂
One thing we can't forget is that this may be the "Release To Manufacturer" version, but it is exactly that. Many drivers still have not yet been written. I can't install my Photosmart P1000 printer, for example. My video card is also not supported, so I can't get the 1440*900 display I'm used to on my widescreen laptop, and I'm stuck at 1280*1024. It also isn't working quite right for the gaming aspects because of that. One cool thing though, is that Vista does keep track of the drivers that have issue, and you can easily see it. The issues for my system are shown below (you may need to view it in a new window to read it):
Now I just have to hope that Microsoft and the hardware vendors do something about the issues quickly. 🙂
As far as software goes, I've actually had some pretty good luck installing things. I was a little worried that I wasn't going to be able to install some of my favourite programs, but haven't had too much problems. I managed to install Firefox 2.0, as well as Windows Live Messenger, Yahoo Instant Messenger, SnagIt 8.0 and the Gmail desktop notifier. Oh, and of course Office 2007, but that one should hardly be a surprise now, should it?
The one program that did gag on me was Symantec's Corporate Antivirus. What really irritates me about that is that one their site, they say that you can get a Vista Trial. Apparently just log in to their download centre, and you should download version 10.2.x. So no problem, I head on in there, and can download 10.0.2. That is the ONLY option. I'm thinking... okay, so maybe someone made a mistake. I download the package and then check my folder only to find that I already had a copy of 10.1.x there! So the only package on Symantec's site that I can get to now is OLDER than the copy I downloaded months ago. What is up with that? And do you think that you can find an email address to contact there? Lord no. I spent longer trying to find contact information on their site than it took me to install Vista! Talk about an irritation. 🙁
At any rate, I'm still trying to get used to it right now, but it seems like a pretty smooth upgrade path to begin with.
Okay, well here we go. I've added a blog to my site to give me an avenue to post without feeling the restriction of getting everything perfect the first time. I'm going to share some of what I'm doing, things I see, and some of my opinions on things. If anyone finds it interesting then great. If not, go read someone else's site. 😉