Fall Has Arrived

September 23rd, 2008

After spending some nine days in California, it’s great to be back home just in time for the transition into peak fall. Kathy and I took some time this weekend to cruise around our backyard and assess the sights. It’s always a little tricky, because the color change happens quite quickly but at different times all over. You’d even think it would be directly correlated to altitude (higher, cooler areas turn first), but even that doesn’t quite hold completely predictably.

A nice set of bands of thunderstorms also blew through while we were out, creating wildly changing light conditions and more than one or two rainbows!

I’d say we’re still about a week away from “average peak” color across the range. And our aspens, always late to the party, might have more like two before they max out in yellow.

Not only is fall fantastic around here, but it gets the mind ready for winter! I’m especially looking forward to hitting the slopes this year.

Book Signings and the BenBux Invitational

September 22nd, 2008

I have a poker tournament named after me. Okay, really the only reason it’s so named is to entice me to come and supposedly donate my dollars to my opponents. Nevertheless, said tournament has a real trophy made of poker chips, an old-fashioned cigarette tin, and some St. Basil’s Cathedral-esque adornments.

BBI Trophy

The reason I can show you this picture, of course, is because I now have the trophy, and the reason I have it, of course, is because I won the latest incarnation of the contest. Having recently learned that my friend, trophy-creator, and author John Vorhaus was about to leave the country to spend an undetermined but large number of months in Moscow, in winter, I decided that it would be best to assemble the gang one for one last hurrah prior to his departure.

So, it was with optimism and enchantment that I spirited myself off to Los Angeles at the last minute, courtesy the very fine United Airlines, for a less-than-one-day visit to the BBI Tournament Battlegrounds. As it happened, I arrived on a Friday afternoon just in time to:

a) visit my sister-in-law on campus,
b) enjoy a delicious Armenian sandwich at my old haunt, Zankou,
c) show up as a live guest on a poker radio show being broadcast that afternoon,
d) attend J.V.’s book signing and goodbye party at Vroman’s Bookstore, where I also got to listen to him pontificate on all manner of things and try to induce the crowd to come play in the BBI,
e) discover that I, in fact, am personally profiled in another poker book that my friend Tony authored a year ago, and
f) participate in the BBI, of course.

All in all, it was a great trip. I guess the $670 prize purse for winning the BBI was a nice spiff, but really, the highlight was the cringing, grimaced faces of my friendly opponents. When I started this entry, I thought, “Wow, I’m slow in getting this to press. I should apologize to my loyal readers,” but now I’m feeling grateful: it’s been just long enough that reliving the experience, and drooling over my trophy, is like being there all over again.

Cashflow analysis in Scheme

August 29th, 2008

One of the my favorite aspects of personal finance, mixed in amongst the doldrums of boring, repetitive data entry and upkeep, is future cash flow. It’s pretty much the most important thing most regular people want to know, too, right? How much money will I have [then]? When will I run out of money? And so on.

Now, I’m no authority on tools to do this kind of computation. I’ve used all of about three: a spreadsheet, Quicken, and some online Web 2.0 thingamajig. The problem with all of them is that they’re not designed flexibly enough to let you represent spending (and earning) events that don’t have really simple, discrete characteristics. That’s a fancy way of saying that about all you can do is plunk down payments and paychecks on a calendar and hope for the best. This is fine for simple questions where the [date in the future] is not too far away and everything is pretty deterministic. We all pretty much expect to get our next few paychecks, in other words.

Nay, what interests me, my friends, is being able to do more sophisticated analysis. Here are some of the types of money events I want to be able to model:

  • Fixed-date transactions like all the basic tools can do.
  • Recurring transactions with a fixed interval.
  • Recurring transactions with a fixed interval and a variable amount. The way the amount varies should also be parameterizable, so you could have a simple constant change, a logarithmic fall-off (credit card payments against a shrinking balance look like this, roughly), or even a stepped exponential growth (paychecks with annual raises look like this).
  • Recurring transactions with a varied interval and a fixed amount. One example of this is my bill from the highway ExpressToll transponder network. They only charge me $50 at a time. Once my $50 is used up, they bill for another $50. Since I don’t drive on the toll roads deterministically, the bill date varies. It should be possible to select common distribution functions (uniform, normal, and Poisson at least) for the interval. Another real-life example is purchasing replacement sets of snow tires.
  • Recurring transactions with a variable amount. All manner of things from simple bills (electricity comes to mind) to freak events (hail damage - time for a new roof and an insurance deductible!) can be modeled.
  • Transactions whose probability or temporal distribution is dependent upon other, previous transactions. If I get in a car accident, I’ll have to pay that right away. I might want to adjust the inputs to my annual insurance premium up a bit to account for the inevitable rate increase.

