Are you joking? You've just described about ten years worth of study at the undergraduate/graduate/math/economics/accounting/MBA/PhD level.
I've taught systems administration and programming at the community college level, and, quite frankly, my opinion is that it's an utter and complete waste of time. The overwhelming factor in determining a person's ability to succeed in IT is their IQ, and you have no control over that whatsoever. Other personal qualities, such as perseverance, or sobriety, are important, but they're trumped by IQ.
As a general rule of thumb: The average recipient of a master's or PhD in theoretical computer science is at best capable of earning a living as a programmer, NOT as a researcher. The average recipient of a bachelor's in computer science is at best capable of earning a living as a systems administrator, NOT as a programmer. The average recipient of an associate's in applied computer science is at best capable of earning a living as a cabling monkey, although it's more likely that he'll end up as a janitor or a nightwatchman.
If a person has the IQ [and the perseverance and the sobriety] sufficient to earn a living as a programmer, he can [and will] go down to Barnes & Noble, buy a $29.99 "Teach Yourself in X Days" monograph, and teach himself.
PS: All programming courses should start with some sort of a "computer math" pre-requisite. If a prospective student can't tell you that e.g. a 32 bit integer is capable of holding 232 values, which range from
then they should be expelled from the course before it begins.[231 - 1] + 1 = -231