Know & love your big picture
This is a question that just about every PM at Microsoft has to answer frequently.
"What's your big picture?" or "How does this fit into the big picture?"
Our culture is one of visualization and we love our grand views. (Hidden pun most certainly intended... sometimes we love our big pictures a bit too much, but that's another blog entry). I suggest that you not only get used to answering this question if you work here, but that you also make sure everyone you know and everyone that you don't know understands your mental image. Because you never know where you're going to get that unexpected resource or vote of support. And when people know what your picture is they'll be on the lookout for your missing puzzle pieces.
"So your team writes these little toys (Developer Power Toys)?" Is a question/statement I get frequently. If that's all I can write on my review at the end of next year then I'll have failed. Our team writing these tools is only the first part of a vista that hasn't been painted yet. So let me paint a bigger picture for you that's task based.
"My team wrote this cool tool we'd love to ship to customers before Orcas+1 ships... what next"
Guess who has experience here? We do. We can help your team:
- Deliver a consistent user experience for customers using MSFT produced developer tools. This tool is integrated into the IDE, that one doesn't have an installer, I now have 4 different start menu folders added, why does this tool run in the system tray... these are all issues that can't be solves without a central team responsible for making sure there is some consistency across our aftermarket releases designed to drive up the overall quality.
- Share the source code & create a top notch collaborative environment with customers that could lead to an even better tool. It may seem trivial to customers, but today "I'm going to post this code to customers" is not a trivial step to take at Microsoft. Our team is working with LCA to simplify this for folks & also come up with best practices for creating a healthy code community.
- Meet & Exceed the MSFT required validations
- Connect with other teams that are also looking into similar problems. I'm less shocked daily when I find out about the duplication of effort going on.
- And potentially assist with our ideas, feedback, and development/test/pm resources.
"How do we get customers to find our tool?"
If your release plan concludes with "Publish the installer to the MS Download center & write a blog post about the tool" then you're probably missing out. Your download numbers are going to be poor & your tool is going to collect dust on the download center & it isn't going to have the impact you were hoping for.
This is a huge problem at Microsoft today. It's part of the reason we have such serious feature creep into our core products. There's a belief, that's been proven valid, that if it's not in the box then customers won't benefit from it. I know this is a problem because I hear about 2-3 useful tools a month that are simply tossed over the wall to customers... never to be heard from again... effort wasted.
What our team is going to do is give you a ship vehicle or "channel" if you will for your Power Toy/Developer Solution. It's an acknowledgement that our team can't possibly understand the need of every developer & doesn't have the resources to ship every develop resource we should ship as a company. What does this channel consist of?
- The first part of that channel is a consistent URL for customers to get information about MSFT produced tools & the program in general. http://msdn.microsoft.com/powertoys
- Second, as Jeremy Describes, we're working on a Power Toy Pack installer. This installer will not only let developers install all of our tools in one step, but any MSFT developer related tool. This means that developers will only have to find one tool to learn about all the others we produce as a company.
- This installer could eventually be rolled into the primary Visual Studio install as a "final step" that lets users choose their add-ons after the main product install has completed or accessible via a "Get More Dev Tools" button... thus partially solving the "but if it's not in the box problem.
- Finally, there are some awesome customer produced free tools out there... why shouldn't they be included... why don't we highlight their stuff? We will.
Keep in mind this is only the stuff our team is working on designed to help other teams be more successful with aftermarket solutions. This is only a corner of the team's charter. Let me quickly paint some of the other corners.
- What about making it easier for customers to create and share Visual Studio content? Needless to say we've got some cool stuff up our sleeves around making it easier for you to share code snippets, samples, add-ons, etc over the Internet... or dump truck if you will.
- What about our support communities? Product support is no longer a simple matter of manning a phone que waiting for customers to call. If a customer has to call... I believe we've failed. How are you making sure you've got a healthy online support community? How can questions from this community be escalated to official support? How can a customer get an "instant answer"? These are all questions and whole other blog posts we are working on solving to make customers feel (and actually be) more supported.
- Oh yeah, we ship some little toys as well... every 6 weeks.
We're all here to make customers more successful with the product their using today and I love this problem space.