Depends what you mean by 'good long time'. I think at this point it's worth acting under the assumption that programming will not be a well compensated career in 5-10 years, and either be prepared to switch to something else or try to make a lot of money in the near term.
Also, if I'm wrong then I get to be pleasantly surprised.