Computers

Farewell Poker

Send to Kindle

I’ve been noting the possibility of this day for quite a while, and it’s finally here. I am saying farewell to online poker, likely for quite a while, but also likely, not forever.

I expected the day to come sometime in January, having gone through a very long drought of cashing in a tournament. Then, as I was about to run out of money in my account, I cashed on back-to-back days, coming fourth then eighth, adding enough money to last another two months. Since I didn’t cash again (though came very close a number of times), and the two months have now passed, it’s over.

I have a small amount in a secondary account, and could play some very low-stakes tourneys if the itch really hit me, but I don’t intend to do even that.

It was a fantastic run. I played my first ever online poker game on September 1, 2004. The last time I deposited money in my account was April 2005, so that money has lasted a very long time, and given me untold pleasure (yes, I still love online poker).

So, if I love it, and can afford it, why am I giving it up?

I have had to hop from site to site to site over the short number of years, as the US frightens online operators into dropping US citizens. Along the way, I have enjoyed the sites less and less, and the schedule of tournaments hasn’t matched my interest as much either.

Still, I was reasonably happy with my main site for the past two years. Until they changed their software and schedule so dramatically that I cut back to one tourney a day for the past six months (on the days that I played at all).

To add insult to injury, while I was draining my account, I got a note from them telling me that I wasn’t playing enough, and my status was being downgraded. Nice. In a down economy, rather than trying a carrot approach to entice me to play more, they chose the stick. Well, it worked, they won’t have to worry about downgrading me any further. ;-)

Given my obsessive personality, I am sure it won’t take long for some other activity to fill the void. I already have a good idea of what that will be, but this isn’t the right post to announce it…

Poker, thanks for the ride, see you down the road! :-)

OpenVPN in VirtualBox

Send to Kindle

There are a number of reasons why you might want to run a VPN on your laptop. The most obvious is that you have to, in order to access files back at the office. Two other likely reasons are security (you are in a public place, and want to encrypt all traffic) and unfettered access (your provider is blocking certain ports or services).

I’ve been interested in implementing a VPN for a while now, but haven’t had any real need, nor tons of copious free time. On Friday, I was informed that one of my portfolio companies had installed OpenVPN and I was welcome to install a client and test it.

I am running Windows Vista Ultimate x64 (the x64 sometimes being problematic with certain software). It turns out that the latest release candidate for OpenVPN has full Windows x64 support, so that wasn’t going to be an issue.

I installed the software, edited the configuration files that the office sent me, fired it up, and it worked the first time. Cool. I tested a few things, including accessing hosts that I wouldn’t be able to see unless I was in the office, and it all seemed to work correctly.

Then I hit a small snag. I tried to fire up my fat-client brokerage application. It behaved as if I didn’t have a network connection, or more accurately, like it couldn’t find the server it wanted to home to. I suspect that this could be something as simple as whether the office itself is set up to route out this type of app/port/protocol through the VPN (I know for a fact that this specific app works when I am in the office).

I also suspect that other fat clients, like a Poker app, might have similar troubles. That got me thinking about the additional use cases beyond just needing access to files/apps/machines in the office.

I fired up VirtualBox, specifically with my new favorite Sidux distribution. I tried to install openvpn from the repo, but it wasn’t found. A Google search said that openvpn is included in Debian itself (which Sidux is based on), so I was temporarily puzzled. I had the following line in my sources:

deb http://ftp.us.debian.org/debian/ sid main

I added another line, identical to the one above, substituting de for us. Presto, openvpn was found, and installed smoothly.

I copied over the same config files from my Windows directory, fired up OpenVPN, and was connected to the office again. This time though, in a pretty cool configuration. Everything in Linux (Sidux), was routed through the VPN. Everything in Windows, was routed normally though my FiOS connection.

If I wanted access to something on the corporate lan, use the browser in Sidux. The brokerage app just worked as normal, as it was unaware of the VPN. On a number of levels, this is the best of both worlds.

Of course, I already summarized situations when you may want/need the full VPN, for the entire machine, or when this use case might be better. If you’re in a public hotspot, and want everything encrypted, even your personal surfing, the Windows-level VPN makes sense.

If you’re in a client’s office, and can’t connect to an odd port on your home server (e.g., you have an application running at http://www.mycompany.com:8765/) which is blocked by your client’s firewall, then you fire up the VPN in the VM, and use that browser, while not disturbing the rest of the applications on your desktop.

This also gave me the idea that since putting Linux on a USB stick is so trivial (see this post about multi-boot USB), it would be simple to have a bootable USB stick, with the OpenVPN client on it (password-protected, of course), that would allow you to boot off any PC/laptop as if you’re in the office, or without leaving any trace on the host PC, whenever the situation called for it. Friends wouldn’t need to feel that you were seeing their browsing history, etc.

Just for yucks, I also installed OpenVPN on my server, for the secondary scenarios mentioned above (security and unfettered access). While I don’t anticipate needing them frequently, knowing that it’s available, on a second’s notice, is a comfort.

Another trick added to my bag. :-)

Two Flew South

Send to Kindle

Lois asked me to name this post Two Flew South. She had a good reason, it was clever, so I didn’t hesitate in accepting her suggestion. Let’s not make it a habit though. This is my blog, not hers, and I intend to keep it that way. Of course, all of the photos are taken by her, so we’re partners in this, as we are in everything else in life. :-)

Vacation is not a word that Lois or I use often. Even when we have a few days where we aren’t technically working, at least Lois (less so me), is working the Treo non-stop, and thinking about work issues non-stop as well. I’m better than she is at shutting that off, but I get sucked in, since I’m with her…

We’re on a two-week road trip at the moment, which is most definitely a vacation for me. Parts of it are even a vacation for Lois, though nowhere near the level that I am enjoying it. Since the road trip is mostly southbound, and there are two of us in the car, the title Two Flew South seems appropriate. It turns out it’s not the specific inspiration for the title (that’s coming later), but that’s why it was so easy to agree on.

The trip started nearly two weeks ago when we left NY and spent the day with our friends in Leesburg. We always have such a great time with them, even though seeing the dad suffer through his cancer treatments is heartbreaking. We then spent a week working at Zope.

Leesburg Friends

Leesburg Friends

We spent last weekend with our friends in Richmond, including a fantastic Super Bowl party at another friend’s house (10 of us enjoyed the game together). I was the only one rooting for the Steelers. That said, I really like Kurt Warner a lot, and wouldn’t have minded seeing him snag the victory. That made the last quarter all-the-more exciting, since the outcome was truly in doubt. A great game all around!

