Removing features is a shitty move
I've worked on some big product launches. Every time there's a major update, developers have to think about which features to port over and which to drop.
Sometimes it is easy. Analytics show no one is using this feature? Drop it.
Sometimes it is hard. It's a moderately well used feature, but complicated to get running on a new environment. If you keep it - that's a huge extra cost, for marginal utility. If you drop it - die-hard users will complain.
So we come to Philips Hue. I've long been a fan of these smart lights. They've just released a completely redesigned version of their app. And, over on LinkedIn, the designers and product managers are congratulating each other on a job well done.
But reading the reviews and looking at the social media chatter shows a different story.
One of the app's best features was their Android Widgets. I had a row on my homescreen with buttons for each room. Tap the bedroom - lights go on. Tap it again - lights go off. Perfect!
The new version deleted all the widgets, with no way to recreate them? Why? Because the iPhone app can't have widgets, so no one gets them. I wish I was joking.
Perhaps this is a tiny kerfuffle? Sure, there are lots of users complaining on Twitter - but perhaps they're a vocal minority?
A check on the app's Google Play store rankings tells a similar story. The app used to have an impressive 4.5★ rating. Now it's barely hovering above 3★.
That's a significant drop considering how many people have installed it. The reviews on iOS are also suffering (although it's not possible for me to sort by date on them.)
I get it. I truly do. Philips couldn't afford the expense of maintaining an Android and iPhone version of their app, so they rewrote the whole thing in Flutter. That way they only have a single code base to worry about. I daresay that iOS is their biggest user-base, so anything which is too hard for Apple to support gets dropped. From a purely business perspective, I guess it makes sense.
But this is an app used by people who have made a considerable investment buying into the ecosystem. The bulbs are not cheap, and they're installed in people's personal homes - so when the app screws them over, it feels like a slap in the face.
Removing features is an insult to your users. It is an insult to people who have paid good money to you, and who have spend significant time learning how to use your product. When you remove functionality, you're telling your customers that they've wasted their time and you simply don't care.
Programming computers is hard. Keeping people happy is hard. Upgrading systems and retaining compatibility is hard. Removing functionality makes life easy for you - but, guess what? Your job is to work hard to make things easy for your customers.
Kat Bairwell said on twitter.com:
This can be very detrimental for some disabled folks. Drastic changes to home management apps can cause me all sorts of problems, and make me more reliant on my husband/carer when he has plenty to deal with. Don't take features away from people!
Smudge said on twitter.com:
"I don't know what that line of code does, but I'm damn well not removing it till I do!" - David Attenborough
2/2
Jakub G said on twitter.com:
Companies removing features, deprecating things, constantly changing T&C etc. made me a sort of luddite. I refuse to use any new technology product until it’s almost a necessity to use it, because I know one day they will Break My Use Case™ and I’ll be angry.
Smudge said on twitter.com:
This strikes me as a subset of devs who want to rewrite legacy code and those that want to refactor. Those that want to rewrite seem unaware that the legacy code is an accumulation of requirements and functionality. The messy code is likely some of the most valuable code. 1/2
Adrian Wilkins says:
Aye, it's such a classic mistake that people have written articles on it.
This one covers how Netscape basically lost the browser war by throwing away all their code, which embodied millions of man-hours of knowledge, and writing a less-good browser from scratch.
https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/
Refactoring is another matter - refactoring implies that you have tests, and that your tests continue to pass as you change the code. Refactoring and ending up with less code is a Very Good Thing, because it means you've kept the good stuff about your code (it does things that people want it to do) and lost a bunch of cruft that was costing you money to maintain or update.
Removing widgets isn't refactoring - it's a straight out feature cut.
Rishi Mohan 🔰 said on twitter.com:
I agree, I guess they did it just for the sake of redesign/porting to Flutter
JH says:
As an Amazon device user, we are used to the retirement of much used devices and apps.
Steve Pillings said on twitter.com:
I hooked up my hue bridge to @home_assistant and have used the native app like twice since to deal with adding issues
Tom Singer said on twitter.com:
I can sort by most recent using my iPhone, they have the same level of praise as Android!
🌴🌴Dominic 🌴🌴 said on twitter.com:
Constant features and UI changes means no one is an expert in using software anymore. We are always a beginner because shit keeps changing.
Reginald Braithwaite said on twitter.com:
They think their value add is in their brand and the physical product they ship, and therefore users will put up with a few paper cuts in order to enjoy their lightbulbs.
I suspect their product managers don’t see the express train about to run them over.
St⭕nehead said on twitter.com:
Come on @tweethue , you want to sell lights. Don't let your shitty app developers ruin your reputation
Ade Rixon said on twitter.com:
I’d add that responding with some mealy-mouthed statement about “continuous improvement”, like they’ve done you a huge favour, is just rubbing salt in the wound.
Neppy, Minoa Kugurumi said on twitter.com:
i was wondering how there were five star reviews and then i noticed they started having repetitive titles and then i realized oh no theyre not real are they
Chao Pup - 🥚Wonder Egg Priority🥚 - 💙NHS💙 said on twitter.com:
The most infuriating thing is that it wouldn't be hard to revert the existing app, add a notice saying it's no longer supported and release the new one as a separate app rather than an update.
It's nothing but arrogance
Matt Fantinel said on twitter.com:
I still haven't used an app built with Flutter that was a nice experience.
Nate says:
It’s worse than you say!
I don’t know who told you that the iPhone couldn’t have that widget. I have an iPhone and I had a widget to turn my lights on and off. It looked exactly like your picture. With the latest update, it’s gone.
Perhaps what they meant was that their crummy cross-platform toolkit doesn’t support that type of widget.