This is an excellent question. We'd likely find that there is an enormous disconnect between high IQ, well educated engineers and high emotional and social intelligence.
The perennial excuses; "it's just a job" , "everybody's doing it", "if I didn't build <monstrosity x> then someone else would" ... these have grown tiresome and weak. Everybody now knows these are stupid and dangerous things we are doing.
Is there a kind of fatalistic malice at work? How do people who work on this kind of thing manage the dissonance?
I also have several gizmos, including lightbulbs, which use WiFi. To my chagrin, I've had internet outages which meant that I can't turn on a given light until the Internet comes back. I put up with it, because telling my computer to change the lights is too much fun, but when the internet goes out, I'm embarrassed both personally and professionally.
Somehow we've failed as a profession to provide people with a home network which continues to function as long as the router has power, and that sucks.
This already existed for lightbulbs in the 70's: https://en.wikipedia.org/wiki/X10_(industry_standard)
Wikipedia says the computer interface was 80's, but if you managed to have a computer in the seventies, you probably knew enough electronics to homebrew something.
That's worse. You see how that's worse, right?
I'm not sure that people (in general) want these things. It seems like product managers adding stuff to justify their existence and people buying what they find on the shelf. You get an internet connected oven because you have no choice anymore. (Hyperbole, but the non-internet choices are narrowing.)
Maybe people want to change the color of their lightbulb (I'm guessing it gets old quick), but I suspect they're not asking for it to be on the internet.
And I don't care as much about whether or not the bulb uses IP to reach my phone, but why should my outside connection going down ever matter? As long as the router has power, the internal network should continue to function. It's a shame is what it is. I figure I could put in the sweat to make it "work on my machine" but that doesn't solve Joe Normal's problem, and it doesn't sound like a fun hobby to me either.
Let's assume we have the following data: the user's email address, some sort of smartphone identifying value, their ip address, and their brushing habits. That's not very much; who would want that?
Well, we know this is a person who will drop $400 on a toothbrush. They like shiny things, they have at least a middle-class disposable income, and they don't mind the headaches of internet-connected devices. Let's sell this information to big-box electronics retailers and other smart appliance manufacturers. Maybe this person would like to buy a $500 toaster too, or espresso machine, or soda machine, or bread machine, or microwave.
They care a little bit about oral hygiene. Have they seen a dentist lately? If they have $400 for a toothbrush, then they probably have better than average dental insurance. Let's also sell their information to the larger dental offices in their area (as determined by IP).
Do they need mouthwash? Let's pop up an ad for a subscription mouthwash service. How about floss? Would they perhaps also appreciate a razor made out of aerospace titanium?
Oh, but wait ... their IP address just changed, and they are brushing their teeth 3 hours later than typical. They're traveling! They're traveling and they took their expensive toothbrush with them. This opens up an entirely new set of possibilities. Travel insurance? A credit card with travel incentives? New luggage? How about offers for travel upgrades? There are hundreds of companies paying for the opportunity to contact pre-qualified customers that travel with disposable income.
Oh, wait ... they just bought a set of lightbulbs that we also make...
These devices almost always have wifi since the chips usually have both anyway. And reaching out to a fixed wifi is so much more reliable.
There is no need to copy that data to a phone immediately. It can be put off until it's convenient.
The user expects the data on the app to always be in sync. If they check it outside of bluetooth range and see days of data is missing, it'll look broken.
The right answer here is to show them a "last synced" timestamp and a sync button.
Really? Why not?