I am sympathetic to them as we have all made bad decisions. I would argue that a neccessary pre-condition to "following your passion" is protecting that passion and pursuing a longterm strategy which allows you to develop that passion and maintain ownership over your work. Chasing passion is not an reason for failing to plan or for allowing others to walk all over you. Software engineers on the whole have sufficient power to not be at the mercy of bosses if they have the will to stand up for themselves. They owe it to themselves and to their limited lifespan to do so.
Edit: I think we both are saying that, to the degree possible, people have a responsibility to themselves to not allow themselves to be exploited.