Talk Funnel

Ramin Firoozye's (occasional) Public Whisperings

On 50

Posted by: Ramin on October 30, 2008

This came through the mail recently. I’m not quite there yet age-wise, but still found it funny:

Advantages of approaching (or passing) your 50th birthday:

  • Kidnappers are not very interested in you.
  • In a hostage situation you are likely to be released first.
  • No one expects you to run–anywhere.
  • People call at 9 pm and ask, did I wake you?
  • People no longer view you as a hypochondriac.
  • There is nothing left to learn the hard way.
  • Things you buy now won’t wear out.
  • You can eat dinner at 4 pm.
  • You can live without sex but not your glasses.
  • You get into heated arguments about pension plans.
  • You no longer think of speed limits as a challenge.
  • You quit trying to hold your stomach in no matter who walks into the room.
  • You sing along with elevator music.
  • Your eyes won’t get much worse.
  • Your investment in health insurance is finally beginning to pay off.
  • Your joints are more accurate meteorologists than the national weather service.
  • Your secrets are safe with your friends because they can’t remember them either.
  • Your supply of brain cells is finally down to manageable size.
  • You can’t remember who sent you this list.

Notes from the iPhone Tech Talk

Posted by: Ramin on October 23, 2008

I spent all yesterday at Apple’s first iPhone Tech Talk in San Francisco (technically, Paris was first because of time differences, but we won’t quibble). After seeing the schedule of events (and having attended WWDC) my expectations for getting new technical information were pretty low.

Boy, was I wrong.

The talk itself was under NDA so I won’t go into details. But I’ll point at a couple of items in current examples and documentation that everyone should be aware of:

  • If your app is using audio in any way, you’ll want to make sure you’ve read and understood the “Audio Sessions: Cooperating with Core Audio” section of the “Core Audio Overview” document (it’s part of your help document set in the SDK).

    Of special importance is making sure you declare the proper AudioSessionCategory for your app. Not doing it means that if your app uses sound (input or output) and gets interrupted — by an incoming phone call, or even by the user plugging and unplugging headphones — your app’s sound may not continue playing properly. There’s some example code in the SpeakHere example to help point the way.

    Here, by the way is what the documentation says:

    Ignoring Audio Session Services will not prevent your application from running, but your app may not behave the way you want it to. Never ship an iPhone or iPod touch application that uses audio without using this interface.

    You’ve been warned.

  • If you’re using the accelerometer, you’ve probably seen the low-pass filter code in the docs and examples. The point of the filter is to smooth the effect of motion ‘jitter.’

    The thing is, the basic low-pass filter formula is — to put it mildly — non-functional (aka brain-dead). Again, I can’t talk about the specifics, but the presenter had graphs that showed how bad that formula behaves.

    Actual color graphs, I tell you!!!

    If you manage to get your hands on a sample iPhone Apple application called Touch Fighter — you’ll want to use the smoothing function there (the app was handed out in WWDC and isn’t part of the standard SDK example set).

    If you can’t find it, I suggest looking around for source code that handles the Wii remote (they have to deal with similar issues). At some point, I might post a more detailed technical article on this.

  • Gesture management is still something that Apple leaves to individual developers, instead of including it in the SDK. I have a ‘swipe’ detection library (but it’s only for one-finger swipes, not multi-touch). If there’s demand for it, I’ll post it up.

    But really, this should be something supported in the OS.

Most of the TechTalks are full now. If you happen to have gotten accepted, don’t skip them. If not, get on the waiting list. It’s worth it. The sessions on game development and performance tuning are massive info-dumps. Might want to take a lot of notes.

P.S. That mod-squad picture on the web site (excerpted above) features actual Apple evangelism group members strutting their stuff 🙂


Posted by: Ramin on October 7, 2008

I totally blame my absence from this space on Twitter, for sucking away what little time and energy I have to write things. However, with the removal of the iPhone NDA, I’m going to re-focus on what I’ve been spending most of my working time these days: iPhone app development.

That is not to say that I’ll stop posting other meanderings. Just that I need a place (other than mailing lists) to post and where better than, you know, my own damn blog.

Resetting styles

Posted by: Ramin on September 11, 2008

Sorry if the blog’s style keeps switching around. Problem seems to be with the DB and hosting site. It keeps resetting back to the default WordPress style even if I haven’t posted for a while.

Might just have to give up and leave it there. *sigh*

Setting the bar low

Posted by: Ramin on August 22, 2008

Ad for an institution of higher learning, currently circulating on national news outlet sites.

The Most Determined Spammer in the World

Posted by: Ramin on August 16, 2008