Richmond Friends

Richmond Friends

Super Bowl Party 1

Super Bowl Party 1

Super Bowl Party 2

Super Bowl Party 2

At 6:50am on Monday, we were on the road, officially on vacation (there’s that word again, I’m liking it a lot). ;-)

We were headed straight for Nashville. On Ocotber 29th, 2008, we saw one of our many CMA Song Writer Series shows at Joe’s Pub. While the entire show was fantastic, we both were really blown away by Hillary Lindsey, and I highlighted that fact in a post the next day. Through that post, I ended up with an email relationship with a wonderful woman who lives and works in Nashville.

Through that email relationship, we had arranged to meet for dinner on Monday night. We had never even spoken on the phone, a true e-relationship. We asked her to select the restuarant. We met at 7pm at Tin Angel. We had the most wonderful evening. She’s a fascinating person and she picked an excellent restaurant (we all loved our meals). We ended up spending nearly three hours together, and we will definitely look her up the next time we’re in Nashville, and hope she does the same when she’s in NY!

New Nashville Friend

New Nashville Friend

The next day was carved out in advance to be spent with our good friend Jack Kapanka. It was freezing all over the south, Nashville included, so we decided in advance to see the sites from Jack’s car, rather than walk around the city. Jack picked us up at our hotel, and zigged and zagged all around Nashville, telling us about every building as we passed it. I loved every second of it!

We also took a long ride in the countryside, to and through Franklin, TN, gawking at mansion after mansion (they don’t call it Mansion Hill for nothing). We had lunch at a Pub in town (I should have written down the name, because we all really enjoyed our meals!). When we left, three men were approaching us (from quite a distance). Jack immediately recognized the middle man as James Otto. As we walked by them (they were headed to a Sushi restaurant for lunch) Lois casually said “Hi”, and James said hi back, so Lois can officially say that James Otto said hi to her. ;-)

One Mansion

One Mansion

We then headed for Jack’s house, catching some incredible scenery along the way (including a bridge that isn’t obviously a bridge, until you’re on it, at which point everything around you is breathtakingly beautiful.

We had met Jack in person before, but this was the first time we were meeting his family. When we got to his house, his wife and toddler twins were there (the older girls were still in school). It’s hard to describe how/why you know you’ll be life-long friends with someone the instant you meet them, but there’s no doubt that this will be the case between us and Jack’s wife.

Jack's Wife

Jack's Wife

She’s an awesome person in her own right, on every level, but she might also be the best mom we’ve ever observed. That’s saying an awful lot, considering that our Richmond friends include a number of near-perfect moms (our godchildrens’ mom heading that list!). Lois can describe it better than I can, but no matter what’s going on around her, Jack’s wife exudes a strength and calmness, that nearly instantly tames all of those around her (her kids included!).

After meeting the older girls, and hanging for a bit, Jack and I took the oldest daughter and took a tour of their home town. Jack had been telling me for a while about another resident of the town, someone he had met in his church. He really wanted us to meet, so we stopped by his house. It took me all of 10 seconds to know how wonderful this man is, and why Jack likes him so much. We chatted for 20 minutes and then headed back to Jack’s house.

Jack and Older Daughters

Jack and Older Daughters

Shortly after getting back, we took two cars and headed to dinner with the entire family. We had an excellent meal at the Applebees right near our hotel. We said goodnight and were missing all of them by the time we were up in our room. Thanks for a wonderful day to all of the Kapankas! :-)

Jack and Twins

Jack and Twins

The baby girl does fist bumps on cue!

Fist Bumping Baby

Fist Bumping Baby

On Wednesday morning, we worked in the room a bit, catching up on a ton of emails, then hit the road again. This time, our destination was Atlanta. We got there mid-afternoon, checked into the hotel, and did a bit more work.

At 5:30pm we headed over to a friend’s house. A number of our Atlanta friends also came over and we had an extraordinary home cooked meal. We brought wine from NY, and were really afraid (sure might be a better word) that it would spoil due to the extreme temperature swings throughout the trip (it was 19 degrees that morning in Nashville and Atlanta). Amazingly, the wine tasted yummy to me (and I hope our friends agreed).

Home Made Feast

Home Made Feast

Incredible Pie

Incredible Pie

The next morning we got together with a subset of the same folks we were with the night before for an incredible breakfast at Rise-N-Dine. It’s quite unusual to have an appetizer during breakfast, but we all split three Sweet Potato Pancakes as one. Wow. They were amazing, and I knew I would love my Polish Omelette as well (and I was correct!).

We said our sad goodbyes, lamenting that this wonderful whirlwind 18 hours was ending, and we hit the road for Birmingham to visit our godson. We settled into our hotel in Birmingham, and caught up with some more work. When David called to say he was on the way home from the hospital, we were thrilled to log off and head over to see him.

After catching up for a bit in his apartment, we headed for dinner at Jim ‘N Nicks BBQ. I didn’t realize it was a chain until I just looked it up. It’s a beautiful place. The service was excellent. All that is nice, but get to the food Hadar! Man, it was unbelievable. They start you off with homemade corn muffins that are infused with cheese (subtle, but delectable) that melt in your mouth.

Feeding the Meter

Feeding the Meter

David and I both had the Pulled Pork platter, and Lois had Smoked Chicken that she raved about. We capped it off with some Starbucks and headed back to David’s to cath up on Lost. We were two episodes behind, but David was happy to watch the one he had seen already again, and then he too got to watch the new one from the night before. We’re all caught up now, and anxiously awaiting the next few episodes. The excitement is back (it never left for me, but Lois is into this season more than last year’s).

Being a first-year resident, David is one rung above an indentured slave. Today is one of his all-too-regular 30-hour calls (he leaves early in the morning for the hospital, and doesn’t return until the following afternoon!). That meant we were on own own today. We headed to his apartment after breakfast and set up our computers for more catching up (he was long gone, and yes, it’s still a vacation). ;-)

Just before lunch, we headed out for a shopping spree. Being godparents, we had a severe need to populate every empty space in David’s apartment with useful things (OK, so it was really more of Lois’ maternal instincts, but I was happy to play along). We bought a bunch of stuff at Bed Bath and Beyond. Then I dropped Lois at Costco and headed to have lunch by myself.

