Just in Time Notifications for Visual Studio 2013
One area of importance for Visual Studio users is keeping informed of updates to their toolset. Various tools exist to aid this process, including NuGet and the balloon notification used in VS2012. Each has shortcomings in their approach. NuGet applies to the packages used within VS and not the IDE itself. The balloon notification is useful for IDE updates, but it is easily missed if you are not present when it appears or inadvertently close it. Plus, not all updates are created equal—and each developer has their own unique priority list.
Microsoft is taking multiple steps to address these weaknesses. NuGet has built a concierge and a curated package feed. For the IDE itself, Microsoft has implemented a new editor-based Notification Center. This center adds a new icon (a pennant) that sits just to the left of the Quick Launch search box and will alter it’s appearance based on whether there are new notifications, previously viewed notifications, critical notifications, or nothing new to report. This at-a-glance functionality is designed to be unobtrusive while still being informative.
As Program Manager Cathy Sullivan notes, these notifications will run the gamut from product updates to licensing alerts:
- Product Updates
- Visual Studio Gallery
- Samples Gallery
- Download Offline Help
- Synchronized Settings Conflicts
- Customer Improvement Experience Program
A color code is used to signify important updates, with plain grey being used for informational announcements. Yellow and red are used to signify increasingly important alerts. The system is also designed to be intelligent, so that if a component has multiple updates only the message for the most recent one is shown. (ie: If version 3 is released, you no longer will hear about version 2.2.)
From what has currently been announced, the Notification Center will receive all update information directly from Microsoft so a company or development team cannot setup a customized notification feed. (This is in contrast to NuGet which allows such a scenario.)