June 15, 2004

A battle with svchost.exe application errors. Dunno that I ever really solved them until that hard drive finallly up and died. I wonder if the hard drive's subtle errors were the culprit all along.

October, 2006

Dear god I've started a blog that I'm calling a blog. Sad really. Anyway, I'm screwing around with my Gentoo linux box again after 4 months off and am again reminded what a masochistic distribution this is to run. Man nothing comes easy in Gentoo. I think that's why Gentoo users tend to be such zealots. Misery loves company, and the trend fans of Dr Drew hear him claim exists in abuse victims--where the victims tend to have an irrational attachment and love for their abusers. I have no experience with that thankfully, but by extrapolation, i think this could be another facet as to why gentoo users want to drag other people into this crazy distribution. This gentoo user will be happy to set the record straight and say that no sane individual should want to run Gentoo Linux, unless you like spending more hours solving problems in admin'ing your box than actually doing anything productive with it. But yes it is cool you can compile everything from source. Is it a net performance gain? Hell no--because your box is always slowed down by constantly compiling some sort of update!

I'm now among the xorg modular masses though. That update went smoothly. I'm now sorting out all sorts of other package blocking issues in emerge. Complete pain in the kiester.

In other news I recently tried the BackTrack live CD that combines Whax and Auditor live CD's for vulnerability assessment. Boy it loads slow, and I can't believe a CD touted for its wireless auditing capabilities doesn't include madwifi drivers. I wasn't terribly impressed.

I also recently got my first USB memory key. I never had much of a use for one until I started working with multiple machines and didn't want to network them to share files. $20 for 1Gb and Fry's. Woof. Sales are kewl.

July 2007

Say, I forgot I had a bloggish sort of thing.

One tech challenge that was driving me nuts here for a couple weeks was my foray into building a MythTV box--freeware TiVo stuff. I was concerned that my ridiculously cheap Norwood Micro S800 TV tuner (circa 2005ish, CompUSA for about $30) might not be supported, but lo and behold, I was able to get it to work. I chose an Ubuntu based system, though KnoppMyth also got consideration. I used these nice instructions on installing MythTV on the Ubuntu Feisty Fawn release and did a Combined Backend, Frontend, & Regular Desktop thang. I picked up an Asus M2N-E motherboard and the cheapest AMD processor I could buy, and a gig of Crucial RAM for a whopping $20, mixed it with a case, hard drive, dvd-r drive my brother in law had laying around the went to work. Total cost of the system was about $220.

My first challenge with this box was to get the video card recognized. Evidently in a cost cutting measure, the hardware on the card that tells the computer the make/model number just ain't there. I was tipped off by reading some log messages that were pretty funny--they basically chided the card manufacturer for being lame. I did find a great workaround though, that involved creating and or adding to a file /etc/modprobe.d/isapnp the following aliases:

alias char-major-81 videdev
alias char-major-81-0 cx88xx
alias char-major-81-64 cx88xx
options cx88xx card=54 tuner=69
With that, mythtv setup recognized it and video came out fine. But alas, no freakin Audio.

So the first step in my audio debugging was actually reading the instructions that came with the card. Even though there's no discrete audio output jack like my prior experience with an ATI TV Wonder VE, the crazy DIN looking jack on the back of the Norwood Micro card has a pigtail included with it that provides the audio output. This needs to be jumpered back to the audio line in jack on the back panel of the motherboard.

No sound mythTV

However, even with this hooked up, there was no joy since Ubuntu Feisty--as it installed on my system at least--had default ALSA mixer settings that prevented the Line In signal from getting to the speakers. I tried a ton of things including using diagnostic steps like "aplay SOMEFILE.wav" to verify ALSA output was working (it was), futzing with MythTV-frontend's TV settings with /dev/dsp vs /dev/adsp vs the ALSA default (ALSA default worked just fine ultimately), but ultimately, found a rather buried setting in the Gnome Alsa Mixer correctly finally got my "line in" signal from the tuner card to get to my freakin speakers so live TV could be watched. In the gnome-alsamixer program, I believe the magic bullets were:
  • set the first "Capture" switch to "Mix." "Line In" wouldn't do it, "CD" wouldn't do it, "Mic" wouldn't do it. And...
  • I needed unmute ...oh, I think it was the Capture slider setting and unmuting for recording. Then finally, I had sound. The combination of the Capture source and undoing record mute on that Capture slider did it.

