“Whatever your life’s work is, do it well. A man should do his job so well that the living, the dead, and the unborn could do it no better.”
—Martin Luther King, Jr.
This past weekend, my puppy was being unbearably cute again. My boyfriend had his iPhone handy, and took pictures. I wanted the pictures on my phone.
The conversation went something like this:
“I can iMessage them to you.”
“No dice, Android phones don’t receive iMessages. Can you send it to me in Google Hangouts?”
“Nope, I don’t have that.”
“OK, text them to me. But not my Google Voice number, that can’t receive picture messages. Use my real number.”
“Wait, which one is your real number?”
“Not the one you use when you want to call me, the other one.”
Am I the only one that is horrified by this? We wanted to send a fucking picture between two devices connected to the same local network. What’s worse is I’m afraid the situation will be the exact same when the next generation comes along.
We can do better.
Good Is Not Great
There has been a recent revolution in software that “great is the enemy of good” and its accompanying admonition to “ship now fix later”. These phrases, which started off as balms for a wound—overly long development cycles, software updates being spaced out by years—have started a festering rot in our industry. The agile movement has been corrupted from its original, pure goal—make sure you’re building something people want before you try to polish it—to a tainted, twisted derivation—don’t worry about making something great, just make something passable and change it really frequently.
Conventional wisdom says that if you aren’t ashamed of your first iteration of your product, you waited too long to ship. I’m going to add a caveat: if you’re ashamed of your first iteration of your product as you’re shipping it, you aren’t ready to ship. If you are not shipping something you’re proud of, you should not be shipping anything at all. The world has enough shitty products, we don’t need yours thrown on top just so you can smile and say “I shipped something!”.
Do not hem and haw when it comes time to ship, nervous about the outcome. Ship, and ship with confidence. But God dammit, ship something worth shipping. A half-assed product is worse than no product at all.
If you can’t use your product and think “this is great, nothing about this really frustrates me”, do not ship that product. If, months later, you can use that same product and think the same thing about it, please stop writing software, because you’re not learning or growing anymore.
The Business Serves The Product
This is, I know, horrible business advice. The amount of time and effort it takes to make your product great is not proportionate to the amount of revenue it will earn you. But that is not the primary purpose of technology. The primary purpose is to make our lives better. When your product does that and only when your product does that is it acceptable for you to profit off that product. And only then if your method of profiting off that product does not reduce your product from its status as “great”.
The major failing of most tech products is that technology has become big business. Products have an unfortunate tendency to serve the business’ needs, first and foremost.
This is a bad thing.
This is a bad thing because technology is not supposed to be big business. It’s not supposed to be about brands and lock-in and revenue. It’s supposed to be our hope for the future.
Alone among all the animals on Earth, we can build our own future. In that, we are unique. And look what we’re doing with that gift. Are you proud of what we have built?
We can do better.
A great analogue to the mobile messaging landscape of today would be email. Imagine, when email was created, it was created by an operating system manufacturer. Apple or Microsoft made it. Maybe IBM made it. And the point of email became to provide only as much utility as necessary to sell IBM computers or Windows licenses or Apple computers. Hands up, who thinks we’d still be using email today?
And yet, that’s what we’re doing with mobile messaging.
Of course, mobile messaging isn’t the only pooch we’re screwing, it’s just the most readily-available example of how Average People are being impacted by our head-in-ass syndrome. We’re doing the same thing with social networks. We’re doing the same thing with mobile apps. We’re doing the same thing with almost every single new technology that is created today.
Let’s knock it off. Let’s stop making products that lock users into a silo, that make it impossible to do things a user would obviously want to do in pursuit of higher revenue or better strategic position. Let’s be better.
We can do better.