I am not aiming for $85k, I'm not aiming for any sum of money. I just want to make a living coding. I'd be happy with $30k if it were matched with a decent work environment.
I have been considering moving to a better IT market, I just felt weak when it came to getting a programming job, so wasn't certain if I'd be able to get one remotely.
With all due respect, you're exhibiting signs of the Dunning-Kruger effect. Degrees matter, sure. But there's definitely a way you can demonstrate knowledge without having one. Here is a good read:
Definitely get some F/OSS projects under your belt. It's a great way to show what you can do, and you can work on them completely on your own schedule. To show that you know compilers, help out with code optimization in Rhino. To show you know networking, help out fixing an IM client's file transfer. To show that you know web programming, rewrite phpMyAdmin as a webapp, or make a web-based learning tool for kids like Karel The Robot (Google that).
At least for me, I don't think it was the degree that helped with jobs, it was the side projects I worked on in the 4 years of (what I realize now were) oceans of free time.
I understand what you're saying about Dunning-Kruger, but I could sit here and tell you about the merits of Linux Kernel asm-level syscalls versus DOS interrupts.
I know i386 and PPC asm.
I have a passion for algorithms, in particular, I like in my spare time to create mini-benchmarks of sorting algorithms against various arbitrary datasets.
I know my stuff. I just can't demonstrate the more advanced work I've done because it usually violates US Copyright Law.
EDIT: Let me qualify this by saying there is tons more I need to learn, and want to know. For example, I really REALLY need to learn more about web application development.
It doesn't matter if you tell yourself you know your stuff. I don't think anyone ever says "I don't know anything." You need to prove it. Companies don't care what you tell them, you need to show them.
If all the intelligent work you do can't be shared... you need to do some intelligent work that you can share. Otherwise nobody will know you're good.
Get involved with open source projects. If you get yourself involved in a community that already exists, and you show you know your stuff, you will be showered with job offers. If you do your own thing and then whine on HN, you will be unemployed forever.
I have been considering moving to a better IT market, I just felt weak when it came to getting a programming job, so wasn't certain if I'd be able to get one remotely.
Thanks for the tips.