Software engineering is the most equalizing field in modern society. I mean, anyone with interest and reasonable intelligence can get good at it; they just need a used laptop and a decent internet connection. Add a good amount of CS understanding, and general creativity, one stands to make it big in this field. Compare that with trying to build the next generation automobile by self studying mechanical engineering, or creating a drug to cure your least favorite disease by learning bio chemistry through a MOOC.
Software engineering is the new humanities, albeit a lucrative one, in that you need just a bit of push in the beginning after which it is all up to you to explore and get good at.
Usually the added hassle of the business logistics (paperwork, additional business taxes on top of your payroll, etc) and everyone under the sun trying to lowball you. Not everyone has the intuition and patience necessary to handle all this extra work. There's also the added time commitments.