What would you say are major causes of heart diseases?

Various causes. Cardiomyopathy is a generic term for abnormal heart muscle. It can be caused by infections, poisons, genetics, and physiologic causes. There are both weak heart and 'strong heart' cardiomyopathies. The cause of someone's cardiomyopathy requires more information than the term cardiomyopathy.