An IoT story


A couple years ago, I had to have a difficult conversation with someone, all because of an Internet of Things device.

But first, let me back up.

Soon after the advent of WiFi-connected bathroom scales, I bought one. It was a little tricky to setup, but once it was on my network, it dutifully uploaded my morning weight to the cloud. I’ve used it for years to track my moving-average weight and keep tabs on my health. It continues to function and has worked flawlessly for nearly a decade. Batteries last over a year between changes!

The company I bought it from was eventually acquired by Nokia, and their old Flash graphs of all my data stopped working and their API disappeared and then one day I was forced to download a new Nokia health iPhone app especially for it.

The app had a new UI and once I got my bearings, I noticed a tab with a red notification, marked “unknown” with over 100 data points over the course of several years. As a bit of background: the scale works by guessing who is who based on differing weights, and lets you name those people and the people in my house all had different weights when I bought it, making it easy to track us.

But there was an unknown person.

The unknown tab was interesting since the data started at a different number than any of us and then steadily fell. A lot. And there was years of data. At first, I thought it had to be data from another account on Nokia’s servers leaking into my profile. Who else lives in my house and could do this for years? I logged into the website to double check the logs.

I couldn’t think of anyone it could be. After a couple days of thinking it over, I finally noticed an obvious pattern in the data. It was only one recording a week, for years. Always around noon. Always on the same day.

Oh shit. I know who it was. It was our housecleaner.

When my spouse was pregnant with our first child, she wanted to play it safe and stay away from harsh cleaning chemicals, so we asked our neighbors and ended up hiring their house cleaner to scrub our bathrooms and spruce up our bedrooms once a week. It was a nice lifestyle splurge to pay for this service and it took a few chores off both our plates. Our housecleaner is a really nice person, and we talk regularly about how each of our families are doing, but usually we share small talk for a couple minutes before we both go back to our own work.

It’s totally natural that she jumped on the bathroom scale when cleaning the room to note her weight to herself, and there was no way for her to know it was connected wirelessly to the internet sharing her data on my account. I hated that I had years of her data without her knowledge.

I dreaded this entire situation, since it’s personal and invasive stuff. It reminds me of the time I got a house alarm installed, then promptly took off for a vacation and left the keys to a friend to house sit. When I got back, the alarm company’s iPhone app dutifully tracked every time my friend walked into and out of my house, along with recording when he went to sleep and when he woke up (he would enable it when asleep, turn it off when he woke up).

It’s extremely easy to take logs of seemingly innocuous data and paint an intrusive picture of someone’s personal life and habits, and it was no fun to have years of (very personal) data on someone without their knowledge. People are protective about their personal data and it’s natural to want to keep that stuff confidential. But my stupid bathroom scale and its stupid iPhone app removed any sense of privacy.

I promised myself that I’d tell her the next time I saw her. I wanted to apologize, explain how it happened, how it was a big accident, and that it was information I wished I didn’t have.

How do you even start this kind of conversation? I role-played different scenarios and mulled it over in my head for days.

The next week when our house cleaner arrived to clean our bathrooms, I took her aside and explained that my bathroom scale was connected to the internet and tracking everyone that steps on it. I learned through a software update that it was tracking her too for years, and I was deeply sorry for that.

To my surprise, she was kind of impressed a bathroom scale could even do that, and was fine that I saw her data. She had lost weight in a long-term program that forced her to share her weight every week with a public group, so it was par for the course.

It all worked out in the end, but I’ll never forget how much I dreaded having that conversation.

Why I continue to endure the internet of things

I don’t mind that my love of internet-connected gadgets makes me a punchline on a podcast but just to give you an idea of what it’s like, here’s my Apple Home app currently showing a bunch of failed connections because my Wemo Bridge died for no reason last week. This also means none of these lights are automatically turning on or off any more.

As I was resetting, restoring, and setting all of the lights up again, it was natural to pause for a moment to think about why I keep doing this.


I think this all goes back to the early 1980s. My brother got one of those Radio Shack 150-in-1 electronic kits and we used it to build a variety of little machines. Once, when we figured out how the light sensor could be wired to the siren, we devised a trick.

We emptied a dresser drawer of clothing, put the kit rigged to go off inside it, and waited in the next room for our mom to put away some clean laundry in the drawer. She eventually opened the drawer, the light sensor hit, and the siren automatically wailed. I remember socks were everywhere around the room and my mom was yelling at us that it wasn’t funny.

Ever since that day, I’ve wanted computers to do all the pesky annoying tasks in my life. After the Radioshack kit, I soon graduated to putting automatic timers on lamps, but those were simple and batteries eventually wore out.

In the late 1990s, I got into x10, the new standard for lamps that let them talk to computers over electrical wires, and at one point I had an apartment in LA with a variety of light bulbs and switches controlled by my PC. Yet still, the systems weren’t very smart and mine couldn’t distinguish weekends from weekdays and I would frequently find myself in a pitch black apartment at exactly 11:00PM whether I was ready to go to sleep or not.

At some point in the early 2000s, the x10 standard grew up and a few more standards got popular, and at one point I had timers on lights around the house that were a bit smarter. I could set lights to turn on at sunset and turn off at a certain time, but I could also add +/- 15min of “drift” to automatically randomize the times things turned off and on so they didn’t look too predictable to outsiders.

A few years ago, I decided to dip back into this when internet-connected devices started appearing, and when Apple released Homekit, it kind of sent everything into overdrive for me.

