14 ms·
>In 2016, when I got a new phone, the default setting changed and I would just wake up to my device stating, "Tinder has been updated. Deal with it". I turned
by jimmies 9y ago
>In 2016, when I got a new phone, the default setting changed and I would just wake up to my device stating, "Tinder has been updated. Deal with it".
I turned off auto-updates on my phone.
So this happened. Last year or so I traveled to SF and tried to call an Uber home after a long day of walking around. My phone had 5% battery left. I opened the app and there it was... The maps and everything showed up, but then it blocked the UI with the message: "You haven't updated the app in a month. Uber won't work if you don't update it right now." It really rustled my jimmies. In the next 15 minutes, 3 of us (2 are foreigners with no cell connection) had to stand in the freezing rain when the damn thing was updating with my 2.5G connection. When the Uber arrived, I had 1% left and not long after I got in the car, my phone shut down. I was so worried the phone would die before the car arrived.
The other day I talked about how backward-compatible Google Maps is and unfortunately it made the news on Slashdot. Some people were like, oh yeah, Windows is backward compatible with 30 years old apps. Are you a millennial/a shill for praising them for supporting their API for 10 years? Yeah, keep talking about Windows, until you fucking use some of the apps nowadays that wouldn't work when you haven't updated them in a month.
- eksemplar 9y agoI've uninstalled around 10 free to play games and apps that Windows 10 installed without asking in the past 6 months, so I'm not sure those slashdot people should be using windows as a good example of having control either despite that 30 years of backward compatibility. :)
- cptskippy 9y agoTechnically they're not installed, those are just shortcuts to install them. The issue isn't really one of backward compatibility but software design and function. As far as I know, Android maintains API compatibility all the way back to API v1. A simple app, like the calculator, written in API v1 should run on the latest Oreo device. An app requires a remote service to function must maintain compatibility with that service to function. The trouble is compatibility updates and feature updates aren't delivered separately. So you can't avoid new features if a service compatibility prevents your old version of the app from functioning.
- eksemplar 9y agoThat may be true, but I don't really want my operation system to auto install 138mb shortcuts for something I'd never want.
- dmix 9y ago> I was so worried the phone would die before the car arrived. I've had my phone die well before the Uber arrived and it wasn't a problem, it showed up at the place I requested. Once the ride is initiated the drivers phone becomes the primary client. It seems quite flexible with devices going offline (as it should, mobile networks are unreliable). > use some of the apps nowadays that wouldn't work when you haven't updated them for a month. This is a worrying trend but I don't think it's really that bad yet. My primary phone died recently (famous Nexus 6p bootloop) and I used my old Samsung S3 with stock Android circa 2014 and I was surprised how many of the apps still functioned properly without updates (including the ancient built-in pre-Chrome webview Browser app). ... basically my expectation these days was that they wouldn't work. But in practice 99% of my phone use is SMS/Messengers + Maps + Browsers, and they all worked perfectly fine, web standards don't advance that quickly at all, and the messengers are all using simple protocols where they had no problem. So it's typically the edge case 1-5% 3rd-party apps like Uber that are of concern. It's really not hard to develop APIs that are versioned. This is becoming a standard best practice among mobile/web app developers (via SemVer standard). And there's no excuse for a big company like Uber to not support ~1-2yr old apps.
- jimmies 9y agoEverything you said about it being dead before the car arrived is true. However, it was not the point. What if the phone died before it could update? What if the driver couldn't see me so they had to call me, or I forgot the license plate? What if I was roaming on expensive data? What if that was a more critical app? All of those things shouldn't be a problem in the first place.
- dmix 9y agoAs I said I believe apps should be supported for at least 1-3yrs at a minimum via versioned APIs and careful product planning. Especially for 'critical' apps and massively popular apps like Uber. But otherwise it's not a massive problem, yet. But one we in the software community should promote as best practice and provide social pressure/ridicule when not done.
- pishpash 9y agoPlus it uses your data, which for some people costs money.
- cesarb 9y ago> I turned off auto-updates on my phone. Even if you turn off auto-updates, some things still auto update silently. A long time ago, I wrote a small utility which listened to the PACKAGE_ADDED and PACKAGE_REMOVED events (I don't know if it's still possible to listen to these events on recent Android versions). IIRC, there were two packages that always updated silently (wihout a notification icon) and automatically, even with automatic updates disabled: com.android.vending (Android Market/Google Play Store), and com.google.android.gms (Google Play Services).
- xingped 9y agoI was wondering why I saw updates for those two appear in my notifications bar from time to time even though I had automatic updates turned off!
- metalliqaz 9y agoIs that a problem? I mean you're using a Google OS. At this point they are selling you a service, not a program. I have no idea what is in one version vs another, and I don't really care as long as the service keeps working. Now, I do still care of being in control of my own hardware, but I do so on my server. I don't know of a cell phone that delivers what I want without being sold as a service rather than a standalone product. Best I can do is back up all my data to my own box and keep buying new phones when the batteries die.
- cryptoz 9y agoThis was a major major major problem for me. Those silent Android updates are buggy in huge ways. One of them turned off the barometer until phone restart, throwing my startup into a panic as our core product (live barometer data from millions of contributing phones) went slowly dark for some mysterious unknown and scary reason. The data took weeks to return and that gap is lost forever.
- ddalex 9y agoDo you have public data sets? Some live view? I'm interested to see live barometer data across a vast number of sensors.
- moonbug22 9y agom.uber.com
- radarsat1 9y agoI agree with you. But.. > "Tinder has been updated. Deal with it". is an interesting choice of example. The anger at updates only really makes sense for apps that are entirely local to your hardware. As soon as you have an app where part of it runs on a server that you don't control, that logic goes out the window. They can stop your non-updated app from working with no effort, just by making the server API incompatible. As long as you are depending on someone else's server to be up and responding and not changing, you give up your rights to be in control of local updates. It sucks, but that's the reality of SaaS. I'm a fan of using local apps whenever possible. For instance, Google Docs is just too damn useful not to use sometimes. But I still, majority of the time, will choose to use a local word processor whenever I can get away with it. And when I'm done working on a Google Docs project, I download it in several formats and put it in the drawer. In the meantime I'd really like to see more take-up of open source, federated hosted solutions based on open document standards and open protocols. But so far the big corporations are winning that game.
- ryandrake 9y agoThe anger is still valid because at the end of the day, the software (that used to work) no longer works due to a choice made by the company that makes the software. To the end user there is no difference between "making a breaking API change on the server" and "pushing a native update that disables the app". This may be the current sucky reality of SaaS, but it could be fixed if the market demanded it.
- radarsat1 9y agoAh, yes sorry, I do agree with that. The company is changing things. It does suck. The main difference is just that with SaaS, when they change the server, they change something for everyone, there is no way to really block it. With local apps, you can block updates.* I'm not so much angry about server-based apps changing things, although I see your point, but I am angry about too many server-based apps in the first place. At least when it's not necessary. Hard to argue when it's literally for a social network. * Although in practice this only works for so long as it gets more and more painful as time passes.. there are still users of Windows XP! But I'm sure it's far from a pleasant experience these days.
- mynameisvlad 9y ago> Yeah, keep talking about Windows, until you fucking use some of the apps nowadays that wouldn't work when you haven't updated them for a month. It's not really Windows' fault that the applications are being bad actors, though, so I don't see how that suddenly invalidates the backwards compatibility of the OS. Also, I'm sure if you use a 30-year old app, it's not going to prompt you to update before using it.
- ryandrake 9y agoYou didn't mention the phone OS, but ... It's been a while since I was a 3rd party iOS developer, but I thought at one time having a "time bomb" or anything else that causes the app to basically do nothing is in violation of Apple's AppStore rules and would cause the app to get removed from the store.
- jimmies 9y agoIt was Android. I don't exactly remember the message, but it was a forced update message from the app. Maybe it didn't tell me that I haven't updated the app in a month, but it refused to let me do anything without updating.
- izacus 9y agoThat just happened on Skype installed on my iPad 2. So it's certanly not against AppStore rules.
- raverbashing 9y agoStep 1: find a nearby cafe (the mermaid one should do just fine). Step 2: ask someone for a charger and meanwhile use the wifi to update the app, also buy something from the cafe Step 3: enjoy the thing you bought for a bit while your phone charges and you now have a place to wait your Uber without freezing in the rain
- jimmies 9y agoYou can say the same thing with people being pissed off about forced Windows updates that got in their way: They could go make a coffee. I might have made it more dramatic than it really was, but forced updates do make people upset. At least I don't have that problem with my Linux computer and I love it. It works exactly when I expect it to, and it updates exactly when I expect it to.
- gnode 9y agoThe problem isn't really manual control over updates here, so much as control over software. Many Linux systems are set to upgrade automatically, which is great for keeping secure from known vulnerabilities. Apps which aren't updated can still change in behaviour, such as Uber's update timebomb, contain hidden nasties, and the backends they use can change any time. Yet in the open source ecosystem someone can just fork your project if you take away features, or try to act against your users, as sometimes does happen.
- BadMathBook3 9y agoConference travel pushed me into buying a case with battery built in to avoid these situations.
- amygdyl 9y agoThis is why I think it possible that we may yet have a text centric app to rule them all, as has China gravitated to WeChat. Last night I was in a discussion about the whole shift in market power that a central role playing app like WeChat could enable: the premise of debate was that Alexa and competitors are potentially a step towards a new interest in text interfaces. Only our own generation has had our vision occluded by growing up in the command line interface, which is too involving and too complicated for widespread use. The word involving, we chose to describe the experience of working with a CLI, which, having stripped away every attribute we could, we concluded that you had to be involved in a continuous thought process to gain any utility from a CLI. Whereas we figured casual users wish to receive answers to questions, or refine queries without any parsing or precise expressions. So if we had a text interface that was more, so to speak, open ended, then also voice might be workable, and the interface become a widely used interaction. This then could really create the foundation for individual customisation, as local processing power can be applied to learning from the user's total interaction with many different types of connected application, as well as from existing phone voice command systems. We imagined further, that the opportunity might exist for a newcomer to enter this space, as the need for a independent and unaffiliated party for brokering online interaction is potentially a strongly perceived need, whilst we figured it remains one that is subject to the same negative perception of big internet names in a era when I more than my colleagues think that saturation reporting of privacies dying by the thousand cuts has engendered public apathy. We all agreed that public apathy or cynicism, even straight up hostility towards any attempt at selling a "do no evil" message, is a significant hurdle. The question we retired to consider, is how you can organically grow the required trust, in a market where giant capital can leave you alone with outmoded paradigms and entirely whole technologies behind the willing big spenders. As we have seen, there's no marketing to generational segments, when it comes to a web where the generations would not willingly be separated by communications islands - at least presently you couldn't sell a safebook social network to seniors and expect them to get their grandchildren on the platform. Once gone our ways to home, a few hopeful texts were thrown around, wondering if there was some way to get sufficient a body of technology figureheads to be part of a board approving technologies for some kind of do no harm branding evaluation. This died the moment one of our more cynical lot linked a sheet of the quick results of his rough and ready search for directorships held by the first ten names we'd bandied about. He signed off, "you already know each advertising budget for those."
- gnicholas 9y agoI remember being quite upset when Uber told me I had to update the app in order to use it. In recent years (at least on iOS), they now warn you that your version won't work in the near future. I suppose that if you don't use the app for a very long time, you might miss this warning window, but with my infrequent Ubering that hasn't happened yet.
- therealmarv 9y agoI have a very cheap phone which does not have a lot of space left for apps. So it became a habit for me to deinstall and install less frequently used apps only when I need them (e.g. I go on a trip). Actually it makes me feel better that apps like UBER are not installed when living mostly in a country where I cannot use them at all. Fun fact: You can use the same approach also on high end phones. Install less used apps only when you know you will need them. This way you also do not need to auto update less frequently used apps.
- bhnmmhmd 9y agoSimilarly, WhatsApp does the same thing. As an end-user, I'd like things the way they are. If I'm used to the app and it works, why should I be forced to update the damn thing so that it keeps working?
- sli 9y agoWell ostensibly you'd want things like security fixes, in the very least.
- derefr 9y agoIt’s not the fault of “apps” here. The thing that is breaking compatibility is the server backend. Native frontends (“apps”) have to be coded defensively (e.g. to not even attempt to work unless you update) only because whatever backend service they talk to has no wire protocol that can go a month without what would be, under semver, a major release. You’ll notice that apps that target stable protocols—POP3/IMAP mail clients, RSS newsreaders, vCard calendar apps—never force you to update. They don’t need to. The app will keep working as long as the server they are configured to talk to keeps speaking the same protocol (and it will, because public, RFCed protocols evolve really slowly.) The fault here lies mostly, I think, with backend developers who have spent their entire careers working on web projects—where, if they want to make a breaking change, they can just ask the web frontend developers to make a matching change on the website that conforms it to the new wire-protocol, and at most the only problem users will have is that their webpage might spontaneously refresh itself if it was relying on a websocket connection. You can’t do that when you have a native frontend pointed at your backend service, but these backend engineers just don’t seem to put much weight on the needs of native frontends. It's web-frontend chauvinism, basically. (Either that or it’s their management forcing them to act as if they don’t.)
- pbalau 9y agoNah, is not the devs, is the way the market works. If any of the major apps around will skip a release cycle, the entire media will be plastered with titles like "such and such are dying", investors will start panicking, users might start migrating, bad times for everyone. Basically, we, as a society, are using the wrong metrics to asses the health of an app/company. /edit: spelling
- DiNovi 9y agoI'm not sure how I feel about this; you had the power to not auto update; you exercised it; the company had the power to not allow out of date apps use the service; they exercised it... seems right to me. You put yourself in that situation.
- markcerqueira 9y agoThis is a recurring theme here where people over-engineer their devices, workflows, and lifestyle. Then they get burned by it and blame everything except that over-engineering.
- CaptSpify 9y agoyeah, how dare people expect their devices to work consistently! /sarcasm I'd argue that the real problem is that software is eating the world, and companies are becoming less relevant to everyday life, but trying to force ways to stay relevant.
- HedgeSparrow 9y agoIt's more an issue of producers trying to control User Experience right down to the nitty gritty of what stays up-to-date on a device they've already purchased and are trying to use/integrate into their already running lives. Your device, workflow, and lifestyle are generally pretty integral to your devices, work, and life, so it's natural to want to exercise control over them?
- jimmies 9y agoReplace "car-hailing app" with "phone that makes calls", "desktop operating system", "game", "TV that decodes images from airwaves", "car", "firmware to read expiration dates in juicero machine", "running shoes", "watch", "water kettle", "firmware that predicts upcoming heart attacks in pacemaker", "app that displays a map". When do you think it starts becoming ridiculous to demand the rights to not update to the user? Do you think that a juicer that stops working because its firmware hasn't been updated recently, and they just changed their expiration date API, is reasonable? After all, yeah, I'm using their health-friendly juicer as a service, just as I'm using a TV to decode the airwaves as a service.
- anonymous43979 9y ago> and unfortunately it made the news on Slashdot. God forbid other technology communities tolerate frank, accurate, and warranted cynicism.
- a3n 9y agoWhy couldn't you just call a cab?
- guelo 9y agoYour complaint doesn't make much sense. These apps are pretty front ends for cloud databases, just like websites. You don't demand that websites serve you one version of javascript and then never update it again. These are not standalone local apps. They are client-server networked apps that need the client and server to stay in sync for them to work. Uber and Apple/Google have solved the problem you experienced by having the apps only be auto-updated while they're being charged so they don't chew up your battery. You decided to break that feature and then complain that your magical cab hailing device was slightly inconvenient.
- dannyw 9y agoThis sucks, but practical pro tip: use m.uber.com if your app won’t work. It’s the lite web app.