Category Archives: Technology

The Many Boons of C. Steve

Tenali Rama

There’s a story about Tenali Rama, poet and jester at the court of Vijaynagar, no doubt put out by the old fox himself. He was a lazy young layabout, until he successfully sued a local deity to grant him a boon. “You may choose only one of these two cups,” she said, “Drink of the milk and be wise; of the curd, and be wealthy.” Quick as a flash, T. Rama thulped down both cups of prasad. Using his newfound wit, he proceeded to mollify the angry deity, saying that either one without the other was quite useless. And went on to amass fame, fortune and the undying hatred of his peers, who might have withstood a smartass, but simply couldn’t stand a rich smartass.

One can only speculate what multi-armed deity  Cupertino Steve summoned, and what cups he was offered. But you can bet he scarfed down every last one of them.

I’ve long been puzzled at the indecent glee that a certain set of people exhibit at the lightest missteps of Apple. Now I think I know why there are so many who absolutely hate Apple in general – without ever having used their products – and C. Steve in particular. It’s because Apple has violated a fundamental law: they operate outside the Pareto envelope of technology-esthetics-business.

You’ve heard the usual pick-any-x lists:

  • Features, quality, time: pick any two
  • Beauty, intelligence: pick any one
  • Popularity, critical acclaim: pick any one

The tradeoffs they represent are held to be almost universal laws, feeding the very strong human tendency to make excuses for the virtues and successes of others. “Oh, he bribed the Government, that’s how they made their billions”, “She may be hot, but she’s dumb as a brick”, and so on. Even the silliest reason will do, but a reason is necessary. It fills a need.

I Pie With My Little Eye...

People dislike Microsoft, but they don’t hate them the way they hate Apple. Redmond Bill craftily maintains a mild-mannered Clark Kent look, just so people can think, “He may be the richest man on earth, but what a dorky haircut!” One pie did more for R. Bill’s popular image than all the billions he’s spent on philanthropy.

Someone who makes it all work is violating a sacred no-free-lunch law, leaving the rest of us looking bad, lazy or stupid. Apple – like Be Inc. and Jean-Louis Gassée – might have been remembered with fond nostalgia and regret, if they’d had the decency to fail. Or at best, been content with the scraps available to a marginal player. Instead, they created beautiful, highly usable amalgams of hardware and software, invaded multiple markets (iPod, iPhone), created new business models (iTunes) and product categories (iPad) and most unforgivably, became a roaring commercial success.

What is everyone else supposed to do now? How can we keep saying people won’t pay for good design, that a f*$#@ing ugly user interface is fine, it’s the thought that counts? How can we half-heartedly mould some plastic and stick two prongs in it, shamed by an Apple plug gleaming at us from a nearby socket? How do you keep throwing crap at the cheap end of the market, when the $50 iPod Shuffle docks with a Lego-like snick into its base?

Mmm... Lego

Pundits and naysayers have been trying, of course. “Reality distortion field”, “Form over function”, “It’s all marketing, they could sell those fanboys turds covered in white plastic”,  reaching its nadir in Charlie Brooker’s masochistic “Beat me, whip me, make me use Windows.” Sorry, folks, that stuff won’t stick any more. Metrics talk, bullshit walks. Apple has eclipsed even Microsoft in market cap, their user base extends far beyond a fanatic hipster core, they’ve started from scratch and made huge inroads into mature markets with established dominant players. If it’s so easy, why doesn’t everyone hire suave, turtlenecked hucksters and make billions?

There are many reasons to criticize specific Apple policies and products, but if you hate them in toto, as a sort of ideological stance, then I have to reluctantly conclude that you are either technologically or esthetically naïve, unable to appreciate just how goddamn hard it is to create an Apple-level experience, or…

Envy. Sorry. The word is not mentioned in polite company, but there you are.

Envy isn’t all bad, it drives a lot of human behaviour, provoking imitation and competition. Apple’s severest critics would have to admit that it’s raised the bar and influenced other players to produce far better user experiences than before. With luck, consumer expectations will be raised and Apple DNA disseminated widely enough that it survives Apple itself. We’ve got to dig ourselves out of the Malthusian trap where poorly designed and written software consistently outstrips hardware gains to deliver a mediocre user experience.

