Any recommendations for the above, either from personal experience or that of friends, colleagues etc?