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:
>>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 do
You 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
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
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...
Autodiscover, Autodiscover, Just AutoDiscover for me. It's just plain XML
David Sterling Senior Software Development Engineer - EWS