Companies Should Sell Tea Concentrate

Making tea well is hard.

Some teas become bitter and ruined if steeped in water that’s too hot. Green tea, for example, is fine at 65 degrees but not at 75-80.

The only way to get this right is to use a tea thermometer. But some tea thermometers force you to heat more water than you’d like, because otherwise they don’t immerse properly, giving you the wrong reading. You then have to measure the quantity you need, and throw the rest away.

And heat the water slowly, in simmer, not high, because high makes it very easy to overshoot your desired temperature and ruin your tea. If your tea thermometer is showing 60, it may be much higher, like 70, producing a bitter brew.
To evenly heat water, it’s also best to use a copper-bottomed vessel, which conducts heat evenly.

In addition to heating the water to the right temperature, you should steep the tea for the right duration for the tea. Steep it too long, and the taste won’t be as good. Steep it too short, and it won’t even infuse.

See how complex making tea is? What can we do about it?

Let’s apply a lesson from a related field: coffee. You can buy ground coffee at the supermarket, but it’s not as fresh. Coffee fans buy beans and grind them afresh each time. But a company named Keurig came up with an ingenious solution — selling single-use cups containing ground coffee sealed in nitrogen. You feed one into a machine, which punches a hole and makes the coffee. Since the cups are single-use and sealed in nitrogen until use, they don’t become stale. The company quickly reached a billion dollars in annual sales.

Applying this lesson to tea, companies could brew tea at the right temperature for the right duration, in the smallest amount of water possible. They would then sell the concentrate in small, single-use cups. When you feel like having tea, you open one and just add hot water. A cup of essence would be appropriate for one cup of tea, which is 237 ml.

If steeped tea spoils soon,  the concentrate could be sold frozen.

This takes the hassle out of making tea, while still giving you perfectly steeped, tasty tea everytime.

We Should Have Square Tablets

Tablets can be square, at least some models.

A square tablet will be easier to hold in one hand than a rectangular one of the same surface area. No matter where you place your hand, a rectangular tablet has a corner that’s farther away from your hand than a square tablet. This makes it heavier. It’s called the moment of inertia — this is the same reason why a door is harder to open the closer to the hinge you push it. A square tablet will be easier to hold with one hand.

Small tablets, like the 7-inch Nexus 7, also have too small a width to use comfortably in some situations, like reading a web page in portrait mode. You can switch to landscape, but then the height becomes too small. A square tablet avoids this problem.

A square tablet is also simpler, since it doesn’t distinguish between landscape and portrait. You don’t need to keep changing orientations depending on what you’re doing. Or deal with different layouts in different modes. Or with apps that don’t support a particular orientation, or don’t support it well.

The big drawback of square tablets is watching movies, or looking at photos full-screen. These work best on rectangular tablets.

So, square tablets may not be for everyone, but they have enough advantages that they should be offered as an option in the market.

Interesting App Store Metrics

Some metrics are commonly quoted — that Google Play has a billion active users, or that Apple’s iOS app store earns more money for developers, or that Windows Mobile is failing.

But do you know that the average Windows Mobile developer earns more than the average iOS or Android developer? The Windows developer earns $11K a month, compared to 8K for iOS and 5K for Android. Though Windows mobile has far fewer sales, it seems to have even fewer developers, so each developer earns more. Many apps seem to be paid on Windows Mobile, versus free on Android and iOS.

iOS apps bring in 75% more revenue than Android apps. But that’s what users pay. If you look at ad revenue, iOS is only 17% more than Android.

How do upfront payment perform relative to in-app purchase and advertising? Here’s the answer for Windows:


Which categories have more downloads? Here’s the answer, again for Windows:


A more interesting statistic is which category has the most downloads per app. That’s where you might want to concentrate your efforts:


Moving on from Windows, I wish Apple released information showing the revenue per app across all their four app stores — iOS, macOS, watchOS and tvOS. And number of downloads per app. That way, developers can choose the platform that produces the most revenue, amongst Apple platforms. And the competition will hopefully drive down prices for users where they are high. If Apple hesitates to release the raw numbers, they can normalise it.

To take an Android example, a question like “How many users are there?” has a lot of nuance. To begin with, let’s take Google Play’s number of 1 billion active users. That immediately eliminates people who don’t have Play (like Chinese phones or Kindles). Or who don’t have Internet access at all, like the security guard at my apartment. Further, let’s say you’re planning on using an API that was introduced in Android L. That’s 40% of Android users, which is 400 million. You might as well ignore the other users.

As another example, if you’re making an India-specific app, the iPhone’s market share is insignificant, like 2%, but if you look at phones priced at more than ₹20K, Samsung’s share is 44%, and Apple’s share is 28%. Go above ₹30K, and Samsung and Apple are roughly at par at around 45%.

There’s so much nuance around metrics. Merely tossing out one number is not good enough. It will lead you to the wrong decisions. Make sure you’re measuring the right thing.

Android Should Prioritise Privacy over Backward-compatibility

