Category Archives: Uncategorized

Well that job certainly had excessive cellulite!

I have it from a very good authority – my wife, experienced connoisseur of advise columns – that items like the following are a perennial favorite:

“I hear the same kind of complaints coming from single men. ‘There are no good women out there.’ … if your idea of the perfect wife is a 19 year old compliant Czech super model with pencil thin, cellulite-free thighs and DD-cup bustline whose fondest ambition is … then perhaps it is your attitude that needs a bit of adjustment … There are plenty of decent women out there.”

I’m hopelessly amused at the metaphor: job ~ fashion model.  But, I have my standards and I will not accept a job with excessive cellulite.  Ok, having seen the scale of my pending tax bill, maybe I will.

SO

If you don’t already know that I am looking for a job, you do now.  Suggestions are most welcome!

Adding to the excitement is that my kids are all out of high school now and Mimi and I would be open to any number of scenarios, even if packing up this house might kill us.

Note there is a contact me link in the sidebar and more info on the about page.

A Slurry of the Miscellaneous

A beautiful essay where in the middleman rants at his dear good friends on both sides of the divide he bridges.  A good example of both how the middleman is always struggling with how to frame how he characterizes these parties; but more so how there is always an underlying larger scope that is likely more critical than their self indulgent disdain for each other.

Speaking of living on borders: a nice paragraph:

Which brings back a memory. About nine years ago, as a young pup, I recall meeting a Programme Director from another organisation. Having just come back from years in a field office, she was gaunt from tropical diseases, and wrinkled and weathered from years of sun exposure. Her clothes looked like they were from another decade. She wore no jewellery and no make up. She spoke slowly and deliberately, using simple words and short sentences. No jargon. No sophistication. Plain speaking. Every few minutes, she would pause and check that you got her point. I recall another colleague saying derisively, “You can tell when they have been in the field too long. They lose touch”. I recall that now. And realise, with some pride, I too have lost touch.

This just makes my skin crawl: a catalog of autistic schemes to reify reputation in your software.  These social software people seem hell bent drain the blood right out of the community they attract.

Google Voice, the refresh of their GrandCentral acquisition, is quite nice.  The transcription of voice mail to text is quite amazing and useful.

Django’s templates … {{block.super}} leads to all kinds of tangled wonders.  But then these frameworks are 90% tangle out of the box, right?

On the attention management tool front:  The Readablity bookmark (make your own) is addictive.  Combines nicely with the rough but useful Firefox plugin FullerScreen.  I often use Platypus (another firefox plugin) to reduce the clutter on a web page prior to printing it.  I’ll note you can edit your Firefox navigation toolbar so it’s more at hand.

I’ve been using the Perspectives Firefox plugin for a while now.  It’s great if you interact with sites that have homemade SSL setups; particularly now that firefox has gotten all fastidious about them.  Appears to be pretty, if not more, safe too.

Yeah!  Here’s why Quicksilver stopped working r. my Firefox bookmarks.  Toggle browser.bookmarks.autoExportHTML to true via <about:config>; and then you have to explicitly add the resulting bookmarks.html file (hidden in you Firefox preferences folder), and finally toggle the settings so quicksilver's cataloging mines the urls out of it.

As side effect of my work on the Simile project I found my self drawn in to the puzzle of how hard it is getting for Reasearch Libraries to archive the output of scholars.  I was discouraged to see that while the librarians were very worried they didn’t seem to be even close to sufficently worried.  By way of the enjoyable Statistical Modeling, Causal Inference, and Social Science blog here is a fine example of what a good scholarly paper should look like, and hence what the Libraries need to figure out how to capture and preserve.

Simulated Shopping

Tom Slee has a fun dishpan model (term) of the effect of recommendation systems on product diversity.    The short form is that introducing a recommendation system drives the market toward reduced diversity.  He launches off from a paper that shows much the same result.  He builds a little simulation.

His model is straight forward.  Buyers and products are situated in a feature space.  Buyers are most satisfied when they acquire a product close to them in this space.  His model runs in two modes: with and without a recommendation system.  The products and buyers are drawn randomly from a normal distribution.  I guess we could label the buyers on the tails of that distribution eccentric, and the products on the tail as niche.

Absent the recommendation system buyers find products with some tendency to find ones nearby in the feature space.  Those products satisfy them to some extent and that knowledge can then be rolled up into a recommendation system.  Naturally, once the recommendation system is turned buyer choice is effected, to some degree, by this pooled knowledge.

