electron / electron/update-electron-app
Updating UI should be very Thoughtfully Considered
- Dominant language
- TypeScript
- Stars
- 824
- Forks
- 145
- Avg merge
- 9h 22m
- Merged PRs (30d)
- 3
Description
Hi! I love that someone is trying to make the update process more straightforward and easier to set up for Electron developers. As one of the original authors of Squirrel, I'd like to share a bit of the philosophy of Updating that might inform some of the design decisions around the default update experience.
### The Zen of Updates
One of the things we always tried to make possible in Squirrel is, "Never get between a User and their Work". Users open apps because they want to _get something done_, and we as developers want to respect their time. Software Updates by unfortunate necessity _get in the way of that_ - we're asking the user, "Please, stop thinking about your stuff, and think about my stuff instead"
To that end, Squirrel makes it possible (but not required!) to do completely silent updates in the background. While that's not appropriate for every application, it's a great experience for those that can do it, because users Don't Have To Think. When we _do_ have to pop an update dialog, we should do it at a very context-appropriate time - for example, in a music application, a good time to show an update dialog is at the end of the album / playlist: the user finished what they wanted, and they have to interact with an app anyways to do The Next Thing.
### What To Do
So, I suggest that:
1. The default UX is nothing, it just fires an event
2. The code for showing the UI dialog gets moved into a public method with a super clear, obvious-to-intent name
This lets people who want that dialog as maybe a way to get started, to get it with a one-liner, but still let people have silent background updates if they think it's appropriate for their app (PS: it probably is!)
### Why It Matters So Much
Defaults are important - even if some People Who Care make a great experience, we know that the vast majority of people are going to just do whatever update-electron-app leads them to by-default. This means we have a huge opportunity to make the update experience for lots and lots of new Electron apps Great By Default, which is extremely rad and good!
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.