Once again, people like to single out other countries and other people. Always point fingers at the other guy and accuse him/her/them for their behavior. Why not fix yourself first and try to make your block/neighborhood/city/state/country better?
After all, when you (including myself) have such a bad attitude and a way of living, we should never point fingers at anyone but ourselves.
As for India, it is such a huge country with so many variations and cultures. Unlike China, the government doesn't sweep all the messiness under the rug or try to suppress it with brutal force. I'm sure if the Indian government wanted to, they could sweep the poor people aside and make their major cities look cleaner (for the sake of it).
Another factor is this whole BS about modernizing and adopting Western influences. Ever since India has been copying the West, it has lost everything. The Western approach India has been adopting has not worked, period. What works in the West needs to stay in the West. India needs to do what works in India. Unfortunately, the whole world wants to Westernize at the expense of everything. Some, like China, do it in a forceful and brutal way. Others, like India, do it in a gradual way but do not care to present a certain image to the world. The world thrives on images.
When you watch an Indian movie, you see them talking half English and half in Hindi. It is really weird to watch. The action scenes and all the overt sexuality are adopted from the West. Heck, Bollywood is a direct copy of Hollywood. At least the older Indian movies had some cultural aspect that actually belonged to India. (Sorry to throw in some extra stuff but it shows a deterioration of a country. India, from what I've seen, is confused. It wants to preserve its ancient culture yet adopt the Western culture. It is a truly confused country.)