There are two main area associated with My Sites.
- My Site Host Site Collection - Shared by all users – My Profile link – First site collection created in My Site web application
- My Site Personal Site Collection – Personal site collection – created when users click on the My Profile link – subsequent site collections in the My Site web application – can disable
The My Site Host Site Collection is easily customised and branded as this site collection it is shared by all users. There is a great article explaining it here.
The My Site Personal Site Collection is created for each individual user thus customisation is not so easy. A developer is required here as the solution here is known as Feature Stapling.
Feature Stapling allows a Feature to be called when a Site Template is called during the provisioning process. This means you can run some code to change master pages, apply custom security, etc… to the site during the provisioning process. So when the site is displayed to the user all of the changes you implemented in your Feature has been applied.
I have just finished implementing a solution for a client which I am happy about as Personal Sites are now branded and users are not site collection administrators.
This post while written for SharePoint 2007 is still very relevant for SharePoint 2010