There are lots of affordances to play with on a model like this.  For example if we assume that the buyer’s position in the feature space is known to the recommendation system it can vary it’s advice.    Alternatively we could imagine changing buyer’s minds by moving their preferences in the feature space or changing how they weigh one or anther dimension of the space.

It is conventional in discussions of markets to rant about the evils of the intermediary, i.e. the agent.  In Tom’s model the agent is the recommendation system.  Tom’s conclusion is that the recommendation system leads to a sharp decrease in the diversity of products cleared through the market.  (I am reminded of how the real estate agent has a strong preference for bathrooms in white.)  I suspect that if he did the sums it would also show a decrease in the overall buyer satisfaction – but that’s less clear.

Dishpan models, particularly coupled with a simulation, are extermely powerful tools for thinking about problems like this.  Valuing their outputs can be trouble, but ignoring them is worse.

Moral Hazard Pay

Once working for a big firm they decided to shift our compensation plans away from simple salary toward something a larger emphasis on an individual bonus.  During the many meetings where the HR people outlined the new plan one of my more amusing colleagues slowly maneuvered the presenter into realizing that the scheme created strong incentives for us to game the system.

My colleague began by revealing that he was puzzled: would not this create incentives for him to ignore his professional expertise in preference for short term advantages.  From there he began, with a bit of help from others in the audience, to introduce other hypotheticals where one might be tempted to set aside this or that goal that was outside the reach of the incentive’s scoring system.  At which point the CEO chimed in that that would be unethical.  Surprisingly that invoked a wide spread chuckle from the audience.

But, of course, one function of an incentive system is to shift behaviors away from things the employee might do otherwise.  Possibly because he’s easily distracted, possibly because he is more loyal to his profession than the firm’s next quarter, possibly because he is too risk adverse.  The list goes on.

I recalled that story after reading something in the most excellent blog at footnoted.orgFootnoted recently highlighted a perverse example of how incentive design can play out.  One of Bank of America’s recent filings reveals that they paid out 1.2 Billion dollars to Merrill Lynch associates.    Payments triggered by a “change in control” clause in their contracts.

The change of control clauses in executive contracts are part and parcel of the “bribe the pirate” pattern seen in publicly traded companies.  Given the desire of shareholders to have executives to take large amounts of risk, since that shareholders can diversify away most of that, you do two things: let them share the upside, remove the down side.  In this case the change of control clause is like a life insurance policy for the pirate.

Having mused for while that 1.2 Billion dollar pay out was the insurance policy these guys were given to take risks that might destroy the company it has finally occured to me that this is that movie plot; i.e. evil person murders for the insurance money.  So this isn’t about how incentive plans always create moral hazard, which they do, but rather this is actually a kind of adverse selection.  But unlike the insurance company afraid that the only people who will buy life insurance are those soon to die in this case the incentive designer was intentionally trying to attract actors to take life threating risks.    I now recall.  Many many years ago a VC who very much wanted to entice me into working on an idea of his said to me – “We can structure this so you needn’t take any risk.”

Daisy Chains of IOUs

In the big book of Folktales for money managers you’ll find this delightful story.  It begins, as folktales do, when a stranger comes to town.  As he checks into the hotel he asking Albert the desk clerk to store ten thousand dollars the money safely in the hotel safe.  But Albert takes the money and pays off a debt to Bob.  This triggers a cascade.  Bob pays off a debt to Charlie, Charlie to Dave, etc.  Later that evening Zed steps into the hotel and pays off a debt he owes to Albert.  Greatly relieved Al then places the money into the safe.  The next morning the stranger is chatting with Albert and reveals he’s a Fed.  As he is retrieving his cash he jokes: “Man, these are lousy these counterfeit notes!”

Apparently this town was entangled in $270,000 worth of debt, but it took only $10,000 to unwind the problem.

When I originally read this story in a fun pamphlet on local script currency systems it triggered a reminding of an old Mad Magazine bit.  Kids in high school all trying to act like the next coolest kid.  They too were caught in an analogous cycle.  It’s delightful the way the mind works; Mad Magazine, Mad Money…  tis a slight relief: after skimming this piece.  Apparently the global village is entangled in a similar cascade of interlocking debt.  Sum it all up, divide by the village population, and what do you get?  Every human on the planet has $190,000 of derivatives debit.

