Lots of people in this thread talking about the quality of the customer support here, and I think they're missing the point. The support staff seems to be doing their best to provide reasonable explanations for the changes. But there's a deeper question here about what responsibilities developers of free applications have regarding notifying users about major feature changes. This is just a particularly important question on platforms that don't offer fine-grained user control over application version installation (i.e. mobile).
Yeah this is a good point, and that's a balance I'm actually in the process of determining for my current project.
User expectations are different for mobile apps -- anecdotally it seems users not as annoyed by mobile app updates as they would be for Flash or even Word, because the process is a lot lighter and less painful. For web applications it's transparent to the end user.
But, yes for rich client apps it's a concern. I think the trick is to deliver features rather than bug fixes and shape user expectations towards getting something new from an update rather than getting nothing but fixes that should have been in place to begin with.
As I developer I understand the perspective you're talking about. As I developer I will only support the newest version, and possibly one or two legacy branches of an app. If someone emails me about a bon supported version issue, I do what nearly every other dev does; tell them to update to the newest version or figure out a solution themselves. I do NOT force software onto their computer, nor cause full screen popups demanding they update. That is incredibly invasive, and not worth the trouble for either of us.
Sure, I'm aware of those reasons (and can think of many more). As a user/customer, I don't care about any of those details. I still want to know what's changing when I click "Update".
If users have automatic/background updates, sure, they apparently don't care about release notes. For everyone else, the release notes are really the only way to know what changes are going to happen upon clicking "Update". Having those notes be [effectively] blank is a substantial disservice to the user.
It's depressingly frequent that an app I used to enjoy takes a major dive in user experience. For a contrived example, I don't like finding out I am now suddenly blocked from using my messaging app because they force me to use a new cloud-based account system I can't opt out of, and none of this was mentioned before I clicked Update. Or another favorite: an update that does nothing more than introduce in-app advertisements.
I don't see how a design decision made by the maintainers of this project, which is documented as version changes are made - and completely transparent given the nature of the project (open-source), constitutes a high priority support request from a software engineer external to the project? Sure, it's a pain for adopters who were dependent on the feature, but you can't criticise design decisions made by someone who offers your software for free. You can, however, fork it and take your own path with the software.
Are you saying because a new version breaks the current build of a downstream proprietary application, that should constitute a high priority support request from the maintainers of the project?
That doesn't compute with me. If they were paying for forwards-compatibility and had that expectation in a contract, sure. But they should be able to make changes they see fit without having to make trade-offs to ensure future compatibility with an Enterprise organisation's product.
At that point they're basically making design decisions to suit the Enterprise, at which case - you're not just free resources for software engineering for the organisation, you're actively pushing your project to be vendor-compatible. I could see this reasoning if your project is largely funded by them (Chromium), but in this case, they're not.
There's a point for the developers and to communicate features and bugfixes. And they still help in supporting installations. But you are correct, they become less important. They (patch versions at least) don't necessarily have to be communicated to users.
You're right that we could have been better communicators about this. We prioritized our concerns with applications that could break during the upgrade, and we biased our public communications towards developers as a result.
For example, you're right that a notification on our homepage, in addition to our docs, would have been a good reminder to users. We'll work on getting a blog post and better documentation up that explains exactly how to access data from before 11/11. We really appreciate the candid feedback here.
We're a very fast growing startup tackling a herculean task, so we're bound to make mistakes and this is one of them — I hope you can understand. We want to be much better communicators going forward.
Honestly, I think you all should consider changing that policy. Not only because I've seen it broken before, but because major version changes imply things can be broken at upgrade time, and features are settled for a long time. Good to let people know about major releases...
I'm guessing that you also think web apps are also not ready for the average user? After all, there you don't even get to have a say when the upgrade happens. And you have no way of delaying, cancelling, or undoing it.
As far as users are concerned, random stuff changing for reasons unrelated to their actions are all the same.
Right, major versions with new features are one thing, a "we fixed a few bugs in the major release we did 3 days ago" release on the other hand don't seem very important. If you use it you'll get notified through other channels, if you don't you probably don't care
Do users really care about those shiny new features? For me most of it was stupid stuff. Stickers, shaking windows..
The ability to turn that crap off is entirely why I'd want a different client.
And it's not really like you can have your feature available everywhere on day 1 really, even on a proprietary client. People often lag behind updating their apps on their devices.
I managed a fleet of 60k mobiles of which 40k byod (personally owned). and we often ran into issues with people not updating even included apps like chrome for years and we'd have to email them and even ban them when a serious vulnerability was found in the wild.
So what? Why should they continue to support some minor feature if it costs them a lot of resources and they think it's not worth it because it doesn't really fit their project?
If you have a feature that is used by one customer out of thousands but it's causing problems at every update you push out. It might be better to remove the feature and fire the customer, than to keep supporting it no matter what.
I like your customer-oriented point of view. Because ultimately, it's not about the developer, but about the customer. A few points I want to add though:
> As others have mentioned, requiring updates to run correctly is actually a fault of the underlying system, and the change therein.
Theoretically yes, but this changed from the customer perspective as well. Whereas a few years ago, it was a sign of quality software that no updates were required, it's now a sign of an app that is unmaintained. No updates is a negative signal and thus, updates are mandatory to be perceived as high quality software and to a certain extend, to prevent 1-star reviews.
> If there is a need, the need will be met, eventually, by someone, and if it is truly a "need", people will be willing to pay money for it.
"If there is a need, the need will be met, eventually." Period. The rest of the sentence isn't always true. People aren't necessarily willing to pay money for it and there are other revenue streams ("pay with your data").
I'm not suggesting that apps should drop such support instantaneously or gratuitously. Rather, I'm just suggesting that in the normal course of development, as an OS version becomes sufficiently old and has genuine issues that make support non-trivial, and if the upgrade to a newer version is free and automatic (so it's reasonable to expect people to upgrade), an app developer may at some point say "we expect at least this OS version; if you're using an older version, you're welcome to try, but we don't test on those OS versions so we can't offer any support or respond to bug reports from those OS versions".
I absolutely believe that the "you're welcome to try" part of that is important, assuming there's no known issue (which there may sometimes be). Developers also have an upper bound on available support bandwidth. I don't think apps (or websites) should prevent users from even trying, unless there's some specific technical reason (e.g. a known incompatibility that's producing substantial support burden just to triage, or a library or API that simply doesn't exist on the older version). I do think it's reasonable to say "please upgrade and try again, and if you're still experiencing the issue we'll take a look".
Along the same lines, if a user reports an issue to a website where it doesn't function properly in Chrome 12, or Firefox 9, it's entirely reasonable for the site to respond with "please upgrade, we don't support outdated browsers". It's a little more questionable for a site to say that about a version released the previous month, unless the site is a tech demo for bleeding-edge technology. But at no point do I think a site should actually block users attempting to use older browsers; at most, it's reasonable to show a "not supported or tested, might not work" message.
Perhaps technical people should take more care when making updates for their application? There's a negative sentiment over updates for software and it arose from how bad updates ruining things. Updating might help with security, but it also forces you to put up with every harebrained UI change and removal of features that developers come up with.
Eg tab groups were pushed onto mobile users in Chrome, yet it feels like the people who made the UI change don't actually use mobile chrome much, because the UX is awful. Luckily you can trudge through flags to change this behavior to the old one, but how long until we can't do that anymore?
This seems like a reasonable and thorough response. They revised and cut unnecessary bits and added clarification where possible within a reasonable time frame for these matters. Good job.
I really don't get the wailing and gnashing of teeth against even the principle of adding update checking and error reporting features. Real, regular people will get tangible benefits from these features. Their scope is so limited and implementation (now) drawn down to such a sharp point I can't really sympathize with a hard-line counterposition that these features must be defacto evil.
Why? Updates may or may not be to the benefit of the user, who should have a clear say in the time and place when their stuff is updated, nothing is more frustrating to have a job to do and then to sit there waiting for some silly update process to complete only to find out that (1) it doesn't matter to you anyway or (2) that they've borked the update or (3) that critical functionality you relied on has been removed or (4) that the marketing department thought this was a great time to try to upsell you on something.
Mandatory updates should only happen for critical security issues and even those don't need to be fixed on a five minute interval, once a day at most for a check and less frequently is probably fine as well unless the app is absolutely mission critical and people will die. And even then you should probably wonder if your QA is so bad that you need to be able to intervene on a moments notice, better to design your process in such a way that you can alert the user rather than to forcibly upgrade their system, especially if there is a chance that you'll get it wrong (again).
An upgrade is always a burden on the users, so you really don't want to do this too often and even if you are capable of releasing multiple updates per week it would be ridiculous to expect your users to follow that frequency.
Totally fair, but by the same token I don’t think users who’ve chosen to do this should reasonably expect any kind of support for old versions. From the developer’s perspective, it’s pretty frustrating to have a small group of users using years-old versions emailing in expecting bug fixes and support.
90% of updates change things that users would be offended to be told about. They would say "why do I need to know this?" Example: changing width of buttons x y and z under sub menus a b and c to support x y and z device edge cases. In these updates, devs just paste the same "what's new" they wrote for the previous release (which has the info that actually matters, like something new users want to hear about). Releases don't go from 1.1 to 1.2 in mobile, they go from 1.1.43.1 to 1.1.43.2. Having to manually type the same thing in 32 different languages for such small changes is what makes you really dislike the process. You can just select your release notes from the last release on the Play Store
reply