Psychic Litter: Chrome and phone menu trees

In 1995, writer David Joiner coined a phrase that I think has not received nearly enough attention: “psychic litter.” In an issue of Wired magazine, Joiner defines it this way:

“Psychic Litter” is a term I coined to mean acts of immorality so small as to be below the level of consciousness. One example is wasting small amounts of the time of many people. Bruce Tognazzini, the user interface guru, once opined that by creating a product that wastes a half hour of time for each of 4 million users, you waste 900 work-years of human productivity. That works out to about 12 complete lives.

It seems appropriate that his 1995 example involved user interfaces, as the most glaring examples of psychic litter I’ve personally ever encountered invariably come from tech firms.

Consider this: Last night, I spent some hours combing through my hard drive with a fine-toothed comb in search of some missing gigabytes that, by all rights, ought to have been there. Imagine my surprise when I peeked into my Applications folder and saw this:

Yes, that’s Chrome, the Google Web browser. Yes, it is twenty gigabytes(!) in size. No, that’s not a disk directory error.

Chrome updates itself more or less constantly, all completely silently and in the background, without user notification. That’s fine, but it turns out that every time it updates itself, Chrome (the Mac version, anyway) keeps the old version stashed within itself.

On the Mac, applications are actually “bundles,” special directories that contain the executable code plus all its required libraries. That’s how the Mac has made itself immune to Windows DLL Hell and Linux dependency hell; apps are self-contained.

You can look inside an application bundle by right-clicking it and choosing Show Package Contents from the popup menu.

When you do that on Chrome, you will see a folder called Versions. This folder contains a complete copy of every single version of Chrome that has ever been updated on that computer.

Google Chrome is about 200 MB in size. When it updates, it eats another 200 MB of hard disk space. When it updates again, there’s another 200 MB gone. And another. And another. And another.

In my case, I’d been using Chrome since 2012, and those updates had swallowed up 20 GB of space.

This shows a profound contempt and disregard for the user’s hard drive space.

Right now, by default, a brand-new Macbook comes with 256 GB of Flash storage; an 11-inch Macbook Air, 128 GB. That means my copy of Chrome would devour 15% of a Macbook Air’s standard storage.

By way of comparison, the current Mac operating system takes about 8 GB of hard drive space. That means my copy of Chrome was more than twice the size of my operating system on disk.

The simplest solution is to periodically delete Chrome and download it again, which means you’re swapping prodigious waste of your hard disk space for slightly less prodigious waste of bandwidth. The real solution is for Silicon Valley to become more conscious of the impact of their behavior on their users.

It’s not just Silicon Valley, of course. Yesterday, I had to call Services Canada about getting a social insurance number. The phone number for Services Canada took me to a voice menu tree that had six minutes of talking before the menu options were presented, and did not permit me to skip that six minutes by pressing the right number even though I knew what it was. Worse, hitting the key to repeat the menu choices caused the system to recite all six minutes of recording before offering the menu prompts again.

The design of voice menu systems is a frequent source of psychic litter. The people who record these systems rarely think about how they will be used, and often show contempt for the time of those who use them.

Sometimes, this is deliberate. Cell phone carriers have made voicemail messages longer to increase the the number of minutes of airtime used. More often, it’s careless. It stems from indifference to other people and lack of concern about the effects of our actions.

I would like to propose a radical idea: Let us all, every day, consider the implications of all our actions on other people, even the actions that we normally don’t think about. We all often find ourselves doing things that touch large numbers of other people. Even small acts of indifference, when multiplied many times, add up. We can all seek to be more considerate of other people in small ways as well as large.

“But I only want to vote for someone who represents ME!”

I am old enough to remember Richard Nixon.

I was in first grade during the 1972 campaign. My class had a mock election, in which I cast my “vote” for Nixon. Why? I have no idea. I was six; I liked his name better than that other guy, George Whoeverthehellitwas.