When we were last in Birmingham, we had another of our friends along with us, Wes. During that trip, both Wes and David told us that their favorite fast-food place is Chick-Fil-A. They couldn’t believe that I had never been in one. We had an aborted attempt to have lunch from there one day (my fault). After the trip, Wes sent us a Chick-Fil-A gift card (thanks again Wes!) to ensure that we made it our business to check it out.

Amazingly, in two consecutive trips to Zope, we were unable to schedule a visit to any of the Chick-Fil-A’s, including the one that is 1/4 of a mile from our hotel! I was determined to make it to one on this trip, and this seemed to be the most opportune time.

So, I drove 1/4 of a mile from Costco and ate a #1 meal in the place. It was excellent, so I now understand why many people rave about Chick-Fil-A (since Wes and David, at least five additional friends have told me that they consider it the best fast-food place). Considering that I still have a couple more meals left on the gift card, I will be thanking Wes again (and again). :-)

I wandered into the Costco, and was surprised that I didn’t have too much trouble finding Lois, even though she was in the diagonally opposite corner from the main entrance (a very long walk!). She was just about done, so we both were impressed with the timing of my arrival. You would not believe how much stuff she bought. Of course, you might, given that I got to drive to Chick-Fil-A, eat a meal there, and get back, before she was done shopping. :-)

When we got back, we experienced a few weeks worth of weight-lifting exercise. There is a very steep set of stairs outside of David’s apartment complex, then two more landings inside to get to his unit. We lugged all of the booty up over the course of four or five trips. Given how cold it had been on this trip, I had forgotten that sweating was possible. In addition to the manual labor, the weather broke today, and it was 60 degrees while we were unpacking.

While I am finishing this blog, Lois is on the phone with a Zope engineer, working away (is anyone surprised?). We will relax the rest of the evening (a little late night shopping is on the current agenda, but not for David this time). We can’t wait to see David again tomorrow afternoon (or more appropriately, after his obligatory nap!).

So, what’s left to say? Just the real explanation of the title of the blog.

In addition to listening to a ton of music (live and on the iPod), Lois also reads about music a lot. When something sounds like she would like it, she makes a note. A few times a year, she emails a list to me telling me that the time has come to place a large order. Lois really prefers physical CDs, largely for the liner notes, and I prefer downloads, both because they are cheaper (typically) and immediate (always).

One of the groups that she had on her list was One Flew South. I downloaded it a while ago, but for any number of reasons, we hadn’t listened to it (or most of the others on her most recent list). During this trip, Lois fired up One Flew South. Instant love. Lois thought there were nine voices (the harmonies are so rich), but it turns out that it’s only three guys.

Lois usually zones in on a handful of songs on a CD and she plays them over-and-over, to the exclusion of the others. This happened on this CD as well, and the ones that sang to her, have been listened to more than I would care to admit.

So, after hearing them for the umpteenth time, Lois said, “When you blog, please title it Two Flew South“, and it was so. :-)

One more week to go on this road trip, and I intend to savor every single moment!

Converting from Procmail to Maildrop

Send to Kindle

I’ve been using procmail to filter mail on the server forever. I like it, so it’s important to note that even though I switched, I have nothing bad to say about procmail.

So, why did I switch? Procmail can be a little terse to read (obviously, I’m used to it by now). Over the years, I have built a large set of rules. There is a ton of cruft in there. If I wanted to clean it up, I had to rewrite it. Rewriting it in procmail was definitely a possibility.

But, over the years, I was also aware of maildrop as a filtering solution. It has a cleaner (more accurately, a more straightforward) syntax. The documentation is a little sparse (missing a few key examples IMHO). There are also thousands (if not millions!) of example lines of procmail available on the net, and it can be hard to find complex real-world examples of maildrop filters.

But, I knew that if I rebuilt my filters in maildrop, I’d be forced to rethink everything, since I couldn’t get lazy and just grab hunks of procmail from my current system and plop them into the new one. So, maildrop it was going to be!

One last time, just to make sure I don’t offend lovers of procmail (of which I am one!), everything that I did in maildrop could easily have been done in procmail. I just happened to choose maildrop for this rewrite, and for now, will stick with it. Perhaps if I ever revisit this project, I’ll iterate the next time back in procmail.

The goal of my filters is to toss obvious spam (send it to /dev/null). Likely spam gets sorted into one of three IMAP folders. The only reason I split it into multiple folders is so that I can test rules before turning them into full-blow deletes. Finally, mail that falls through those is delivered to my inbox.

Over the years, I added numerous rules to filter classes of spam (stocks, watches, viagra, insurance, etc.). Without a doubt, I introduced tons of redundancy. I didn’t scan all of the previous rules to see where I might be able to add one more line because it would be too tedious vs just adding a new rule.

I was reasonably satisfied with the result, but over time, became less aggressive about deleting mail automatically, preferring to stuff it in a spam folder for visual scanning during the day.

Since I create my own rules (I don’t run a system like SpamAssassin, which I did for a while), I can start to see patterns and simplifications over time, which was the impetus for the rewrite. In other words, there are more commonalities across classes of spam, and I don’t have to spend as much time categorizing things as I was bothering to do.

I’ve now made my first cut of the maildrop-based system. It’s been in production now for seven days, and I’m very happy with it so far. The one major change I made is to default to deleting things (in other words, much more aggressive than the previous system), but, I keep a copy of all mail in an archive IMAP folder that I will prune through a cron job, and never scan visually.

I review my delete logs once a day, so if I spot an email that looks like I shouldn’t have deleted it, or someone contacts me asking why I didn’t respond, I will be able to check the archive and have the full mail there (for some reasonable period of time).

Here’s the result of the rewrite:

The original procmail system had roughly 3800 lines it in (including comments and blank lines). The new maildrop system has under 550 lines, including comments and blanks. I delete more mail automatically, and in a week, haven’t deleted a single mail that I didn’t mean to. I am getting a few more emails sneaking into my inbox, but each day, I add a few more lines and the list gets shorter the next day.

Now that I am getting a bit more spam each day into my inbox, Thunderbird junk filters are getting more to train on, and they are getting better too, so even the junk that is getting in, is mostly getting filed in the Junk folder locally, automatically.

Here are two things that took me longer than they should have to figure out with maildrop (they are related, meaning the solution is identical in both cases, but it wasn’t obvious to me):

  • How to negate a test using !
  • How to use weighted scoring correctly (very simple in procmail)

Here’s a line in maildrop format:

if ($TESTVAR =~ /123/)

do something useful if true…