Android Marshmallow introduced iOS-like runtime permissions. You don’t get a permission prompt when you install your app; only when the app tries to access private data. And you can go to settings and toggle any permission if you’ve changed your mind.

This has many advantages: you can use apps even if you don’t want to grant them all the permissions they want. Users are prompted in the context. For example, if you want to share a document with someone, being asking for contacts access at that point is natural and makes it more likely for you to grant access. Users who don’t use a feature that requires a permission are never bothered about that permission. And so on [1].

Unfortunately, not enough apps have been updated to take advantage of this new system. Those apps are still granted all permissions they ask for at the time of installation. But, as a concession, you can go to settings and toggle any permission off. The only change between old and new apps is the default — new apps have all permissions off until you turn them on, while old apps have all permissions on until you turn them off.

But, when I tried to turn permission off, I got this prompt:


Google should remove turn this prompt. Just deny permission. If the user wants to turn off a permission, don’t discourage them. If an app breaks because the developer couldn’t care to do the right thing for their users even 10 months after Marshmallow phones launched, let their app break. Users’ privacy is more important than backward-compabitility with lazy developers.

Not only should users not be discouraged when they try to deny permission, all permissions should default to off, even for old apps. Show a prompt on first access, and only then grant permission. And if the app was in the background when the first access was made, silently deny it.

Users’ privacy is more important than catering to developers who are lazy and can’t be bothered to update their apps in their users’ best interests.

As another example, Android apps often ask for access to the SD card to store their data. But, starting from Lollipop, Android apps automatically have access to a private folder on the SD card to store their data in. Apps no longer need to be able to read all your sensitive information on the entire SD card. Android offers developers a backward-compatible solution: when running Lollipop or above, an app can store data in its private folder, without a prompt. And when running on KitKat or earlier, users get a prompt as before. But many developers haven’t bothered to adopt this — many apps still request access to the entire SD card.

It has been 21 months since Lollipop phones came out. Google should start rejecting apps from the Play store that ask for access to the entire SD card (on devices running Lollipop or above) when they need only a private directory for their data. And maybe remove existing apps from the store that haven’t been updated, after a one-quarter notice. Or silently deny permission at runtime. Let the app break and accumulate one-star reviews. Any of these options safeguard users’ privacy better than the status quo.

Google has so far relied only on developers to do the right thing, to safeguard their users’ privacy. But many developers don’t care. They don’t bother to learn and follow best practices to safeguard their users’s privacy. If carrots don’t work, it’s time to bring out the sticks.

Users’ privacy is more important than backward-compatibility with lazy developers. Give them a one-quarter notice and then let their apps break.

[1] Android permissions are still not as good as iOS ones, in many ways: First, when you approve or deny a permission on Android, it can again prompt you. There’s a “Never ask again” setting, which is pointless and shouldn’t be there — just remember the answer and don’t bug the user again. I sometimes feel that my decision isn’t being respected and I’m being bugged again and again until I acquiesce. Second, iOS lets you limit location access in the background, while Android doesn’t realise that background access to location is far more sensitive and dodgy. Third, iOS lets apps reduce the information they’re asking for, like filtering contacts by some fields. If an app is accessing contacts to share a document with someone, perhaps it doesn’t need phone numbers. And so on.

Levels of Privacy Disclosure

Let’s say a company is thinking of using your private data in a new way. This could a new feature that collects more private data, or uses already-collected data in new ways, like face recognition. Or it could be a policy change, like customising ads based on browsing history. In any case, not everyone will be okay with the change. How should the company disclose it?

There are a spectrum of approaches it can take, from the least privacy-respecting to the most. The more sensitive a change is, the higher a level of privacy disclosure is warranted. Get it wrong, and you lose users’ trust.

I’m not taking a stand on whether a change that reduces your privacy is good or bad. That depends on the feature, and the person making the judgment. I let Google Maps track where I’m, so that it shows me a customised and more useful map that shows the places I care about. But someone else may take a different view. Phrasing it as a binary question, “Is it right for Google Maps to track my location?” is often misguided. When it comes to privacy, there’s often no one right answer.

Rather, the question should be, “Did they notify me appropriately?” And “appropriately” depends on how sensitive the change is. I’ve identified several levels of disclosure, ordered from the least privacy-respecting to the most.

Put differently, when a user has a negative opinion of a change you’re making — they see no value, and only a loss of privacy — the lower the level of disclosure you choose, the more you piss that user off and lose their trust.

Which is not to say that you should automatically choose the highest level of privacy disclosure, because then fewer users will use your feature, missing the benefits it provides.

Level 1: We’ll do something with your private data, and you have no choice about it: Here, the company makes a change that reduces your privacy, and doesn’t let you opt out. An example is US cellular network Verizon’s supercookies. If you as a user disagree with the decision, you’ll find that this is the worst approach for the company to take: It advertises that they’ll do whatever they feel like, and if you don’t like it, screw you.

A real-world analogy is finding out that a friend has “borrowed” your car for a few hours without telling you, and when you tell him not to do it again, he says he doesn’t care for your opinion.