I remember the aftermath—Watergate, the resignation, the whole sordid mess. At the time, I recall thinking that this whole business of politics was a bit of shambles, and I’d probably never see anything worse. Ah, the optimism of youth.

Then, of course, came Bush/Gore, with the confusing ballots and the hanging chad and the election ultimately decided by the Supreme Court, some of whose members Bush’s father had appointed. I remember Nader thinking he was all that, and Nader supporters thinking he was all that, and the peculiar brand of ardent zeal that has its roots so deep in the American psyche—the “take no prisoners, brook no compromise” approach to elections that usually ends up in the worst of two evils taking office.

I see that same cycle playing out again this election, which has unquestionably brought yet a new low to the American civic institution of voting. And I see the same arguments being put forth by a fresh new crop of take-no-prisoners, brook-no-compromise idealists absolutely convinced their candidate was the Chosen One, even though those of us who’ve been around longer knew he was unlikely to win. (Sorry, Bernie.)

And I see now, as I did with Nader supporters, a lot of folks saying “if I can’t have my candidate, why should I vote for anyone? I don’t want to vote for the lesser of two evils, I want to vote for someone who really represents me!

Which sounds reasonable right up until the moment you realize it’s not. Because, you see, the world is not all about you.

One of the hardest lessons to learn in life is this: Other people are real. The world isn’t the Story of You. Yes, I’m sure you’re amazing and all, but other people are not supporting characters in the movie called You: The Reality.

There are three hundred million people, give or take, living in the US. Many of them (indeed, most of them) live lives different from yours. They face challenges different from yours, have priorities that are different from yours, and want things that are different from the things you want.

They deserve to be heard by the government that we live under, just like you.

A person who says “I want a candidate who represents all of my interests” is a person who’s saying “fuck all those three hundred million other people; I am the only person who should count.” And it doesn’t—it can’t—work that way.

A political candidate is not all you, all the time. In any reasonable democratic system, you will always be voting for a candidate who does not perfectly represent you, because it isn’t all about you. A candidate must represent everyone, not just you, and a lot of people—real, legitimate people—are not like you. “Choosing the lesser of two evils” is just a self-focused way of saying “choosing a candidate who is not a clone of me, but who will, I think, better represent me than the other person will.”

This is a huge problem for progressives, who rightly are horrified when they see candidates attempting to disenfranchise broad swaths of the population (gays and lesbians, say, or religious minorities, or women) but then in the same breath turn around and say “I refuse to vote for someone who I don’t 100% agree with 100% of the time”—not recognizing that if the government were made up of people who 100% agreed with you 100% of the time, it would disenfranchise a whole lot of folks who are not like you.

Maybe not as directly as some politicians disenfranchise gays and lesbians or minorities, but make no mistake, it would still disenfranchise them just the same.

If a pluralistic society is to function, it must do so by recognizing that people have legitimate differences, and seeking to make sure that the voice of the government is not solely the voice of one demographic, or one person. This world is not the Truman Show, and you are not the starring character.

In this election, there has been no candidate who I agree with on all the issues all the time. And you know what? I’m okay with that. My job is to select a candidate who I think will best create the society I want to live in, while still recognizing that other people have to live in it too.

In the 2000 election, a lot of folks said there was no difference between Bush and Gore. That turned out, on hindsight, to be laughably, comedically wrong…and we’re still paying the price. (Would Gore have led us into an invasion of Iraq post-9/11?)

I see that same thing being spouted in this election. There’s no difference, I hear people say with a straight face, between Hillary Clinton and Donald Trump. And I boggle.

Or at least I did, until I realized what it actually means: “there is no difference between Hillary and Trump” actually means “I don’t agree with Hillary and I don’t agree with Trump, so I mentally place them both in the same cubbyhole.” Which is, I think, a bit like saying “I don’t eat eggplant and I don’t eat arsenic, so they must be the same thing.”

That’s more than a little disingenuous. I don’t like eggplant and I don’t like arsenic, but one of them is a whole lot worse for me than the other. Given the choice of eating one or the other, it’d be pretty stupid to claim I don’t see a difference between them.