And Steve – the next time you have an Antennagate? Get that chap to throw a pie at you. R. Bill will be happy to give you his number.


Autonomous Software Agents as Trustees

Now we come to idea #2: immortality.

“Arthur’s brain could always be replaced,” said Benji reasonably, “if you think it’s important.”
“Yes, an electronic brain,” said Frankie, “a simple one would suffice.”
“A simple one!” wailed Arthur.
“Yeah,” said Zaphod with a sudden evil grin, “you’d just have to program it to say What? and I don’t understand and Where’s the tea? – who’d know the difference?”
“What?” cried Arthur, backing away still further.
“See what I mean?” said Zaphod and howled with pain because of something that Trillian did at that moment.
“I’d notice the difference,” said Arthur.
“No you wouldn’t,” said Frankie mouse, “you’d be programmed not to.”

My limited definition of immortality is – ensuring that a part of you lives on, so that your wishes are carried out well beyond your expiry date. The traditional way it has been done is

  1. Genetically
  2. Make a lot of money and establish a trust fund run by a bunch of lawyers whose firm has been around for centuries.

Both methods have their limitations. The genetic method involves creating a creature which develops its own ideas about what to do with your legacy. The other one has a high barrier to entry and is prone to creative interpretation on the part of trustees.

Now consider the breadth and depth of data available online and the increasing number of things possible to do simply by being connected to the Internet. It is possible write a program – essentially, an autonomous software agent trustee, an asat, which will

  1. manage the resources required to fund itself and its objectives.
  2. monitor the net for events
  3. carry out actions like selling stock, sending roses, periodic emails, giving money to individuals, institutions, charities based on triggers like timeouts and events visible on the net.

The legal framework would be the same as that used by trusts. It’s just that the human trustees now have a very simple job – they need to verify the legality of the program, host it somewhere where it has net access. This enables the trustees to deal with orders of magnitudes more clients than they possibly could if they had to function as “human executors” of “wills”, which is essentially the same thing. It also reduces the scope of creative interpretation.

Given Moore’s law, the cost of running the asat is next to nothing. Given compound interest, after several decades, its financial power will be far greater than you could achieve in your lifetime. Especially since it will use strategies which work well over really long terms (buy-and-hold), whereas impatient monkeys like you can’t resist the urge to meddle. You can then use it to do significant stuff without relying on your descendants. You can leave the bulk of your assets to your descendants in the traditional way and a small amount to power your asat. Compound interest will do the rest of the job.

The asat would use abstractions which would be meaningful across long periods (~100s of years) of time. The framework in which the asat is written will provide fixed APIs and implementations of these abstractions. The framework will need to be upgraded from time to time as the implementation of the abstractions changes, but the core logic can remain as-is.

Here is a simple example something which can be done by an asat:

  • Generate some amount of cash every year from an investment portfolio.
  • Pick some descendants at random, probably the younger ones. It’d know who your descendants were, from walking through the births/deaths/DNA fingerprint database. It is possible that you might be even be able to compute who your favourite great-great-great grandchild is, by looking online at their school scores, favourite books, toys etc.
  • Pick at random from the 10 most popular toys for that age which fits in the budget. (Today’s implementation in the framework: look at the Amazon top 10)
  • Buy and ship, optionally with a note and a sermon from great-great-great grandma appropriate for that occasion.

This simple example illustrates a few common characteristics of such agents:

  • They can identify people by a chain of trust which extends through time, with resources available online, and make decisions with a high degree of confidence.
  • They can make a good buying decision – appropriate for the time in which it is made – without having any conceivable idea at programming time, of what toys would exist or be popular 100 years hence.
  • The framework needs to translate a time-independent command like “give me a list of the 10 most popular gifts for 6-8 year olds under 100 dollars (indexed for inflation)” to an Amazon API call. 20 years later, this may be a lookup on some MegaGoogle API. Someone needs to keep updating the framework.