This message popped into my email inbox today:

A few points worth mentioning:

  • The [SPAM] tag was not added to the subject header by any software on my end. As near as I can tell, it was either put there by the spammer’s own email server, or added manually.
  • The particular inbox to which the message was addressed is protected by a server-side whitelist service (SpamArrest). For the message to get through, somebody has to go to the trouble of explicitly confirming that they’re really a human and put themselves on the approved list. The sender did this.
  • The same message has been sent several times under different email addresses. Every time, I ban the address and a while later it makes its way again with a new sender address (which has to be manually confirmed with SpamArrest, again).
  • I feel bad for the ‘real’ Dr. Lulu Gwagwa of South Africa, who appears to be a most accomplished investment banker.

For some reason, the perpetrators of this message are really determined that this message get through and a lack of response (or continuous placement on the ban filter) doesn’t seem to deter them. That they consistently confirm their own address through SpamArrest tells me that they are not exactly high-volume ‘shotgun’ spam traffickers. Those people rarely provide a working reply address.

On the other hand, I have to admit that opening with an apology and the fact that they admit they got the email while doing a ‘random transaction’ on the Internet shows refreshing candor.

Sadly, I am forced to ban the sender once again, as much as I appreciate the effort.

Don’t mess with Mom

Posted by: Ramin on May 1, 2008

Holy crap!

French author Michel Houellebeck gets slammed hard by, of all people, his own Mother (more here).

Wouldn’t it be funny if she ended up with the Prix Goncourt instead of the acolyte of modern nihilistic French literature? The lesson: don’t put thinly veiled insulting caricatures of your Mom in your writings. She probably has more dirt on you than anyone else.

On an unrelated note, I’d like to take this opportunity to wish my mother an early Happy Mother’s Day and tell her what a fantastic, great individual she is…

Insurance 2.0

Posted by: Ramin on May 1, 2008

Jeff Jarvis ponders whether Insurance is impervious to social reinvention. I don’t agree, but I think it’s going to take some pretty big thinking, a major set of cojones, and a fair bit of social engineering.

A few years ago, I spent a fair amount of time working on a desktop healthcare application, with the idea being to let people take care of their own healthcare needs. After a couple of years of research and development, I ended up mothballing the system after realizing that the only way to get something like that to work was not to tackle a small piece of the process (the user’s health records) but the larger, systemic problem of health insurance. Incidentally, it is for this very same reason that I think half-baked efforts like Google Health and Microsoft HealthVault are doomed to irrelevance.

Now, I don’t make any claims to being an expert in insurance or healthcare. But I’ve been cursed with a healthy dose of curiosity and a background in designing and building complex systems, which qualifies me to do a lot of standing on top of hills and looking for patterns. It turned out that most of my two years of work on the software was spent studying the healthcare and insurance industry, instead of coding.

After all that time and effort, I finally came to my senses and realized that tackling the healthcare system was just too daunting a task since it required aligning the interests of ALL parties involved in the chain including insurers, doctors, employers, etc. all the way down to the individual. So I mothballed the project and went off to write fiction and start a family. But the problem has always nagged at me. There’s a little voice in my head that keeps saying: There must be a better way.

My good friend and business partner Mitch Ratcliffe recently went through some experimental surgery (that thankfully seems to have worked). He’s written about it here and his conclusion was that there is a “need for a new economics in medical care.”

I couldn’t agree more. But how do you tackle something as unwieldy as the insurance industry (and its medical offshoot, the healthcare system).

A hint comes from a comment made by Seth Godin in response to Jeff’s post: you have to think big. The only way to do Insurance 2.0 (including healthcare) is to rethink the whole process, free of all the self-interested legacy cruft that has been built into and around the system.

Yes, now is a good time to get those eyes rolling. Contrary to what some might assume, I’m not one of those technology über-alles types. As far as I’m concerned, technology is — as the kids like to say — our bitch. Its purpose is to serve us, not the other way round. Nor do I subscribe to the baby/bathwater theory — that everything is broken and needs to be thrown out.

But please, indulge me for a moment.

The way risk is currently calculated is primarily static and completely opaque to the consumer. Insurance companies hire an army of actuaries who come up with risk tables for a variety of situations and create complex mathematical systems to help mitigate it. These metrics often take into account some key milestone events in a person’s life (i.e. if you get married, move, change jobs, fall ill, etc.) but do not allow for mitigating circumstances (like the death of a parent) nor do they require any sort of active involvement or participation by the consumer.