We live in a pluralistic society. One of the current candidates is okay with that; one is not. I understand that a lot of folks are disappointed that their guy didn’t win. I get it. That sucks. Of the choice ahead, though, one person better represents the values of a pluralistic society than another. And when you say “it’s my guy or bust,” you’re basically saying that you don’t care for a pluralistic society; you want things all your way or no way at all. There is a candidate who represents that view, but you might not like living in the society that results from his election.

Call to the Interwebs: Looking for experts!

Most of the folks reading my blog are probably familiar with the high tech sex toy my partner Eve and I are working on. Essentially, we’re making a strap-on covered with sensors, that uses direct neural stimulation to allow the wearer to feel touch and pressure on the strap-on.

We’ve built several prototypes that validate the basic idea, and we’re excited to move into the next phase of development.

To that end, we need your help! We’re looking for two things:

1. A person skilled with molding silicone who is willing to work with us to do one-off and two-off custom castings that integrate sensors, electrodes, and electronics into the casting.

This person will know a great deal about custom-molding silicone and be willing to work with us with some fairly exotic requirements, like molding silicone with electrodes embedded in the surface.

2. A skilled electronics person with knowledge of RF analog electronics. I know digital electronics, and so far, the prototypes we’ve built have used electronics and firmware I’ve written. But I’m a bit rubbish with the electronics stuff. Specifically, what we need is someone who can design circuitry that can be controlled by an embedded microcontroller and can modulate the amplitude of an analog signal based on input from pressure sensors. Imagine a signal generator that produces a signal something like this:

What we’re looking for is someone who can design a circuit that will modulate the amplitude of this signal in proportion to the input from pressure sensors…but, naturally, the human body being what it is, the correspondence is logarithmic, not linear (hence a programmable microcontroller doing the work fo figuring out how strong the signal needs to be).

We do have a budget for accomplishing these tasks. It’s not a huge budget, mind you; we’re a small startup, and that’s how it goes with small startups.

If you are interested or know anyone who might be, please let me know! You can reach me at franklin (at) tacitpleasures (dot) com.

Want to keep up with developments? Here’s a handy list of blog posts about it:
First post
Update 1
Update 2
Update 3
Update 4
Update 5
Update 6
Update 7
Update 8

Never do this: How self-published erotica authors harm their sales

A while ago, I wrote about a new project I’ve launched, an uncensored erotica search tool for Amazon. Briefly, a couple years back Amazon started removing listings for some self-published erotica from the search results on their Web site, especially for non-traditional erotica that deals with subjects like BDSM. I discovered they do not, however, censor search results made using their API, so I built a tool that uses the Amazon API to do searches.

The site I built also keeps a database of Amazon erotica, all neatly arranged by category, so that visitors can either search Amazon directly or browse erotica by category.

That’s when I discovered a problem.

A lot of books listed in the database, probably about 15% of them, go to 404 pages on Amazon when you try to follow the link.

“Huh,” I thought, “that’s weird.” The books are still there, but the links don’t work.

I looked further and discovered the ASIN—the Amazon Standard Identification Number that Amazon assigns to all Kindle books—had changed in the links that were broken. An Amazon link goes to a specific ASIN, so if a book’s ASIN changes, the old link breaks and the book lives at a new link on Amazon.

Needless to say, this is bad. If you are an author and your book’s ASIN changes, every link that anyone has ever posted to your book on Amazon breaks.

This happened to Thorntree Press books when we moved to a new distributor. Our new distributor removed all the old listings for our books from Amazon and re-listed them, causing them to live at new ASINs and breaking the old links.

I looked closer at one of the broken links and discovered something interesting. The book was still on Amazon, but with a new listing date. The new listing date was after the date the book had been added to Red Lit Search:

If you have self-published a book on Amazon and you wish to make changes to the book, you can upload a new file in your KDP Dashboard and you will not change your ASIN.

It is very important to make changes to your self-published book this way.