The above will “do something useful” if the variable TESTVAR contains the pattern 123. What if I want to “do something” if TESTVAR does not contain 123? Well, until I figured it out, I was making an empty block for “do something”, and adding an else for the thing I really wanted. Ugly.

My first attempt was to change the “=~” to “!~” (seemed obvious). Nope, syntax error. I then tried “if !($TESTVAR =~ /123/)”. Nope, syntax error. I then tried “if (!$TESTVAR =~ /123/)”. No syntax error, but it doesn’t do what I wanted.

I stumbled on the solution via trial and error:

if (!($TESTVAR =~ /123/))

Ugh. The ! can only be applied to an expression, which is normally (but not always?!?) enclosed in parens. But, the if itself requires an expression, so you need to put parens around the negated expression as well. At least I know now…

The second problem was weighted matches. I was having the same problem. Once I put parens around my expressions, it started working. That’s one of the few places where the procmail syntax feels a drop cleaner:

COUNT=(/123/:b,1)

COUNT=$COUNT+(/456/:b,1)

COUNT=$COUNT+(/789/:b,1)

echo $COUNT

So, the above sets the variable COUNT to the number of times that the string 123 exists in the body of the message. That is then added to the number of times that the string 456 exists in the body, finally adding the number of times that the string 789 exists in the body. The total is then echoed to the console. Without the parens, no workie.

I don’t like the fact that I have to maintain the running count myself. In procmail, you basically set a limit and the tests stop once the limit is reached (which feels way more efficient). There might be a way to accomplish that with maildrop too, but I haven’t found it as yet…

While I fully expect to add more rules, or lines to existing rules, I can’t imagine a scenario where my file will even double from here, so it will end up at less than 1000 lines. That will be easier to maintain for a number of reasons, most notably syntax readability.

Sidux Wins Again

Send to Kindle

Almost two years ago, I wrote a post about an ancient (and very broken) laptop. Of the various Linux distributions that I tried on it, I really liked Sidux the most. I wrote about it in my In Praise of Sidux post.

I ended up trashing that laptop when the unreliability was more annoying that the brief moments that it would actually work (entirely a hardware issue, not a Sidux problem!).

A while later, I loaded a number of distros under VMware Player on my old XP laptop. Of course, Sidux was one of them. Unfortunately, I had problems getting X to work at greater than 800×600 (don’t know if it was a VMware problem, or a Sidux one, but as I noted in this post, I didn’t need it badly enough to track it down).

I’ve recently written about Virtualbox and how I got it to work with a multi-boot USB drive. In that post I mentioned the two main reasons that I boot Linux in a VM. I left out a use that is perhaps better, though I haven’t been disciplined enough to actually do it frequently. It’s almost the ideal way to surf to potentially dangerous websites, in particular, if you’re using a Live CD iso image to boot from. There’s simply nothing to infect on the part of the bad site!

Given how many malicious sites there are out there, it’s something I considered doing more often. In preparing, I decided that I wanted a tiny distribution, since I didn’t need to do actual work in Linux (e.g., I didn’t need an office suite, etc.). That said, I wanted two things:

  • Latest Firefox
  • Ability to build the VirtualBox Linux Additions

Both of those conspire against using something like Damn Small Linux (DSL, which I like), because it tends to use Firefox 2.x. I read a bunch, and Absolute Linux (12.2.1) sounded pretty good. I got it running quickly, and was even successful in getting the VirtualBox additions installed. I ended up giving up on it reasonably quickly for two reasons:

  • I couldn’t get the resolutions to be as flexible as I wanted, even with the additions installed
  • Package management was quite sparse and I wasn’t interested in going down the path of building tons of packages from source

In the past, I had success with Puppy Linux. I downloaded 4.1.2 and liked it instantly, much more than the 2.x and 3.x series that I had used before. Very attractive, very fast (booting and running). I really liked the unionfs filesystem. After trying reasonably hard to make this one work, I gave up (also for two reasons):

  • I couldn’t get Xorg to work under VirtualBox, but Xvesa worked flawessly
  • When I booted Puppy natively (from a USB drive), it couldn’t handle my Intel 5300 (a/b/g/n) wireless card (though NAT worked under VirtualBox perfectly)

