Today we are deploying the results of our Sprint 52 work. I wrote the release notes this sprint and you can check them out on the news page, so I’ll keep that short. Right now, our focus is on wrapping up all our TFS 2013 feature work – incorporating feedback, fixing the last set of bugs, signing of on our release criteria, etc. At the same time, we are starting to plan our post-2013 work. Now is a good time to make sure the UserVoice site is up to date.
Over the past year, we’ve been publishing news along with our service deployments. Along the way, one of the things we’ve struggled with is timing. Here’s how a deployment works…
First we rollout the new software on the app tiers. Then we update the “system” databases (sprocs, schema, etc). Then we cycle through each of the tenant databases and update them (sometimes it’s not much, sometimes it’s a lot). The problem is when do we publish the “news” and my blog?
There’s two philosophies and neither is perfect.
- Wait until every tenant database has been updated and every user can see the new changes before announcing/describing them. The downside is people will come to the service and see stuff has changed and go to find out what we’ve done and there’s nothing there.
- Publish the news as soon as we start updating tenant databases and just let people know that it might take a few hours before they see them. The downside being people will read about changes and then log in and find that they can’t see them and be confused.
Our publishing strategy to date has been #1. One problem I have with my blog is that I never know when that’s going to happen – it depends how long the deployment takes so I try to “guess” when the release notes will be live and schedule my post for then. That results in a post with a broken link for a few hours when I guess too early.
Besides, I’m more of a fan of approach #2. Starting with this deployment, we are switching to #2. As soon as the software is deployed and the system databases have been updated, we will publish the release notes. I’m still going to have to guess a little bit with my blog post but this timing is WAY more predictable.
So, don’t be surprised when you see my blog post or the release notes and log in to your account and not yet see all of the changes. You should see all the ones that don’t require per-tenant updates but the rest will roll out throughout the day. We pretty reliably complete the full deployment before the end of day pacific time.
Please let me know if, after trying it for a while, you feel like the old approach is better.