It seems that a lot of self-published authors will make changes to their books by deleting the old listing and re-creating a new listing with the changed file. Do not do this. You will break every existing link to your book, which will hurt your sales.

Instead, you can use the KDP Dashboard to edit your book and upload a new content file without breaking existing links. To do this:

1. Log on to your KDP Select Dashboard.

2. Find your book. There is a button labeled “…” to the right of your book’s listing. Click it and choose Edit Details from the popup menu. It looks like this:

3. In the book’s Details page, scroll down to the Upload Your Book File section. Click the Browse button and upload the new contents for your book.

Your ASIN is how the world locates your book. On Amazon’s site, your book’s listing is attached to the ASIN. If your ASIN changes, this will break any links to your book; and if your book is self-published erotica, there is a chance that it will not turn up in searches on Amazon’s Web site, now or in the future. That means that links to your book are the only way people will find it.

If you self-publish on Amazon, it is very important to do everything in your power to keep your book’s ASIN from changing. I can not stress this enough! Do not make changes to your book by de-listing and re-listing it. This will make your book harder to find.

MacKeeper: The Gift that Keeps On Giving

Stop me if you’ve heard this one before:

A shady, disreputable company makes a dodgy bit of software they claim will protect a computer from malware, but that actually does nothing (at best) or harms your computer (at worst). They sell this software by creating fake Web sites that throw up phony “virus warnings” to visitors pushing the dodgy software, then use a number of devious and underhanded tricks to steer traffic to the fake antivirus pages. They get caught, they find themselves on the receiving end of a class-action lawsuit, and they sell the software to a new company, which promises to clean up its act but which ends up doing exactly the same thing.

If you’re a Mac user, you probably recognize this story. It’s the story of MacKeeper, a bogus bit of software that bills itself as a security and general cleanup app.

MacKeeper is a bit of software with a long and ignoble history. It was originally written by a company called Zeobit, which was so aggressive in marketing the software by shady means that it got hammered with a $2 million settlement in a class action lawsuit. Business Insider magazine has recommended that users stay away from it.

In 2013, a company called Kromtech bought MacKeeper from Zeobit. Kromtech claims to be a German company, but it’s incorporated in the Virgin Islands and all its owners are in the Ukraine. And Kromtech is continuing the practice of pushing the software with phony antivirus sites and fake claims.

The scam works like this:

Booby-trapped ads on legitimate Web sites and redirectors placed on hacked Web sites steer users to fake antivirus pages. These antivirus pages, which live at URLs that look like official Apple URLs, pop up phony warnings of non-existent viruses.

These Web sites attempt to prevent you from leaving, and pop up alert box after alert box warning of a completely phony virus.

When you click on the button to do a “virus scan,” you are shown–surprise!–a report that says your system is infected.

The supposed “tapsnake virus” that this warning talks about is bogus. Tapsnake does not exist; it is a scareware scam used to frighten naive computer and smartphone users into thinking they are infected with a virus.

And, naturally, when you click the “Remove Virus Now” button, you’re taken to…wait for it…

Meet the new MacKeeper owners, same as the old MacKeeper owners.

I’ve seen a considerable uptick in phony antivirus sites trying to con people into buying MacKeeper lately, particularly in the last six weeks.

There is no Tapsnake virus, and your Mac is not infected. It’s a con, designed to sell you a worthless piece of software.

Stay safe out there in cyberspace.

A trip down memory lane

I recently spent some time digging through a huge cache of old CDs and hard drives I found in a drawer containing files that date back to the early 90s, and one of the things I found was copies of the old xeromag Web site from 1998.

Man, it was appallingly bad. Dear god.

In April of 1998, the home page of looked like this:

Contrast that with how it looks right now:

I look at the old design and cringe.

I also found some old .ARC files that contain letters and other word processing files from as long ago as 1984(!), and source code for TRS-80 software I wrote in 1979(!!). I can’t wait to see what’s in there, but first I’ll need to find software that can uncompress .ARC archives.