Hope that helps someone!

Moved to new case, laster reinstalled Myth / Ubuntu

My primary annoyance with my system was how LOUD the power supply fan of this cheap case was that I was given. I found a deal on newegg on an inexpensive case ( Eagle Tech CA-EC2 Black Aluminum ATX Media Center / HTPC Desktop Computer Case 400W Power Supply), and moved everything to it. It's much quieter, but still yet far from silent. Hopefully the $100 rebate comes through--if it does, how wrong can you go for $40? Eventually, I also got sick of intermittent crashes of myth-backend, and aslo wanted to get onto an SATA hardrive that was larger versus the 40GB parallel ATA drive I had in there initially. As this motherboard only provides parallel ATA for optical drives, I thought this might also cure the HIDEOUS performance issues I was having with the respnosiveness of the mythtv menus while navigating. Keypresses only moved the myth cursor selections after a second elapsed, sometimes as much as 8 seconds to scroll to the next recorded program in the media library. The fix turned out to be video driver related. Shockingly--and I've never seen this horrible a performance penalty for a video driver--downloading the nvidia drivers for this geforce 5200 based card that I have improved performance immeasurably. I'm now MUCH happier with this system.

I also today purchased a second capture card at Fry's as I'm finding more and more conflicts in prime time, particularly now that my wife has jumped on the mythTV bandwagon and given me her requested shows. I got the WinTV-HVR 1600 which contains a standard definition tuner as well as an HDTV tuner in it. I grabbed a $40 antenna as well and I'm very curious if I"ll be able to get an HD signal here, particularly in the basement. I'll report back. Ugh.... it doesn't look good right now: http://www.mythtv.org/wiki/index.php/Hauppauge_HVR-1600 says currently "Note: There are no Linux drivers available for the WinTV-HVR-1600 as of yet." Grr.

Converting .3gp files to .mpg .mpeg for Smugmug

10/1/2007 - So I've got this Krazr K1 phone that I've been taking all sorts of little videos of the boy with. 1's a fun age. I also have a pro smugmug account that claims to host videos, but alas, they require the lowest common denominator of the video universe: mpeg-1.

Now, there is a Windows freeware program or 15 to do this out there, but god knows if they are spyware addled, and for conversions like this, some part of me just wants to do it on the command line. We don't need no steekin' GUI. So I'm trying to figure out how to do it with ffmpeg under linux. I thought I was on the right track but turns out my machine lacked the codec necessary for the audio portion of these .3gp files coming off the krazr. Apparently, they use amrnb codecs which stands for "adaptive multi rate narrow band" and this sort of audio codec is apparently common in mobile phones (if Wikipedia is to be believed). So now I'm recompiling mplayer in gentoo with the amrnb USE flag and hoping for the best. Once mplayer can play the file, I'll give it a go with conversion with ffmpeg again. Oh, and recompiling ffmpeg with the amr USE flag (--enable-amr_nb --enable-amr_wb if configuring manually) seems to be required too. Boy this is fun! "Unsupported codec (id=73728) for input stream #0.1" was my error that tipped me off to the missing audio codec.

After recompiling ffmpeg with the amr USE flag, this finally worked:

ffmpeg -i test.3gp -f mpegvideo -ar 44100 -ac 1 -acodec mp3 test.mpg But... the files were kinda big, and sorta crashed players and behaved strangely. Smugmug support clued me in to mp3 not really being a part of well behaved mpeg-1 files which should be using mp2 for audio coding. Also the default resolution of my files was not part of the preferred MPEG-1 onstrained parameter set. Who knew? This turned out with much better results:

