How to decide if to do dimensionality reduction before clustering? Is there any agreement on when to reduce data dimension before clustering in order to avoid curse of dimensionality?
My intuition is that if I have say 1000 points and data dimension is 10 then it is OK to cluster. But if dimension is 50 then it is not OK because data points become sparse and hard to cluster (as a result expect to obtain "too much" clusters).
 A: You do dimensionality reduction if it improves results.
You don't do dimensionality reduction if the results become worse.
There is no one size fits all in data mining. You have to do multiple iterations of preprocessing, data mining, evaluating, retry, until your results work for you. Different data sets have different requirements.
Remember how the KDD process looks like:

Notice the grey arrows going back. If the result does not make you happy, try going back and e.g. try to use different preprocessing such as dimensionality reduction.
But 10 dimensions is not high dimensional anyway, probably no need to be afraid of the curse of dimensionality, unless you do some grid based methods.
For the behaviour of high-dimensional data, I can recommend the articles by Houle et al:


*

*Can Shared-Neighbor Distances Defeat the Curse of Dimensionality?
M. E. Houle, H.-P. Kriegel, P. Kröger, E. Schubert and A. Zimek
SSDBM 2010


They show that there is no direct relationship of the number of dimensions and the ability to cluster the dataset. But it is more a question of the signal-to-noise ratio. A high-dimensional dataset can be very easy and good to cluster if all the dimensions contribute signal. If most of the dimensions are noise, a much smaller dataset will already break down. So in particular, there is no rule of thumb such as "10 is good, 50 is bad", sorry.
