We recently undertook a project to develop a global intranet for a relatively large organization. As part of the requirements of that implementation, the client wanted to create a highly customized My Site experience. As anyone who has delved deep into My Site customization knows, it's not straightforward, easy and may create maintenance issues long term.
Ultimately, after working through the challenges with the client, we collectively agreed to back off the more grandiose My Site customization plans in lieu of a more simple approach. The reasons for this change centered around the following:
- Each My Site is a site collection and dealing with several thousand My Sites when need to change elements of the implementation was not something the client wanted to deal with long term
- The original plan the client had for the My Site, while useful, ultimately removed a good deal of useful functionality provided by Microsoft
- There was some concern about "upgradeablility"
So while the we didn't create the highly customized My Site, we still implemented some limited customization that delivered a custom theme, master page and some unique navigation (to tie in the rest of the portal). We used a technique called "feature stapling" to make that happen and ensure "compatibility" with what Microsoft would like to see in SharePoint implementations.
If you're interested in a really good set of explanations of both the My Site architecture, see a blog entry from Mark Arend. If you are looking for the best practice approach to modifying the My Sites, see the SharePoint Product Team's blog entry.