Update! The actual song is now available for download as the attachment to this post. Enjoy!
So, how exactly do you encourage developers to adopt good development practices when such practices are not explicitly enforced? We thought about embroidered socks and matching hats, but that was universally frowned upon. Whitepapers and technical articles are good options, but in the end it was decided that Autodiscover was too important of a development practice to treat like any other feature in Exchange. It needed something different and unique. It needed.. a song. Yes, a song - to immortalize the virtues of Autodiscover in verse, hoping that in the end, everyone would use Autodiscover in their applications and would rise up in chorus and sing this song together as a unified front.
Ok, maybe all developers singing in unison is a stretch. But one day while working on some changes in Autodiscover for the next version of Exchange, the chorus melody and words came to me and wouldn't leave me alone. I started to tinker on the piano and the rest of the song took shape. I didn't think much of it, but after discussing the idea with some other team members, it was decided that I should record and master it and make it available to the Exchange development community.
So here it is:
Chorus:
>>Autodiscover
>>There is no other
>>Way to decide
>>Where your mailbox is stored
>>Autodiscover
>>Your sister and brother
>>Exchange Admin and mother
>>Will be proud if you doYou may be tempted to wing it
Use a hardcoded link submit it
But performance will suffer
When you're left to your druthers
Should have Autodiscovered
Then all would be well>>Chorus
Call it once for each mailbox of interest
Pair the link and mailbox for each request
If you encounter errors
Refresh once again
For more information search M-S-D-N for>>Chorus
Exchange won't exist in a bubble
If you think that it will you're in trouble
Add a site, one or two
And your perf will be through
Unless you step up and decide that your app will just...>>Chorus
Autodiscover,
Autodiscover,
Just AutoDiscover for me.
It's just plain XML
David Sterling
Senior Software Development Engineer - EWS