Xorg worked flawlessly in native boot. Not having it work under VirtualBox meant no seemless mousing between Linux and Vista, a non-starter for me. VirtualBox couldn’t even find Xorg. :-(

I hesitated to even look for Sidux, because I didn’t want a DVD-sized ISO file. Reluctantly, I went to the site anyway, and found that the 2008.4 release had multiple versions, including a 395MB CD ISO with Xfce instead of Gnome or KDE. That was very attractive to me, as I’ve liked the simple and clean interface of Xfce on other smaller distros, and I didn’t have a need for a more complex framework for multi-app work.

I downloaded the ISO and booted it in VirtualBox. Everything worked perfectly, instantly. When I say everything, I mean everything. I wrote a post a while ago about how Ubuntu worked out-of-the-box under VMware Player, and I didn’t understand how. Now I do. The VirtualBox additions are already built in with Sidux (or, perhaps, VirtualBox recognizes Debian, and supplies the correct drivers to fool the operating system).

The point is that I could definitely run Sidux as a Live CD if I wanted. Pretty darn cool. But, I decided to install it to a virtual disk anyway. This way, I could have a customized installation with my SSH keys, aliases, plugins, etc. It would also make it less painful to upgrade to the latest versions of packages (instead of waiting for the entire distro to be updated on a new CD).

So, I installed it, and the VirtualBox additions (because I wasn’t sure whether the latest version, 2.1.0 was there by default). It’s simply fantastic. I can copy/paste across Vista and Linux. I can move the mouse seemlessly between the desktops. I can change the resolution if desired, including going to a full 1920×1200, going full screen, making the machine appear to be a native Sidux Linux one (Vista simply disappears completely). Then, without rebooting, I can just change the resolution back to 1400×1050, which fits nicely within the Vista desktop.

I have shared folder support (which I mount at will, so a virus can’t infect Vista since I only mount if I need to move a file from one environment to the other). I have full USB support to the virtal machine (so I can read/write from a USB stick from Linux). Like I said above, it all just works.

So, while I am glad that I learned a bit about some other distros (in particular, Puppy 4.1.2 which is really great), Sidux wins again for me. It’s simply a fantastic distribution.

Self-Service Pain

Send to Kindle

It’s extremely easy to cause yourself a lot of pain while performing maintenance on your computer. Here are two sure-fire steps:

  1. Do something really stupid, while being aware that you are doing so!
  2. Compound the error by being macho, and wanting to fix it manually!

Voila! You will have no one to blame but yourself for your pain, and you can be proud enough of the time wasted to waste a little more by publicly flogging yourself in a blog (like, say, this one…).

Here’s what I did to myself this morning…

Yesterday was Patch Tuesday at Microsoft. When I booted up this moring, Windows informed me that there were four critical updates available, and two optional ones. I looked over the list and was happy to accept the four critical updates.

Of the two optional ones, one was for my LAN device (which I’ve successfully updated in the past, so I was happy to include that). The other was for an external tablet device that I don’t own, and will likely never own. So, why did I check to include it? Only because I thought it might be more efficient to have the updated driver (dormant) on my system, than to hide it from future updates, but make Windows notice each time that it was out-of-date.

Oh oh, first big dumb mistake. When I restarted the computer, installing that driver triggered Vista to think that I now had a Tablet device, and it automatically turned on Tablet PC mode. In itself, that wouldn’t be so bad, except that it disabled my touchpad, which is my only mouse. :-(

Other than resizing and moving windows around, Windows (XP and Vista) are suprisingly easy to navigate around with only a keyboard, even without Accessibility settings turned on.

I could have undone the Windows Update quickly and painlessly, through the keyboard. But no, I’m macho and need to figure out how to fix this on my own. I launched a browser, searched Google, and found out how to turn off Tablet PC mode. That worked (Tablet PC mode was off) but my touchpad was still dead, even after a reboot.

I found an updated Synaptics Touchpad driver for Windows Vista x64, downloaded and installed it, but it failed to load properly after the reboot.

After dorking around way too much (nearly 90 minutes!), completely mouseless, I finally broke down and did what I should have done in the first place. I pulled up the System Restore facility, selected a restore point from this morning and let it do its magic.

After rebooting, everything was exactly the way it was before I updated the system. I then reapplied the four critical updates plus the networking one. I hid the Tablet (IdeaCOMM) update forever, and all is back to normal and wonderful.

To summarize:

Don’t install optional updates for hardware you don’t own!

If you make any mistake after an update, roll it back immediately!

Lessons to live by. :-)

VirtualBox Multiboot USB

Send to Kindle

Yesterday, I wrote about paying for free software. At the very end of that post, I highlighted a program called Macrium Reflect. That program can automatically create a Linux-based Rescue CD (in order to restore a previously saved image to a damaged or new hard drive).

On their site, they have a good tutorial for how to put that rescue ISO on a USB drive. As long as your BIOS supports booting from the USB drive (most modern ones do), it’s a tad more convenient to carry around a flash (thumb) drive than a CD.

In that tutorial, they use a program called UNetbootin (Universal Netboot Installer). What’s cool about this program (free and open source as well) is it can take practically any ISO and create a bootable USB drive out of it. It has many other cool features (e.g., it can automatically download any number of Linux distros and create a bootable USB or CD without you even knowing the location of the Linux project website!).

UNetbootin uses SysLinux under the covers to create and manage the bootable USB drive. Within SysLinux, there is a single file, syslinux.cfg, which controls the menu of selections that can be booted (different kernels, options to pass to a kernel, etc.).

Now switching gears for a moment, then back to the above to tie it all together…

There are a number of high-quality Virtual Machine programs/products available for all of the major operating systems. The three biggies on Windows are VMware, Virtual PC (directly from Microsoft) and VirtualBox (from Sun). All three are very capable, and all three have at least one version that is completely free.

On my old XP laptop, I used to use VMware Player. It’s free and quite good. I have read that recent versions of Virtual PC are good as well (also free), but I’ve never bothered to install it. While I understand that you can run Linux in Virtual PC, I believe it’s not supported, and I don’t really have a need to run Windows under Windows, so I passed on checking it out.

A few months ago, I stumbled onto VirtualBox. It used to be called InnoTek in a previous incarnation, and was purchased by Sun. There is a free version, which is fully open sourced as well, and there is a proprietary version which adds a few bells and whistles (including some cool USB support), which is available in binary form for free as well (for non–commercial use).

Since I have no interest or need (or capability!) to mess with virtualization source code, I am using the full binary version. On my new Vista Ultimate x64 laptop, I have only VirtualBox installed. I didn’t even download VMware (no knock on their product whatsoever!).

Here is what I like about it. Very fast to load. Full 64 bit support (both their app and guest operating systems!). Virtual PC now has 64 bit support for their own application, but you can only run 32 bit guests (if I understand correctly). Most importantly, I like the fact that it’s more complete (or at least easier to use) than the free version of VMware. I’m way too casual a user (I can go months without launching a VM!) to be willing to pay for VMware Workstation.

So, here are my two normal use cases with VirtualBox, and why I rarely need to run it:

  • Check whether a new Rescue ISO works
  • Do something fancy with ssh and X-Windows

The first one is simple. For emergency purposes, I carry around a few Linux Rescue disks (used to be only CDs, but stay tuned). My current favorite is SystemRescueCD (currently in version 1.1.4). When a new version becomes available, I download, and boot it immediately in VirtualBox, make sure it seems to work correctly, and only then burn it to a CD and toss the old CD.

The second is rarer, but more complicated. On rare occasion, a friend of mine who is running Linux (that I set up for her) on a very old laptop (that I gave to her) has a problem that I can’t talk her through over the phone. When that happens, I fire up CDLinux under VirtualBox, do some port forwarding on my router, do some ssh magic, and take control of her machine (by allowing her to ssh into my box first, so I don’t have to make changes on her firewall!). I can then even run GUI apps from her machine, redirecting the X session back to me!

Anyway, the point is that VirtualBox works really well, has tons of knobs (we’ll get to one of them in a minute), and doesn’t seem to slow down my pretty darn fast system.

Back to our main story…

When I created the Macrium Reflect Rescue CD (burned to a real CD), I also followed the tutorial to creat a bootable USB disk. When I looked at the disk, I saw the SysLinux stuff, and noticed that all of the Macrium files were in a folder.

I then experimented by using UNetbootin to create another bootable USB disk with SystemRescueCD on it. I saw that it used a different directory to store the various Linux kernels that it can boot. I was able to copy that directory to the other USB disk and copy/paste the lines from the syslinux.cfg file on the SystemRescueCD drive into the other syslinux.cfg.

I did the same thing with CDLinux (version 0.9.0 Community Edition). It used the same name for its subdirectory as Macrium did. I renamed the subdirectory before copying it over, and used the new name in the merged syslinux.cfg file. That worked, because once SysLinux gives control to the kernel in the renamed directory, everything else is relative to that new root directory!

I then rebooted my machine to test the new USB disk. It booted perfectly, and I had 28 choices of kernels to boot from! SystemRescueCD offers most of them, but I had Macrium Reflect and a few flavors of CDLinux to choose from as well. I was able to boot both 64 bit and 32 bit versions of SystemRescueCD successfully. Awesome.

Now the big test. I wanted to see whether I could boot that USB disk from VirtualBox. That would allow my normal use case of testing new releases without having to burn and reboot. Unfortunately, the GUI for VirtualBox does not permit an actual hard disk (USB or otherwise) to be directly attached to the VM (at least not for direct booting).

A quick scan of their excellent manual gave me the answer. There is a command line administration tool called VBoxManage.exe that can be used to create a tiny virtual disk (a VMDK file) that essentially points to any real disk or partition. I used that to create this virtual pointer to my USB drive. It worked perfectly.

I then attached that tiny VMDK disk to my virtual machine and fired it up. Voila, I got the same 28 choices to boot from. I couldn’t get the 64 bit versions to work (they boot, but they claim to be missing modules and won’t start X-Windows), but everything else works flawlessly under VirtualBox.

So, now I have a multi-boot USB drive, that I can keep adding stuff to, that I can test under VirtualBox to be sure it will work correctly should I ever have an emergency. It’s a 1GB USB drive, that has all of these various operating systems and tools on it, and I still have 500MB free. :-)