In the folktale the $270,000 of debt is unwound in a few hours with no transaction costs, no friction, and apparently no interest payments.  We should be so lucky.

Amazon Plays with their Prices

I shamed Amazon into lowering their prices. Just kidding.  You recall my recent posting asked why Amazon’s prices aren’t tracking the cost of hardware etc.

If you are feeling extremely generous you might say that that Amazon cut prices by half, or maybe a third.  It’s confusing.  Not surprising, that’s the way you play with prices.    Nobody every lowers prices!  Instead you play pricing games.  Coupons, sales, special offers for special customers.    You don’t lower prices you increase the options for negotiation.

The pricing game Amazon picked was to add subscriptions; which are good for increasing lock-in.  Under the subscription plans the cost per hour is lower.  It’s about a third of the pay as you go price.  Your overall cost is higher because you have to buy the subscription.  Considering the one year subscription your better off staying with pay as go if until you run a machine half time.

It’s a clever pricing move.  This should significantly increase the lock-in while making it harder for competitors to price match.  A competitor would have to buy out any existing subscription.

I just love this quote: “An allocution in such a high stakes case is closely lawyered.”    So too with pricing design.

Book or Blog Posting?

I’m amused

Over a year ago … inspired … to contemplate a book-magnitude project on the topic… talking to trusted friends about approaches to the project and topic, and contemplating the necessary ‘field work’, when I was rudely interrupted … didn’t interfere with my net access, so I continued the pursuit virtually. But what I learned caused me to drop the project … consigned that effort to the “some things don’t work out” category, until a recent dinner with one the aforementioned friends persuaded me that the experience and my conclusions might be worth a blog essay …

so many books have I read, if only!

Franchising Local Currency Systems

What do Milford Ct, Fairfield CT, Ann Arbor MI, Muskegon MI, and Palestine TX have in common?    To encourage local business they all set up little private currency systems.  Usually organized through the local chamber of commerce they sold what were effectively gift checks or gift certificates.    Local citizens could buy those and later redeem them at local businesses.

You can set up similar things for charitable purposes.  For example First Energy in Akron Ohio sells gift checks that you can give to poor families.  You can buy gift checks to send to soldiers overseas.  Redeem at the commissary.  “$20 million … since 2002 … more than $3.9 million in fiscal 2008” (navytimes).

All these systems have another thing in common.  They all blew up a few days ago.  CertifiCheck, a company in Ohio, shut down; and it turns out all these good spirited organizations signed up with these guys to run their little micro-currency system.  Browsing Google’s cache it looks like there are hundreds of towns, charities, and thousands of small businesses have been affected.  “A Catholic hospital in Illinois says its employees have $30,000 worth of unredeemed gift certificates.” ().

I wonder what it said on these gift checks: “Backed by the full faith and credit of a couple dudes in Dayton, Ohio.”

How you feeling about that PayPal account?

Python Twisted’s inlineCallBacks

The folks in the twisted community found the most wonderful trick.  Consider this typical example of event driven code.  Consider this example (proabably easier to read bottom to top).  The function enqueueTaskToDisplayURL depends on three callbacks to handle the usual eventualities (good, bad, wrapup).


from twisted.web import client
from twisted.internet import reactor
import sys

def shutdown(*whatever): reactor.stop()

def printPage(data): print data

def printError(failure):
    print >> sys.stderr, "Error:", failure.getErrorMessage()

def enqueueTaskToDisplayURL(url):
    get = client.getPage(url)
    get.addCallbacks(printPage,
                     errback=printError)
    get.addBoth(shutdown)

 if __name__ == "__main__":
    enqueueTaskToDisplayURL("http://example.com/")
    reactor.run()

The trick they found was to use generators of their promise abstraction (aka defer).  So we can write that example as so:

from twisted.internet import defer
from twisted.web import client
from twisted.internet import reactor
import sys

@defer.inlineCallbacks
def enqueueTaskToDisplayURL(url):
    try:
        data = yield client.getPage(url)
        print data
    except Exception, e:
        print >> sys.stderr, "Error:", e
        return;
    finally: reactor.stop()

if __name__ == "__main__":
    enqueueTaskToDisplayURL("http://example.com/")
    reactor.run()

The clever hack is done by @defer.inlineCallbacks, which works because this function (notice the yield) is a generator.  That just made be giggle.

I’ve only gotten into Python and Twisted in a part time way over the past few months.  I’m probably committing all kinds of sins here.