for i in `ls -1 *.3gp | cut -d. -f1`; do ffmpeg -y -i $i.3gp -sameq -f mpegvideo -s cif -r 25 -ar 32000 -ac 1 mpegs/$i.mpg; done

That's "ffmpeg, overwriting output, taking the 3gp file in, using same quality, forcing mpegvideo as the video format, changing to CIF resolution, 25 frame/sec framerate, audio sampling frequency of 32kHz (mp3 min), audio channels 1 (mono), and stuff it in a subdirectory I created. The files were still kinda big, but then I had to remember that mpeg-1 just isn't as good a compression as h.263.

Some helpful references were:
http://www.niemueller.de/wiki/index.php?ConvertVideoTo3GP http://gentoo-wiki.com/HOWTO_Emerge_MPlayer#Codecs http://ffmpeg.mplayerhq.hu/ffmpeg-doc.html#SEC7 http://lists.mplayerhq.hu/pipermail/mplayer-users/2007-August/068635.html http://lists.mplayerhq.hu/pipermail/ffmpeg-user/2005-July/000682.html

Hauppauge PVR-150 + MythTV = Bliss

10/9/2007 - Just got a pair of Hauppauge PVR-150 tv tuner cards for capture use in my MythTV backend. Which sounds painful now that I see it in print. Anyway, these replace the aforementioned Norwood Micro piece of poo that I didn't realize was SO bad until I had a proper card. The PVR-150's provide a much better picture, no goofy audio jumper cable to the sound card, and shocked me in being so ridiculously easy to use in MythTV. Ubuntu Fiesty recognized them both upon boot, and right in the Myth backend setup, there was an option that clearly applied to their card type as MPEG-2 hardware decoder cards. THe only thing I had to do is delete my previous analog card, and make sure the myth cards used /dev/video0 and /dev/video1 in the backend config. The dmesg command line command also confirmed that these were the right devices for them. Myth went right away onto using both in the existing recording schedule. I might add the lousy card back in if I ever have a need for 3 cards. I'd have to split the cable TV line one more time, and need to replace the current PCI video card I have with something else as I'm out of regular PCI slots on the M2N-e motherboards.

CD drives perform a disappearing act in Windows

10/11/2007 - A friend brought a box to me today that had an odd symptom: in Windows XP, the CD-RW drive and the DVD-ROM drive had both disappeared. Click into my computer, or explorer, they simply weren't there.

I booted into the handy System Rescue CD and test both drives for readability. They worked fine and I could read discs in both drives. I also updated the clam antivirus scanner with the "freshclam" command, mounted the hard disk with Windows on it and ran a rather painfully slow clamscan on the root of the drive, WINDOWS directory as well as the Documents and Settings directory. It found a couple things in some Outlook Express mailbox files, but nothing in any of the system areas... so the search continued.

So I finally boot into Windows and guess one of their passwords (which hadn't been left with me, lest I'd tried to get into Windows earlier). I confirmed what the owner had said about the drives just not being there in Windows. Hunting under My Computer>Manage>Device Manager showed the smoking gun that these drives had had the "Doh!" yellow caution exclamation points and an error suggesting registry corruption ("Your registry might be corrupted. (Code 19)").

A google search on missing CD drives led me to a forum where Microsoft's knowledge base article Cannot Access CD-ROM was referenced. I'm not sure if Adaptec EZ CD Creator was involved at all, but the exceedingly simple fix of "Remove the Upperfilters and Lowerfilters values completely from the following registry key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E965-E325-11CE-BFC1-08002BE10318}" was tendered. I found only a Lowerfilters key at that registry path, but I'll be damned if deleting it and rebooting fixed it. Made me look like a freakin genius. I have no idea why it worked, but it did. So I post is here for more google food and hoping it helps someone else!

Lenovo T60 locking up while plugged in but with low battery