Paying for Free Software

Send to Kindle

There is a lot of free software available for every operating system. Some of it is open source, some of it is proprietary, but still free. Some of the free stuff comes with strings attached (shareware, for example). Some of the programs are amazing, many are just toys (or worse).

One relatively common theme in free software (at least on the Windows platform) is to give a relatively complete free version, but offer an upsell to a Pro version that does more. If the free version is too crippled, it’s likely to turn off potential buyers rather than create a demand for conversions to the Pro version.

Over the years I have used many free programs. If it was a shareware program (where you are legally required to pay for the software after a specified time of use, even if the program itself doesn’t enforce that!), then I always either paid for the program, or removed it from my system.

Examples of that are WinZip and Drag and File (later upgraded to Power File, from Canyon Software). While I felt good about both programs, for a very long time, buying them also had the perverse effect of psychologically locking me in to those programs once I paid for them.

Even when alternatives (often free!) became available, I’d feel that I needed to get my money’s worth with the one I bought, and I’d stick with it longer than I should have. For the record, I no longer use either of the programs, even though I own them, and could…

The best part about free, or shareware, is the ability to be sure that a program delivers what you expect (hopefully even more), before shelling out the money for it.

Early in 2008 I started feeling guilty that I wasn’t donating to a few of the software products that I was using regularly, even though they were truly free (not shareware). All three of my favorites were requesting donations (and deserved it!). The three programs I was using back then, on a regular basis were:

Of those three, only Vista Start Menu had a Pro version, enticing you to pay for more features (though the free product is quite awesome on its own). The other two have donation buttons on their websites.

I use Paint.Net whenever I upload photos to my blog. That’s the only time I use it. Even though I can go weeks without launching it, I still it use it regularly enough, that I should donate to the project, and I will.

At one point, even though I was addicted to Launchy, I deleted it from my computer, because it (in conjunction with other background processes) was slowing down my computer. At that point, I was happy I hadn’t paid for it. Then, after getting my computer back to normal, I tried it again, and was again happy with it, without any slowdown. Then I felt guilty that I hadn’t donated.

In the summer of 2008, before the financial meltdown, I decided that I would be more aggressive about paying for programs that I use even semi-regularly, just because it’s the right thing to do. And yet, I didn’t go out and do it right away. That’s because by then, I knew that I would be purchasing a new laptop within the next six months, and I wasn’t sure what operating system I would put on it, or whether I would carry over the same habits/programs even if I stuck with Windows XP.

In November 2008 I finally got my new laptop, and indeed, I switched operating systems to Windows Vista Ultimate x64. I no longer had a need for Launchy, because the basic functionality of Launchy is built right into Vista, and it works really well (Launchy is still awesome, and highly recommended for XP users!).

Paint.NET is still in my arsenal, still on an infrequent but regular basis. Vista Start Menu is no longer on my system. While I think it too is an awesome program, and there is a off chance that I will install at some point in the future, the built in Search in Windows Vista (the part that mimics Launchy) is so powerful, so fast, and always finds what I want instantly, that I just don’t miss Vista Start Menu (though it’s incredibly cool, both conceptually and in its implementation!).

So, now that I’m settled in, I’m ready to fulfill my promise to myself to start paying for things I use regularly, even if they’re free. Especially now, in this economy, I want to support innovative people who create useful software.

So, first up is my favorite VoIP Softphone, Zoiper. For many years, I used a softphone called Diax. I loved it. Unfortunately, I had a few minor problems with it, and at some point, the author stopped maintaining it (it was free). I discovered Zoiper (after trying quite a number of other softphones). I was very happy with it in general as well, though it too presented me with a few problems.

I reported those to the company that produces it, Attractel, and they were amazingly responsive to me via email, even though I was using the free version. Their next release solved all of my problems! At the end of 2007 I wrote to them and told them that even though I didn’t need any of the Biz (their name for a Pro version) extras, I was thinking of buying it just to support them.

As noted above, I ended up rationalizing not doing so for another year. On Friday, I upgraded to the Biz version. So far, the only feature that I have even tested is creating more than two accounts (which is what the free version limits you to). Until I install Asterisk 1.6 (which is still months off for me), I am not likely to even test any other Biz feature. Still, this is a great company, producing great software, and they deserve the support of anyone who uses their stuff!

Next up was backup software. On XP, I was using a combination of two programs. The first was Apricorn EZ Gig II. This is commercial software that came with a hard drive upgrade kit that I purchased a while ago. It can clone hard disks, or make image files that can be restored later on. It works very well, and is very fast. I used it semi-regularly, to make full-image backups of our laptops.

In between those backups, I used Microsoft’s SyncToy program to incrementally backup our most critical content (emails, documents, etc.). There were things about SyncToy that were a little annoying, but mostly, it worked well. It was a version 1.x beta at the time. The new version 2.0 is much better, and only has one annoying thing left (IMHO).

