I guess "community taught" would be better than "self taught" since I learned from so many people online. But I had been programming for 10 years before school, and while I was in the military (over 6 years) I took advantage of many MOOCs from MIT, Stanford, UNSW, etc. and many books from Knuth to most of the No Starch Press library which I understand is not the case for traditional students. It is frustrating though, especially not being just out of high school.
You were just overprepared for an undergraduate degree by the time you got around to trying for it. For anyone else taking a similar path, specifically the military part, you can often knock out an associates degree with that amount of military experience. Do it, you can skip most of the core curriculum and focus on the CS part and be done in 2-3 years (less if summer courses are available) and be in grad school in your 3rd or 4th your of full-time college education.
I probably agree that for each student at least one of those 4 years is usually wasted; but this is different than whole program being a waste for a person.