My T60 was worrying me greatly last night. The battery icon was flashing orange which indicates <20% charge and charging. I had the unit plugged in. Unfortunately, it was locking up where the mouse pointer in XP would simply disappear and the computer wouldn't respond to any input. It did this within about 10-15 minutes of a reboot about 3 times in a row when I was doing nothing but doing some browsing in firefox. No event viewer entries of any import. I'd have to restart the machine by standing on the power button, rebooting, and I'd run chkdsk and reboot again to have it run whenever this would happen too. More disconcertingly, the thinkvantage battery manager dealio was reporting 0% for the battery level while plugged in. I'm not sure what was going on.

So I plugged it in at the desk, disabled wireless, shut it down, and let it charge all night. In the morning, the battery LED was solid green indicating all was well. The battery monitor in Windows also now indicated a 100% charge.

And nary a reboot or glitch all day. So, it was either the battery voltage causing the problems (despite being plugged in), or something in the wireless driver or something more interesting. Email me if you have a data point similar to this situation.

Tomato, Wireless bridging, MythTV and Samba

November 2007

I managed to upgrade an old WRT54G Linksys I had that was still running the White Russian release of OpenWRT to Tomato, a third party open source firmware based off Linksys's official firmware. I'm very impressed with it. I was hesitant about the upgrade, unsure if the bin file from tomato would load okay from the openwrt admin interface. It did, and I opted not to erase the jffs partition. It worked fine. What I was after was a little box that would implement wireless bridging. dd-wrt didn't do it so well, but Tomato has delivered! I now have my MythTV server in the basement on the network now, and no longer behind the NAT'd wireless client setup of the dd-wrt box that was previously sitting down in the basement. I never could figure out the port forwarding incantations to get through that thing to talk to the myth box. With wireless bridging though, everything just works. Werd to Tomato!

With a clear network path to the Myth box now, I could apt-get install samba on the Ubuntu-based myth box, dialed in some settings in /etc/samba/smb.conf to share out my Myth recordings directory, add a couple smbusers, and voila. Once I got that working, I slapped the VLC media player on the wife's computer, pointed her to the share, unzipped and ran /usr/share/doc/mythtv-backend/contrib/mythrename.pl on the myth server to make the filenames have Show titles instead of random id numbers, and voila--any computer in the house can play things out of the Myth recordings database. It's not fancy but it works. To become more elegant, I may give MythFrontend a look on Windows, but for now, this samba share was easy to implement.

New Monitor - Samsung 245BW

1/29/2008 - Finally took the plunge and dropped $420 (after rebate, before tax) on a big new monitor- Samsung SyncMaster 245BW. I figured I needed to do it while I was still young enough to lift my 21" CRT Iiyama Vision Master Pro 502 off of my desk and carry it anywhere without snapping my backbone. I had a bit of a scare with my first 245BW that I brought home as it gave me a huge headache that I finally traced to ghosting on the letters and blasting out of highlights, despite contrast adjustments downward. It wasn't blatantly apparent that the text was fuzzy, but just enough to really make you wonder if your contacts were a year old or something. This model of monitor is seriously bright, and 20% brightness is _plenty_ for text let me tell ya. Also, pay heed of the sharpness setting. In some modes it's down at 16 or so, and at 100 life is much crisper with no side effects.

I tested this 1920x1200 monster on 2 different laptops and a DVI-D equipped desktop (the Myth box actually GeForce 5200) and noticed differences on all of them. Sadly my Thinkpad T60 was the worst of them, t60p better, DVI-D best, and I got panicked and upset about the lousy graphics card on my T60 model 1951 for a while because it looked so bad in analog, and had no affordable DVI-D upgrade path (unless $300 on a Thinkpad Advanced Dock and $60 on a low profile PCI express DVI-D video card is affordable to you). So, I went back to the store, prepared to throw in the towel and try something smaller (the Brother in Law's 22" Samsung looked great with my T60) and lower resolution but they encouraged me to talk to the tech (since they werent' going to give me any money back). I manged to get him to see the issue I was dealing with and he encouraged me to take home another unit to try it. Sure enough, the new unit was much better and the T60 when directly connected via dsub does 1920x1200 WUXGA resolution acceptably via analog. Woot.