Over time, I started to dislike the EZ Gig II method of backing up, because the only way to access any file on the image backup was to restore the entire image to a disk drive, then pluck out the file(s) that you want. I found another program (free for non-commercial use) called Drive Image XML. It pretty much does what EZ Gig II does, but it also creates an XML file that maps the image to individual filenames (after the image is complete), and individual files can be extracted from the image via an Explorer like interface.

It’s slower than EZ Gig, but not too bad. I used it to image my old XP drive when I got my new Vista-based laptop. Then I copied the image on to the new hard drive. Then I used Drive Image XML directly on the new laptop to access the XP image, and pull out whatever files I wanted, knowing that the rest of the files were at my fingertips.

Unfortunately, while that worked well enough, I found a few files that were showing up in the Explorer interface, but that Drive Image XML couldn’t extract, thinking they were zero length. They shouldn’t have been zero length, so I realized that Drive Image XML wasn’t perfect. Thankfully, I was able to pull them over with a USB key from my old laptop, so they weren’t gone forever.

That got me to search for a better (but similar) program. After reading a bunch, and testing some, I settled on the free version of Macrium Reflect. I was able to image my entire Vista hard drive (while still logged in!) to an external eSATA hard drive, in 55 minutes! It took 193GB and compressed it (with normal compression mode) to 133GB. To restore a file, it mounts the image as a virtual hard drive in Windows, and you use the regular Explorer to browse and copy files. Awesome.

This, in conjuction with SyncToy 2.0 would have been enough for me. I did not need to pay for the Pro version. But, in my new spirit, I wanted to pay for the upgrade. I ended up buying the Family Four Pack (pay for two licenses, get two free). I only need two (one for me, one for Lois), but why not get two emergency licenses in the bargain, just in case, for the same price.

Since the Pro version can do individual files in addition to complete images, and can do incremental and differential images as well (which the free version can’t), I may actually use this tool only, and abandon SyncToy (even though it works well). While my use of Reflect has been minimal so far, I’m really impressed and pleased with this program. If they didn’t have a free version, there’s no way that they would have me as a customer.

I expect to continue to pay/donate for software that I use on a regular basis going forward. I am promising myself that I won’t let that lock me in psychologically should better programs come out in the future. It’s a small price to pay to feel better about doing my bit in keeping these innovative developers going.

Update 1/20/2009: On Windows XP, I used WinPatrol for a reasonably long time. I never had a need for the Plus features, so I never upgraded. When I switched to Vista, I didn’t install WinPatrol. This morning, I decided to add this wonderful program to the list of software that I want to support. I installed the latest version of WinPatrol, and even before I did, purchased a Plus license (just to support the author!). :-)

Happy New Year

Send to Kindle

For the past six years (2002-2007) we’ve spent New Year’s Eve in Richmond, VA. There are four couples there who get together each year and cook a very special (and sumptuous) dinner at each others houses (rotates each year), and we hitched our wagon to their tradition back in 2002. Of course, we were invited this year as well, and had originally accepted the invitation.

Unfortunately, our good friends in Leesburg, VA are going through a very rough time. The Dad has an aggressive form of cancer, and this week was undergoing a particularly aggressive round of chemotherapy. He was being treated daily, for a minimum of six hours of the life-extending poison being pushed (their term, not mine) through his veins.

As much as we knew we’d enjoy our annual New Year’s Eve get-together in Richmond, we also knew that helping our friends-in-need was the right thing to do, and we had no hesitation in offering our help. There were two things we could do directly:

  • logistics (driving the Dad to/from the hospital)
  • entertaining the boys, who clearly feel stressed worrying about their Dad

They have three kids, two boys ages 10 and eight and a girl, 2.8 years old. All three are adopted. We met the family when the 10-year-old was 18 months old, and they lived two doors down from Lois’ Mom’s apartment in NYC. We’ve remained very close to them even after they moved to VA seven years ago. So, we know the boys really well, and their various likes and dislikes.

We headed there Tuesday after working all day at Zope in Fredericksburg. On a whim, we stopped for dinner at Five Guys in Warrenton, VA. We’ve eaten at this Five Guys a number of times, because it’s roughly half way between Fredericksburg and Leesburg, and we occasionally meet our friends there on a weekend when we’re working at Zope. On Tuesday, it was just a convenient (and delicious) stopping point for us.

In an incredible small world story, a few bites into our meal, both Lois and I recognized a 10-year-old boy going over to fill up his drink. It turns out that really good friends of the friends that we were headed to visit had also stopped at Five Guys on their way to spend New Year’s in the Outer Banks! We were headed in opposite directions, with neither of us having planned to stop for dinner there. In another irony, they had visited our friends earlier that day!

Small World

Small World

On Wednesday morning, I drove the Dad to the hospital, and spent three hours keeping him company while he was undergoing the chemo. That turned out to be beneficial for him in another way. The hospital has free WiFi, but his work laptop needed to be coaxed to connect to it. In his condition, he was unable to get it going on Monday or Tuesday, but I was able to connect him, and he felt better about getting some work done on Wednesday.

Boys Only Moment

Boys Only Moment

At lunch time, I left him to join the rest of the family (Lois included) at our favorite local Chinese restaurant where we all enjoyed a buffet lunch. After lunch, Lois and I took the boys bowling. I haven’t bowled in years, but I love it every time I go. They had each bowled only once before (at a birthday party I think), and really liked it. We all had a blast and the boys played some video games afterward.

As you can see, all three boys had perfect form. Of course, my form is also over-flowing. I guess I need to get serious about that in 2009. So far, not so much…

Hadar Bowling

Hadar Bowling

8-year-old Bowling

8-year-old Bowling

10-year-old Bowling

10-year-old Bowling

A typical moment between me and the 8-year-old (this one, at the Bowling Alley):

Head Stand

Head Stand

Two best friends, sharing a moment:

Best Friends

Best Friends

We are prone to spoiling them over the years (often to the consternation of their parents), but we weren’t about to deny them much this week. So, after bowling and video games, we drove to Baskin Robbins (which is housed inside a Dunkin Donuts), and got them ice cream (well, one of them got ice cream, and the other one a smoothie). I had an excellent Lite Latte, quite delicious.

Chocolate Sprinkle Cone

Chocolate Sprinkle Cone

Smoothie Delight

Smoothie Delight

