Complaining isn’t just a bad habit, it’s bad form. There is absolutely nothing wrong with expressing your anger at something. A person or a situation should be told that you’re not happy. Beyond that, holding on to the ire is simply not that healthy and not at all helpful.
Complaining very rarely gets to the heart of the issue. It makes you focus on the negative such as the flaws or the problems and it doesn’t work at solving them. No one at any time is saying that you should not express your dissatisfaction with the issue, but complaining is not doing that. It’s simply complaining and not working to solve the problem. It makes you focus on the ordeal and might be something that will distract you and the person who has the issue from actually working on it. It makes you focus on what’s terrible, not what’s right and it keeps you blaming someone for the issue, not fixing it.
Complaints don’t always lead to corrections. If a complaint leads to a correction, that’s one thing, but for the most part, complaints are verbal expressions of self-pity and don’t address what you might do to correct it.
Complaining also involves a fair amount of judging and condemning yourself or others for the problem, their flaws or their shortcomings. It doesn’t even remotely work on correcting it and that’s where you need to begin.
If complaining leads to a fix, that’s one thing, but if it begins and ends at complaining then you and the people around you are going to gain nothing from it other than a desire to be elsewhere.