Makes sense (I do know something about construction and architecture in particular. . .

). I'm just thinking that long-term it would be much more advantageous to be one of the guys that can DEVELOP software, conceptualize it, figure out what market segments it needs to appeal to, find deficiencies in competing/similar products and meet them (or devise a plan to meet them), etc. than it would be to just be a guy who happens to be good in the programming-language-of-the-month.
There were some aspects of the courses I took that were fascinating, but it reassured me that aspiring to be a PROGRAMMER was a surefire way to spend a lot of time standing in unemployment lines. Probably the best thing one could do is find a stable platform that's going to be around a while (Windows?) and learn the ins and outs of the various APIs and libraries, then convince someone to hire you on the basis of that - as a person who can coordinate the implementation of software being developed for a particular platform to that operating system. That might be doable. Or as discussed above, try to be more of a designer/conceptualizer.
I can't imagine why anyone would ever want to actually code/program stuff. It's just one of those things that holds zero appeal to me, it seems to have very little value and long-term career potential, and it's highly unstable as a job choice. . .
Just my $0.02 - YMMV.