You’d think that this would be a jam-packed day, but you’d be wrong! From Baskin Robbins, we headed to the local movie theater to see Bedtime Stories. Of course, the four of us had to split a large popcorn. You gotta do what you gotta do. ;-)

Keeper of the Popcorn

Keeper of the Popcorn

The movie is excellent. I highly recommend it. What sets it apart from most movies (including other kid-friendly ones) is that no one tries to sabotage anyone else. There is a nemesis (and you might even consider him an evil nemesis), but he doesn’t do underhanded things directly to Adam Sandler (our hero). It’s refreshing. The story itself is creative, while still being predictably formulaic. A very sweet movie. The boys loved it, so did we.

When we got home, we found out that another of the Dad’s friends stopped by to visit him in the afternoon, and was kind enough to bring him home. We had a lovely dinner together, followed by a little too much rough-housing between me and the eight-year-old (he loves to wrestle). I also played a ton with the little girl (more on that later).

Even though it was New Year’s Eve, we all went up to our rooms by 9:15, and Lois and I watched TV for 45 minutes, and hit the sack (completely exhausted)  at 10pm. No complaints about not ringing in the new year at midnight!

The clinic (attached to the hospital) was closed on New Year’s Day, so the Dad had to be checked in to the main hospital. I drove him in and watched in amazement as they couldn’t find him in the system, even though he was told in advance what room he would be in. The normal registration desk was closed so we had to navigate a maze to find the ER registration, which likely explains why they didn’t know how to do a normal admission.

I stayed with the Dad for two hours and then picked up Lois and the boys and we went bowling again! Everyone improved their scores from the day before, so it was a satisfying outing. We then headed to Cici’s Pizza Buffet. It was our first time (the boys love it) and we thoroughly enjoyed it (very tasty in addition to being a very good value!).

From there, we headed to the movies again. This time, we went to the giant multi-plex to see The Tale of Despereaux. On the way there, in the middle of a conversation, both boys excitedly starting yelling look over there. It took us a second, but when we looked at the divider, there was a hawk sitting on top of the wrong way sign. Very cool!

Hawk

Hawk

Of course, another round of popcorn for the four of us. We all enjoyed this movie as well, but all four heartily agreed that Bedtime Stories was significantly better. In fact, the 10-year-old claimed that Bedtime Stories was his favorite movie.

After the movie, we dropped Lois and the eight-year-old back at home, and the 10-year-old and I headed to the hospital. Originally, we were told that the Dad would have to stay in the hospital for two nights, not getting out until Saturday morning. During the day, they changed their mind and decided he could come home each night. So, we headed there to keep him company until they released him, and watch some bowl games in his room. Shortly after the Rose Bowl started, he was released, and we brought him home.

We had another excellent dinner together, followed by watching the second half of the Rose Bowl. It didn’t get exciting until the last seven minutes, but it was a good distraction nonetheless. I was strong and successfully resisted all attempts to wrestle again. I was quite sore from the bowling and the wrestling up to that point. I did end up playing a bunch with the little girl again.

Mother and Daughter

Mother and Daughter

Previous to this trip, she hadn’t been all that verbal. While we’ve spent a reasonable amount of time around her, she was more of a remote cutie (like a doll) than like a real person. I was completely blown away this trip by how verbal she is. Not only does she talk up a storm, but her vocabulary is extensive (it’s almost frightening, seriously). If she pronounced all of the words better, I would swear she had the conversational skills of a 13-year-old, no kidding!

How many nearly-three-year-olds do you know who can form the following sentence (I’m not changing a single word!)?

Ho-dar, can you come to the family room and play with me and my toys?

OK, so she doesn’t always pronounce my name perfectly, but otherwise, pretty incredible. Here’s one other example of an actual conversation between us:

her: Ho-dar, I have my own telephone!

me: Really? Do you talk to people on the phone?

her: No, it doesn’t have any batteries in it, so I can’t!

Wow. Pretty cool to watch a personality come to life between one visit and the next!

Here I am with the kids, right after breakfast:

Pajama Gangstas

Pajama Gangstas

This morning, I took the Dad back to the clinic. I stayed with him for a few hours again and then headed back to pick up Lois and the boys. We had lunch at Chuck E. Cheese (a first for the two of us). We had no idea what we were in for (of course, the boys knew exactly what the deal was). We were surprised that they wanted pizza two days in a row. As you all probably know (and we didn’t), it wasn’t about the pizza at all. Chuck E. Cheese is all about the games.

They had a blast playing a ton of games and won roughly 300 tickets between them. Still, they couldn’t find a single prize that they wanted, so they saved their ticket receipt for the next time. We had hoped to see Madagascar 2 after lunch, but it was no longer playing in any theater near them. So, we headed to Walmart and let each of them pick out a DVD to watch at home.

When we got home, the Mom told us that she was going to pick up her husband when he was done. We already knew we would be leaving today, since the boys had Tae Kwan Do tonight and tomorrow morning again. Given the updated schedule, we decided to hit the road while it was still light, and we stopped by the Zope office before heading to the hotel to settle in for the night.

All-in-all, a very successful visit in every respect. In addition to accomplishing our mission, our friend also received very good news that his tumors appear to be responding to the chemo. He is incredibly nauseous all the time, and he is weak as can be, but hopefully, he’ll start feeling substantially better soon. He’s completely bald as well, but we both think it looks pretty good on him. We’ll see if he chooses to keep it that way. :-)

For us, ringing in the new year with such good friends is as good as it gets! Thanks for hosting us. :-)

December 2008 Poker

Send to Kindle

December was no different than November. Good results in Omaha (though not many tournaments in general), and a total wipeout in the big Sunday Hold’Em tourneys, accounting for a terrible economic showing. Bottom line for the month: -$694.60.

In one of the big tourneys, they paid the top 135 spots. I finished 137th. I probably could have squeeked in if I just folded two more times, but I decided to play like I should, not like I was tempted to. It didn’t work out.

Anyway, another bad economic month, but another satisfying round of Omaha tourneys (though still a very light playing schedule).

For the year, a complete economic wipeout: -$2,128.26.

Horrible, obviously, on every level. That said, I was playing with previous winnings, and still have enough left in the account to play a bit more (a lot more if I would avoid paying full-freight in the big Sunday tourneys).

As much as I love playing online poker, and I really do, as I’ve mentioned before, I’m secretly looking forward to running out of money in the account, so I can obsess about other pursuits that I don’t make enough time for, given the siren song that poker sings to me. :-)