GodSponge wrote:
Some applications install to appdata to avoid having to elevate for updates. I guess it could be an option.
I read Chrome did that at one point - doesn't seem to be doing it anymore though.
Anyway, not something I would do.
I'll just try to think of a way to validate what the Winstep Service is running instead. Not a biggie at this stage.
Anyway, I've been reading some stuff regarding Firefox's 'fall from grace' that resulted in many of its users migrating to Chrome, and a major reason why that happened was because Mozilla switched to a Rapid Release Cycle without properly implementing Silent Updates first. And if that wasn't bad enough, many of the updates broke compatibility with FF plug-ins.
Another consequence of Rapid Updates is that new versions are no longer 'a big thing', something you're actually looking up for. You could hardly tell the difference between one release and the other, as most updates were for security reasons or had to do with things that the user himself saw no benefits from.
So, users were being constantly bombarded with FF restarts and prompts to upgrade itself, plug-ins that stopped working, major UI changes just as you were getting used to the old UI, etc... Even the 'What's new in Firefox' tab was a source of annoyance.
In contrast, Chrome has been doing it right from the beginning. You basically don't even know the browser has just updated itself.
Now, as Edmund Burke wrote, "Those who don't know history are doomed to repeat it", so the idea is not to repeat the mistakes others have made.
My goal is not to update the software every time I add a tiny little thing or fix a tiny little bug. This would make updates fall into the trap of not having any perceived value anymore.
Where Silent Updates would be really, really, useful are in those cases were serious or at least relatively important bug(s) are discovered right after a new release (something that happens more frequently than I like, but unfortunately normal since a handful of beta users cannot replace thousands of users running the software in all sorts of different conditions and configurations).
I could just quickly issue a silent update to fix the problem(s) without any inconvenience to users who had already downloaded the new version.
For this to work, the best idea is to automatically - and silently, obviously - update the application when the system is idle (or right after a reboot, whichever comes first). The user goes to the kitchen to make a sandwich and, when he's back, the software will have updated itself with absolutely no disruption to his working schedule.
For silent bug fix releases, like in the case I mentioned above, I don't even think a notification is necessary (in fact I think it would be counterproductive).
For major updates, I already think notifications are important, so the user knows what new features are now available to him. Just have to figure out a way for this notification to be noticeable but not intrusive.
Either way, and except for the case mentioned above, I would still be releasing new updates only once a critical mass of new features had already been amassed. This way new versions would not loose their perceived value.
Another subject open to discussion is whether Silent Updates should be enabled by default or not.
Sincerely, my opinion is that they should, at least for new users. For existing users, a dialog could pop up asking them if they want to opt in.
There was a time, many years ago, when users became concerned if an application tried to use the Internet. These days nobody seems to give a rats ass about privacy (or nobody would be running Windows 10 otherwise), but it wasn't like that before.
So, when the Winstep application started, it prompted the user if he wanted to regularly check for updates. It doesn't do this anymore, but because it did back then, I now have thousands of users still installing v12.2 (which was released back in 2012 and is unfortunately still lying around on the web) and then complaining on Uninstall Surveys that the software does not run correctly on Windows 10 (which was released 3 years AFTER v12.2).
Why they chose to turn off the automatic check for updates when prompted is anybody's guess, but the fact is that this rarely happens with versions higher than v12.2, where the automatic check for updates is already enabled by default.
So the same reasoning applies. Opt-in automatically and let users opt-out later if they want to.