Right now, I have a few hue bulbs, a bunch of Wemo wall switches, light switches, and room sensors all around the house, a garage door that connects to my wifi, and a couple August door locks. With this mix of devices and the Apple Home app, I have basic stuff like front yard and backyard lights that come on at sunset and go off later in the evening. I can daisy-chain things together to get the lights in the garage to turn on when someone opens the garage door for five minutes, but only at night. I can also do things like turn on my office light when I walk in the room and don’t auto-turn it off if I’m still inside it.

And yet.

This stuff has historically been super buggy. Things will work, then just up and die for no reason a week later. A sensor will lose the wifi connection briefly and never come back online. Things are generally improving but I feel like x10 in the early 2000s was more reliable than what we have today.

For about six months, everything worked great in Homekit. And after a rocky start, my wifi garage door actually became reliable for a good solid period of time. Then iOS 12 came out. And then Wemo updated the firmware on all their devices. Then one of my mesh-network wifi points stopped seeing the others. And for the last two months, things have randomly worked about half the time, and failed spectacularly.

I keep plugging away at this stuff, and I don’t think it’s outlandish to expect it to work, and work forever once you set things up. I think we can get there, but with our mish-mash of standards and hodge-podge devices and wifi, it’s not a smooth or predictable area of technology.

I’m still convinced technology can improve people’s lives and help everyone out, by letting us set up recipes and schedules that are truly reliable enough to be set-it-and-forget-it. It’s not asking too much to think this tech can free us up to spend our time and energy on more important things than remembering to turn on the porch light every evening.

I still think we can get there, no matter how rocky the road currently seems. At least I hope we can. I’ll keep trying, no matter how many times it fails on me.

We like sports

Ever since the new basketball season began, I’ve been considering getting a NBA all-access pass to see all the Lakers games with LeBron at the helm. For the first couple weeks of the season, almost every good game was on TV and it wasn’t too hard to catch it all. But a couple days ago I finally made the leap and bought a pass.

Yesterday, I watched three different games from about 5pm to about 10pm, and it was glorious.

The apps are pretty impressive, you can choose any game in progress, listen to audio only from either team’s announcers, and watch video on your phone or cast it to a nearby TV. My Apple Watch even piped up the first time I launched the NBA app to show me the day’s list of scores, which was a nice surprise.

I’m a little worried about the time commitment of having several games per night for the next 8 months readily available, but I am going to try and catch most Lakers, Warriors, and Trailblazer games (and Celtics and 76ers and OKC, and and and) this season.

Lock your Instagram down

Today I learned a friend’s phone was hacked when someone entered a cell phone store and impersonated him enough to talk their way into getting a new SIM card to replace his own. They initiated a password recovery at Instagram which used a two-factor code delivered by SMS, which they got thanks to the new SIM. Once in his account, they changed the password and username so they could take his original username. By the time he was notified, there was no way to undo it (they changed his account password and had his phone number).

All that work just to steal someone’s Instagram account username.

If you have a short, single-word username at Instagram, now is a great time to turn off SMS codes for 2FA logins and switch it to a dedicated app code generator instead. You’ll have to add it to your account successfully before you can turn off SMS, but this small layer of security is hopefully enough to prevent anyone from hitting your account.

A great new podcast with a twist

The new podcast Wireframe is wonderful, and not just because Khoi Vinh is a great host and thoughtful designer, but what makes it remarkable is that it feels like the first sponsored podcast I’ve wanted to hear.

Gimlet’s creative studio—and a handful of other similar podcasting companies—have been partnering with brands for the past couple of years making podcasts by the sponsors themselves about their areas of expertise. So instead of say, Casper doing mattress ads on every other podcast, maybe Casper does a podcast on how to sleep better or improve your general wellness. Sounds good, right? Welp, usually they’re not that compelling.

The problem to date is they’re too thirsty. Simply put: sponsored podcasts sound like sponsored podcasts. I’ve heard a friend say the Blue Apron one was a legitimately good podcast on its own, but I haven’t heard it because the dozen or so others I’ve tried or had thrust into my feed from other shows I like tend to follow a pattern. They’re over the top advertising vehicles for their sponsors and the “meat” of the podcasts themselves aren’t that good. They put so much effort into the ad reads and not enough into the stories that make them up.

The McDonalds podcast on the development of their Schezwan sauce was a good example. It’s a newsworthy short item that could have gone in lots of ways, but ultimately, the company was so guarded and careful in what they said that it barely scratched the surface of the whole interesting story of the internet fandom of a cartoon colliding with social media and real-life stores. Instead, it was a multi-episode ad for some too-sweet sauce on forgettable chicken nuggets.

But not Wireframe! I imagine maybe it’s because Khoi is a thoughtful designer with a lot of opinions and a lot of things to say (if you haven’t caught his decade-plus of blogging, do check him out) and if Adobe wanted a podcast, they happened to pick the exact right person for it.

Whatever the case, I think it’s noteworthy and worth mentioning that it’s possible to make a sponsored podcast that doesn’t sound like one. Wireframe is a design podcast I’ve always wanted to hear and I’m impressed with what Gimlet and Adobe have created. Other companies should take note.

(also, the emoji episode embedded above is a perfect distillation of the past 20 years of emoji history and sums up a lot of issues around it in a tight 20 minutes—short compelling podcasts are really hard to do!)