Now the bummer though is my Belkin OmniView SE 4-port KVM switch (F1D104) and its complement of pricey high-resolution co-axially shielded VGA video cables that have been nice accessories for about 8 years now is due for replacement. Its max bandwidth is 1600x1200 and things just look like poo through it at this monitor's native resolution. The wife's Belkin OmniView SOHO F1DS102T specifications claim that it handles it, but even with the pricey co-axially shieled high res cables, the degradation is enough to annoy me on text. I may just get a small cheap panel to run off the KVM as I get enough wounded duck machines brought by friends to troubleshoot that I still need a kvm or an extra monitor in my life.

Boot to CD on IBM Netvista model 2257

1/29/2008 - Man they sure hid the crap out of the boot order option in the BIOS. Just one poor choice on a user interface, and you confuse lots of folks. To unravel the mystery, press and hold F1 while powering up the machine. This takes you to the BIOS menu. Use the arrows to get to the Startup menu. Then you see STartup Sequence at the top of a whole list of options. It sits there in plain text as though it's a menu title... but nooooooo. Hit enter while the cursor's on that bad boy. That's where they hid the startup order. And by default, CD-ROM isn't a device in the boot order. Modify, save, reboot, and enjoy.

On a related note, I installed Ubuntu Gutsy (7.10) for the first time today. It simply amazes me how simple installing Linux is these days. Kudos to the Ubuntu folks. I made the target machine (this old Celeron based NetVista with 372MB RAM) dual-boot, and I'm absolutely dreading chasing down all the freakin drivers for the XP partition. But Ubuntu Gutsy... installed with about 8 mouse clicks and no thinking. Amazing. This computer is an upgrade for my son. Who is 18 months old. His Pentium-II-based Win98 box, despite fresh reinstallation wasn't even stable enough for Snood and Giggle Baby Shapes without having to reboot daily. He's young, he's precious, he needn't be so rudely exposed to lousy 16-bit operating systems at this tender age. And so we are upgrading...with a box lying around the house.

Ubuntu Gutsy 7.10 replaces Gentoo on the home box

3/19/2008 - I managed to REALLY screw up my Gentoo linux partition on my home box months ago. Same old Gentoo story, really: Boy stops paying attention to the box for a few months. Boy goes to run emerge updates only to find a ridiculous number of blocking package issues to fix. Boy starts unmerging things trying to make sense of the world, and before you know it boy has spent more time trying to fix Gentoo than he'd have spent installing a less all-consuming operating system fresh. In this case, I really managed to screw myself by (Gentoo veterans will love this) ummm... unmerging python at some point because it was blocking something. Whooops. That was the day I learned that emerge basically runs on python. LOL. Once emerge no longer works, yer pretty well done. So, if it was whole reinstall I needed at that point, I'll tell you for damned sure I wasn't going to subject myself to Gentoo again a p4 1.7Ghz box I didn't use every single day. Gentoo's fine if you have a box you touch several times a week and can emerge updates as they come in. Look away for a month, and you often find yourself fux0red. So, for this box, like my MythTV box, and my toddler's linux box, Ubuntu Gutsy gets the call.