There are many interesting points about asats. I will talk about a few of them below.

  • One of the most important issues is that of legality. Human trustees would be ultimately legally responsible for the actions of the software agent. Therefore, one immediate barrier to agent complexity is that the code needs to be simple enough to verify and get certified (and recertified, on demand, when laws change) by a qualified human that its behaviour would be legal. One way is to translate the code to LEGAL, an Anglo-Saxon language full of whereases and heretofores. This LEGAL document can then be examined by the trustee – if he is comfortable with executing this piece of LEGAL, then all he is doing is outsourcing his execution to the software, which presumably functions as advertised. This is not such a big deal, since humans are called upon to validate, certify and audit the behaviour of very complex information systems for compliance to regulations specified in LEGAL. Anyway, there are going to be any number of tiny island republics with liberal laws, submarine fiber (and maybe nuclear deterrents), which will gladly host your asat for you.
  • You don’t need AI, strong or otherwise, to accomplish this. It’s possible with today’s technology. However, AI would certainly make it possible to specify more and more complex behaviour (approximating your own), although it would pass the behaviour verifiability event horizon at some point. Asymptotically, this would lead to the download-yourself-into-teh-intarweb immortality which strong AI and Singularity proponents are dangling in front of us.
  • A language for speaking to asats will emerge. Let’s say you want to build a hospital in Hingane Budruk. You would write a blog post or a press release, with a Request for Funding tagged with the appropriate keywords. Some asats would notice – through MegaGoogle news – that someone is planning a hospital in their home town. They would then put up some money towards it.
  • “Exploits” targeting such agents to get money out of them (“I am the ghost of MRS MARIAM ABACHA…”)
  • A stronger way to ensure that your asat doesn’t squander his money on fraudulent RFFs would be to create a chain of trust. For example, I trust the judgment of X, Y and Z for financial matters and assign scores to each to reflect my level of confidence. A, B and C for political matters. I will encode this, sign and publish my trust matrix. X, Y, Z, A, B and C will also do the same. Sooner or later, the trust chain will include younger and younger people. So some guy in 2100 may endorse a particular scheme and you can evaluate the value of his endorsement by computing the path through the trust graph and the weights on the edges. It won’t be just one guy, of course. Thousands will vote on schemes and by aggregating their judgment, your asat will have as good a way of getting sound advice as any. This is similar to the PageRank and other Web2.0 peer rating methods, except that it extends much further through the time dimension. Using the temporal chain of trust, you would even be able to take a stance on the then-extant politics and contribute to political causes.
  • How do you update the core logic? Again, the chain of trust will help. The agent could fork(), with the new copy getting some money and trying out some other “highly rated” code fragments for financial planning from other asats, etc. Asymptotically, this line of thought points towards DNAesque evolution.
  • The asat never tires, never wants to die, doesn’t waste money on vacations or health care. Asats may be among the richest people in a century or so and society may be dominated by “dead hands” (this, of course, may already be true).
  • The asat can have a presence in Second Life or other online virtual worlds. A soup of ELIZA, voice recordings, text to speech, some seed data would make for a really creepy experience. People generate massive quantities of content – photos, email, videos, which can be mined to provide some idea of their behaviour.
  • You can run one, or two or twenty such agents. You can start running them right away (“living trust”), with yourself as the human trustee responsible for guaranteeing their good behaviour.
  • Extra-legal agents using anonymous funding can be created to run in some offshore data haven. They can do a lot of mischief, like sponsoring terrorist activities, verifying their occurence via news events, then paying off the perpetrator…
  • Collaboration between asats. You might help out asats of your “friends” (computed through the chain of trust), descendants, peers who are in danger of extinction due to some imprudent investments. Or collaborate on filtering events, financing ventures, etc.

Technology can empower millions of people to create asats, just as millions of them create avatars, Sims or tamagotchis today. Extending it to a solution which can function as a will will require you to grandfather in a company of solicitors which has a hundred-year track record, in addition to developing the framework, the language, the chain-of-trust, etc. This is the standard way for new insurance companies to acquire a veneer of respectable age and stability – they buy up the tailor whose great-great-grandfather made chaddis for Mangal Pandey and proudly claim “Covering your assets since 1857”.

Go ahead, play God. Program for eternity!