You might be injured because you are a lousy driver, but I agree to pay for your healthcare. Or, you might be lousy at directions. I agree to pay for your search and rescue costs. You might get cancer. I'll pay for that. Sometimes people fall into things that aren't great. I think we sometimes feel better about ourselves when we assign blame. It gives us a sense that there is order in the world, that we can establish clear causes for behaviour so we know whether to feel compassion or not. It simplifies our life: do these  people deserve my compassion? Nope? Okay, let's move on. But remember, nobody wakes up and says "I'd like to become a drug addict". People come from broken homes and live broken lives before they get there, in a lot of cases. This stuff happens to them as kids. If you decide to think of people as "stupid" because they are drug addicts, you've told me all I need to know about your capacity for compassion, but you've also demonstrated that your opinion is ill-informed.