Installation with Ubuntu was a breeze. I just specified manual disk partitioning, and repartitioned my existing Gentoo disk. I'd previously tar'd up home and etc directories to an external drive so I could repartition and give /boot more breathing room (512MB) than it needed under Gentoo at the time. I gave this memory-heavy box just 512MB of swap, and for / I big MurderFS, errr, reiserfs goodbye (sorry Hans, you seem to have your hands full with some more pressing matters than your filesystem) and opted for ext3 for my Ubutnu /. For shits and giggles I also gave 9GB of space to a fat32 partition just in case I need to exchange some info with my Windows partition at some point (in a way that doesn't require VMWare).

Now on this aging box, I had a dual boot setup with Gentoo and Windows 2000, and even had VMWare Workstation for Linux configured so that it could boot the windows partition (separate hard drive actually) and run it in physical disk mode, leveraging Windows MUP hardware profiles so Windows wouldn't get too uptight switching between bare iron and vmware's virtual motherboard. Since it's been a few years since I got that working, I needed to relearn all the incantations I needed to do to make it work. This time I figured I'd write em down here.

The first problem I overcame with Ubuntu was that apparently Workstation 5.5.6 (I haven't paid to upgrade to 6.x) doesn't support Ubuntu Gutsy Gibbon 7.10 directly. I was encountering an error during vmware-config.pl that included a compliation error "Unable to build the vmmon module." with some specific gripes about "expected declaration specifiers" errors when compiling some header files.

To get vmware-config.pl to run and be happy, I did a few things (perhaps not all necessary):

  1. sudo apt-get install linux-headers-$(uname -r) build-essential gcc-3.4 ; export CC=/usr/bin/gcc-3.4
  2. applied the "any-any patch" conveniently mentioned in the VMWare knowledgebase article. Vmware to their credit links to this article right in the compilation error I was receiving. Then once that patch was applied, I tried this again, with success:
  3. cd whatever/vmware-distrib; sudo ./bin/vmware-uninstall.pl; sudo ./vmware-install.pl; sudo /usr/bin/vmware-config.pl (if you said no to it in install)

With this any-any patch installed and run after installing vmware workstation, but before running vmware-config.pl, all was well. By virtue of the prior export CC=/usr/bin/gcc-3.4 gcc 3.4 was used, but I'm not sure if the defautl Gutsy version of gcc would've worked fine after I'd installed the any-any patch.

Second tip for other would-be VMWare workstation physical disk Windows booters from an Ubuntu host system:

Comment out your windows partition from /etc/fstab and unmount them! Ubuntu probably was helpful during install, identified your ntfs partition and offered to mount it as /windows for ya. This is a big no no if you want vmware to run physical disk mode and not screw your Windows partition up irrevocably.

The third struggle was to get the permissions right for my physical-disk-mode Windows virtual machine. I was attempting to create the new virtual machine, Custom, New Workstation 5, Microsoft Windows, Windows 2000 Professional, file location is in my regular user account home directory, one processor, 512mb ram, bridged networking, BusLogic scsi, Use a physical disk (for advanced users), /dev/sdb (the physical disk my windows installation is on), use entire disk, and chose the default name for the vmdk file. When I clicked Finish, the errors VMWare Workstation 5.5.6 was throwing at me as I try to add my Windows virtual machine is: "Error Unable to complete wizard: Insufficient permission to access file." Of course that error lacked any definition of what file it was talking about. A little experimenting (use partition instead of whole disk) indicated that it's the physical disk device itself that it's griping about. /dev/sdb (my ide disk that I have Windows on) is what it couldn't access.

To address this, I edited /etc/groups and created a new group called "windisk" and added my unpriv'd normal ubuntu username is a member, then did "sudo chgrp windisk /dev/sdb /dev/sdb1" so that my regular unix user would have read/write access to this physical disk with Windows on it. Test it out with "fdisk -l /dev/sdb" as your regular userid (i.e. no sudo). To get vmware to recognize this change, I had to back out of the vmware virtual machine wizard recreate the new vm. This "windisk" group approach is my own invented variant of the advice of vmware kb article Configuring Dual- or Multiple-Boot Systems to Run with VMware Workstation which suggested just adding the user to the "disk" group. I wasn't comfortable just adding my user to the disk group as that might allow Windows malware to possibly get its hands on my host operating system's raw disk too. NOTE though...this chgrp on the raw windows disk will not survive a reboot. Getting the windisk group to be assigned to your windows disk only at boot time will require some udev configuration tweaking. /etc/udev/rules.d/40-permissions.rules is one file that's involved. I haven't gotten that sorted just yet. For now I can deal with a sudo chgrp command done manually on reboot.

And with that, I declare success on replacing my Gentoo partition with Ubuntu! This may embolden me to revisit Gentoo on my 2nd work laptop, as I don't want more than 1 Gentoo system in my life!

.NRG vs .ISO

April 10, 2008 - Buddy sent me some CD image files in Nero's .NRG format. I went through the trouble to load up Linux and grab nrg2iso only to learn the files were already in ISO9660 format. Renaming the files .iso and using Ubuntu's default file manager's right mouse button burn to CD didn't work, but installing k3b on Ubuntu 7.10 and pointing that program to these .nrg files directly worked just fine.

Widescreen monitors

April 11, 2008 - So the 4:3 aspect ratio days are gone. I installed an Acer X193W 1680x1050 widescreen monitor on a IBM Netvista with an Intel integrated graphics chipset that I'd just restored (above) from years old OEM disks. , Of course, the IBM update facility for drivers suffered a deadly fate at the hands of the Lenovo spinoff, so none of the automated means of getting drivers was working. At any rate, the native resolution of the panel wasn't in any of the usual resolution setting lists you see in Control Panel>Display in XP Home. Now, I'd never known whether monitors like this should have "driver" software to tell the graphics card what resolution they can support, or how that all worked. In Windows, the graphics card companies do all this work for ya. So you just need to update your video card's driver (or the integrated chipset driver, in my case from Intel). The updated version of the Intel integrated video card driver had the resolution I was seeking for the new monitor and all was well.

Jumping to the Mac: Outlook under Windows to Entourage for Mac conversion and import

June 2008- I helped a friend make the leap from the PC to a Mac, and got to play with his new Macbook Air in the process. He's a long time PC user who actually runs a couple of hedge funds, and with his frequent travels, the desire for a an ultralite notebook left him looking at the Macbook Air and the Lenovo X300. The X300 he couldn't get without waiting a month, and it was over $3k due to the solid state hard drive. Meanwhile, he looked upon the diminutive Macbook air as a bargain at $1700. Of course he also had to buy the CD/DVD drive separately for an extra $100, and also a USB ethernet adapter.

To transfer his workflow, I had to figure out how to get Outlook 2003 mail contacts and calendar entries over to Microsoft Entourage, which is the component of Office for Mac that is most like Outlook. I'm pleased to say that it eventually worked.

I used O2M from littlemachines.com for $10 and holy crap, covnerting 2GB worth of email took FOREVER but it ultimately worked. O2M connects to Outlook, and created .outbox format files for mail, .ics files for calendar entries, and .vcfs for contacts.

Importing these into Entourage wasn't a File>Import operation though. To be honest it was kinda a pain in the ass. You might think Microsoft really wants people to stay on Windows or something. Instead of using File>Import in Entourage for these files, you need to a) make sure the Mac association for each file type involved is to open it with Entourage (rather than mail or iCal or AddressBook), then drag the .mbox files from finder into the mail folder where you want it, then the .vcf's into the addressbook pane, and then the penultimate pain in the ass, you need to open every .ics with Entourage to get it to stick (and close every appointment window that pops up for hundreds of appointments).

It's possible that the calendar thing would be easier if all appointments were done in one .ics file, but the individual files eventually worked. I'm not sure whether a single .ics file would've made that much easier, or would've worked, but with 400 or so entries I wasn't in the mood to take chances. Finally, to get him Yahoo Instant messenger, I opted to install Adium X, a multiprotocol instant messenger.

He's up and running, and time will tell if the transition is as smooth as I think it will be for him. I can't believe they didn't include a friggin ethernet adapter with that machine though. That's pretty irritating, but the machine is so damned thin they barely managed to fit a single USB port on its razor slim profile. He'll need a USB hub too if he needs to be on the office network and hook to a local printer at the same time. No wonder, someone came up with this spoof of the airbook video.