By and large, you get quoted a rate, you pay your premium without really knowing how or why any of it works. All you know is that if you make a claim, your rates will go up. The insurance company is going to do everything in their power to make it hard for you to pull money out and everything (including hardball legislation) to make it difficult for you to use the benefits. Your interest as a consumer of insurance and that of the insurer are in direct conflict with each other (in computer network parlance, it’s a master-slave relationship.) How your behavior affects others (or theirs yours) doesn’t even enter into it, even though technically you are all in the same risk pool together. It’s as if you live in a silo.

It also makes for a complex, top-down system of rules and risk calculations — most of which are designed to push the risk back down onto the insured and the money up toward the insurer. And the whole edifice comes tumbling down when you get large systemic catastrophes, like floods, wars, or epidemics.

Since we’re complaining about the system, what else is wrong with it? Plenty. The underwriting rules are almost never disclosed completely (not that too many people would care) and any attempts at making a claim is often met with a flurry of complex paperwork designed to slow the process down, to dissuade the (busy) consumer from ever again wanting to make a claim again. As Jeff calls it, it’s a sucker’s bet — in more ways than one.

So what’s the solution? More government regulation? Applying the Web 2.0 salve? Actually… neither.

To get a better picture, we have to engage in my favorite activity of zooming up into birds-eye range and looking at the whole system. The insurance system (if it can be called that) is a series of complex, interlocking, top-down subsystems, with various balkanized pools of information, and players whose interest (and power) is served by keeping a chokehold on that information. By design, it’s complex and anyone who gets too close to it will inevitably get swamped with information overload and quickly back off. Those who don’t (like a certain former First Lady) will likely get singed in the political heat (and maybe start imagining incoming sniper fire 😉

The alternative to a complex centralized system is often a simple, decentralized system that applies rules recursively. Think P2P, fractals, or human cellular biology.

The Web 2.0 version of insurance (again, including healthcare) would have to start with a simple, easy to understand mechanism that anyone can use to assess the risks and the costs. It would have to be dynamic, transparent, and let you know exactly where you stand so you can make informed life decisions. It would have to take into account every other participant in the risk pool and encourage open communication. It should be understandable by anyone, and when applied collectively, provide the best answer to global risk mitigation.

In other words, it will have to be open and transparent. Yes, it sounds impossible, but the alternative is to replace one complex system of knobs and levers with another one. I am convinced that the solution is in simple, recursive, self-organizing systems. I have some ideas as to how this could work, but this is the sort of thing best tackled (and vetted) by a group of interested individuals dedicated to the art of simplification.

There’s another thing to consider: as commenter Uncle Fester says in response to Jeff’s post, there are HUGE regulatory and financial barriers to creating new insurance mechanisms.

First, instead of calling it insurance let’s call it something completely different (Lifecare, for example). This is not just semantic sleight-of-hand. The term ‘insurance’ comes with a lot of baggage which can get one bogged down in regulation and litigation for a lifetime. Second, to make it work so it becomes something that can be trusted (that it’ll be there in times of need) and get large-scale adoption, it’ll have to align the interests of all beneficiaries — in this case, individuals, businesses, government regulators, AND … (wait for it) insurance companies (!!!)

How can this work? Why would any insurance company want to participate in a competitive scheme that threatens their core business?

The problem is that the whole insurance edifice (including healthcare and pension plans) is a Ponzi scheme. As long as there is new, low-risk money coming into the system, the high-risk ones can be covered. The difference, however, is that investors don’t really cash out — they die, or move their business elsewhere, so they have to never be paid off. Most people don’t need healthcare when they’re young and spend most of their lives accident-free. The majority of the time, they automatically pay into the plan. The earlier they die (or get kicked out of the risk pool) without using expensive resources, the better off the scheme will be, having taken all the premiums and paid out relatively little of it.

The way to bootstrap a new Insurance 2.0 is to start by taking the highest risk policies off the hands of current insurers (along with a decent amount of cash for doing them the favor) and bootstrapping a distributed risk management system into place.

By taking these groups and putting them into a social/distributed scheme, you get to battle-test the system and make sure all the rules are fairly applied. Sure, there will be initial falterings. But over time, a self-regulating system will develop the right mix of complexity vs. fairness and provide a more balanced mechanism than what we have today.

This is the alignment of interests I earlier referred to: insurance companies (with bad bets on their books), corporations (with increasing healthcare and pension costs), government agencies (who may get saddled with the costs as an insurer of last resort), and the individuals themselves (faced with no coverage) will all be interested in seeing this experiment work.

It will require a large pool of startup capital and easing of regulations, but if it works, it could revolutionize the way liability insurance, healthcare, and pension plans operate.

As Seth Godin says: Think Bigger, Jeff!

But start by thinking small (and recursive).