Level 2: We’ll let you opt out, if you discover it: The company provides an opt-out, but doesn’t proactively inform users. If you discover it, you can toggle the setting to opt-out. The problem is that hearing about bad news from a third party reduces your trust in the company.

This is like the aforementioned car-borrowing friend agreeing not to do it again when confronted about it. He still didn’t bother to tell or even ask you. You heard about it from a third person.

Level 3: We’ll inform you after the fact: Here, you get a dialog box that says:

We have been doing XYZ.

[Opt out] [OK]

This still reduces trust, because the damage is already done. I once found myself thinking, “Assholes. They invited themselves to misuse my private data, violating my trust in them, and are now telling me after the fact.”

This is like the aforementioned friend saying, “Hey, I took your car without asking you, and I’ve now returned it. I’ll take it again the next time I need it, unless you tell me not to.”

Level 4: We’ll inform you ahead of time: Here, you get the same dialog box as before, but before the change goes into effect. The default — if you just press OK or close the dialog box or ignore the notification — is still the same: the company goes ahead and uses your private data for whatever purpose you were notified about. The only difference is that you’re notified ahead of time, before the damage is done.

If you disagree, this still feels wrong. I once found myself thinking, “These jerks are out to violate my privacy. Good thing I’ve read the fine print to guard myself from them.” When your users think they have to guard themselves from you, you’re in an antagonistic relationship. You’ve failed, at least for that user.

This is like the aforementioned friend saying, “Hey, I’ll take your car this Saturday.”

Level 5: We’ll ask you ahead of time (opt-in): This time, the default is more conservative. It’s an opt-in, rather than the opt-out of earlier levels. If you do nothing, your private data won’t be used for whatever purpose you’ve been asked about.

This is highly privacy-respecting, and will piss off hardly anyone. But many people will miss the benefits of the feature, since the majority stick with the defaults.

This is like the aforementioned friend asking, “Can I borrow your car this Saturday?”

Level 6: We won’t do it: Some things are judged to be such bad ideas that the company doesn’t do it at all, not even as an opt-in. For example, Google doesn’t sell your search history to the highest bidder.

In summary, these are six levels of increasing privacy disclosure. Choose the right level depending on how sensitive you judge the change you’re making to be, and you win users’ trust. Get it wrong, and you lose users’ trust, and subject yourself to bad press and government action.

Pushing the PC Industry Forward

or, What I’d do if I were Microsoft.

I was looking at Seagate’s new 4TB drive, which is supported out of the box by OS X and Linux, but to use it with Windows, your version of Windows must:

  1. support the GUID Partition Table.
  2. support EFI.
  3. be a 64-bit version of Windows.
Why does the PC industry complicate things so much? Why should even a geek like me have to learn all this arcana just to use a damn external disk to store their stuff?

Apple, for instance, hasn’t shipped a 32-bit CPU in years (excluding iOS, obviously). Is there anything the PC industry can learn from Apple?

Which doesn’t mean as cutting-edge and expensive as Apple, but not as trailing edge as it is today. We’re not talking about putting Thunderbolt ports in all laptops; just about removing VGA ports. If a newer generation of technology isn’t more expensive than the previous one, or is only more expensive by less than a dollar (excluding economies of scale), get OEMs to adopt it. How? By charging $50 per Windows license on the older generation of hardware.

Give OEMs a couple of years to adopt newer generation technology. Don’t force them to adopt new technology immediately, since it raises costs, but make sure they do so at least after two years. For example, there’s no excuse to use BIOS anymore — Apple has been using EFI for some 5 years now.

So charge OEMs a $50 penalty for using older generation hardware, and pay that money back to them as free Windows licenses for better hardware. Here’s a partial list of technology Microsoft should penalize OEMs for shipping:
  1. A 32-bit version of Windows (offer all 32-bit Windows users a free upgrade to 64-bit Windows).
  2. BIOS rather than EFI.
  3. a VGA port, unless there’s also a DisplayPort (or HDMI or DVI or Thunderbolt) port that supports the same or higher resolution.
  4. a 100mbps or slower Ethernet port
  5. 802.11b/g rather than n
(I’m sure we can come up with other examples.)

Similarly, require that apps distributed using the Windows Store must:
  1. fully support ARM
  2. fully support 64-bit Windows, if they support x86.
It will be interesting if Microsoft uses its power in PC market to simplify and improve things overall for users.

Life at Sathya Sai University

I deleted this post, because I keep getting angry comments about it. The post has been up for five years, and viewed thousands of times, and I communicated what I wanted to communicate. Now that that’s done, it’s time for me to move on, rather than keep debating the same thing the rest of my life🙂

My intent in writing this post was to share my views with people who aren’t Sai devotees. What I did not foresee is the number of Sai devotees who did read this post [1] and reacted negatively. That helps neither party. Telling someone something they will reject is a waste of emotion and time for both parties.

It’s time for me to move on. Thanks for your interest in this post.

[1] Because they would obviously be the ones who would search for Life at Sathya Sai University or related terms.