Ideas around pushing new code to end-users.


#1

I’m sitting here and thinking about how to notify my end-users that there is a new version deployed. My situation is that we have an internal customer service app that our staff uses the whole day and we usually do a couple (5-10) deploys a day. The problem is that the staff never notices, until the next day when they start the app, or we have to send them an email to tell them to reload the page. this feels a bit akward and, to be honest, dumb.

Is anyone else doing something cool or are there any good best practises for this for client-apps?

Maybe notifying them on the page with websockets, or maybe even push the new code somehow directly with websockets… html5 appcache have been in my head as something that could be utilized as well…

So, how do you do it?


#2

Easiest thing and what I’ve been doing is to push a “reload” event via a websocket, which just reloads the page. If you want to be fancy about this you could tell the user that the page will reload within 5 minutes, click here to reload now.


#3

You don’t have any issues with people being cranky if they are editing f.ex a form when that reload occurs ?


#4

I consider reloading the page without a user interaction bad practice. It’s probably even more work to, since you have to be sure that there are no unsaved changes before force reloading.

Pivotal Tracker is the only app I know, which tells their users about new code. They show a little notice if this happens.