Now, some of you might be thinking the same thing as Zamba: “Dad, you’re plum crazy. How could you possibly model all of these things accurately? And, even if you could, won’t it be different in real life? And, by the way, do you have any treats?”

The truth is that this type of generic modeling tool could be useful for analyzing all manner of wealth streams, including the all-important long-term savings scenario. It’s just as easy to map various investments, investment classes, contribution scenarios, and disbursement scenarios (including your favorite guesses as to the probabilities that tax laws change, etc.) into this as day-to-day cash flow. At the end of the day we really just need the ability to Monte Carlo the transactions across time and generate a result that show average case and standard deviation. It makes it easy to approximate risk-of-ruin.

I’ve decided to implement this model in Scheme, a dialect of one of my favorite languages, LISP. Scheme is so awesome for this particular problem. It makes it very easy to take a building-block approach to constructing up more and more complicated interval calculators, distribution models, and ultimately functions that spit out these cash transactions at the desired times and for the desired amounts.

Here’s a simple example:

(define (make-every-on n d)
(lambda (x) (= (remainder (+ x 1) n) d)))
(define (make-every n) (make-every-on n 0))

Already we’ve got two functions that can help us build other functions; namely, functions that evaluate true on every nth day and functions that evaluate true on every nth day starting on the dth day. One more helper function and we’re ready:

(define (make-interval-fixed-spender amt pred?)
(lambda (day) (if (pred? day) amt 0)))

Do you pay your $10,000 mortgage payment on the 7th of each month? Well, here ya go:

(add-spender (make-interval-fixed-spender 10000 (make-every-on 30 7)))

I’ll post some fancier examples soon. I know you’ll be checking back every hour or two until then, so just remember, get up a few times an hour and stretch so as not to hurt your hands.

Winter Willing

August 15th, 2008

Folks, winter is on the way. Just two weeks ago, we were all sitting around in our un-air-conditioned house about to melt. The heat was ever-present, reaching 90 at our abode during midday. Bringing a newf into worst possible thermal environment at that time was doubly challenging, since she needed to

a) go out and do her business a lot
b) sit in water all the time
c) have a cooler place than the main floor for her crate

There were a couple days where I took to hiding in the basement (where it is, bar none, always cool) with the dogs and hoping that there wouldn’t be an accident.

Today, however, we have swung fully the other direction, and the mountains have demonstrated their orographic prowess. The temperature today, at 1pm? 42F. Right now? 37F. We had at least two hailstorms today, and the rest of the time was a “wintry mix” of rain and icy slush. The slush that accumulated on our front porch at around lunchtime is, for the most part, still there!

Needless to say, Zamba is in heaven. She can lie on our bed without moving around constantly. She found the slushy ice after a couple of hints and now insists upon pouncing on it at every visit to the “potty.” (Alas, today there have been quite a lot of potty visitation attempts with somewhat underwhelming production ratios.)

13, 14, 38, 45, 0

August 8th, 2008

Sounds like something from Lost, huh?

It’s been 13 days since we got Zamba.

She’s now 14 weeks old.

She weighs 45 pounds tonight, up from 38 upon arrival. (She’s within an inch of Chaco’s height at this point.)

Today we arranged a “play date” with three other newf puppies, including the runt of Zamba’s litter (li’l sis), a puppy from a one-dog litter (the others all died at birth due to a complication), and a landseer (black and white spotted Newf variant). Somewhat interestingly, if not surprisingly, Zamba and her li’l sis played the most of any of the six possible puppy pairings.

Oh, and the zero? That’s my goal for the number of “accidents” inside the house. We’ve got a ways to go on that one.

High Latency

July 29th, 2008

In addition to having an infatuation for water, our new puppy is also blessed with a very special brain. You see, it has a built in “lag factor.” She needn’t be under the influence of mind-altering chemicals (I suppose water will do). There don’t have to be any distractors in the environment.

No, Zamba simply needs time to process. She’s not dumb, persay — she’s learned or partly learned several handy commands in a matter of days. But, stare right her and give her a confident “sit” and you’ll immediately get a Newfie Tongue Hanging Out(TM), a Newfie Blank Stare(TM), a faintly audible whirring (that’s the gears in her brain), and then, finally… yes. She’ll sit.

Okay, I probably got a little hyperbolic with that description. Really, the lag averages only about five seconds. It’s awesome!