What do you do if you want to jump aboard the computer science train if you have no knowledge or experience?

Going back to school is expensive and takes a lot of time. And your computer-savvy friend probably isn't patient enough to spend the necessary time with you to get your programming skills to a point where a company would actually hire you.

That's where these free resources come in handy. Work at your own pace and take them as seriously as you want. If you put in the effort, you might just become a fearsome computer warrior.

Coursera

Screenshot

Coursera's free classes run the gamut of disciplines, and its computer science offerings are substantial. The classes operate as a conventional college course would, with homework, quizzes, and ultimately passing or failing. Often times students who successfully pass a class can even get a physical certificate of completion signed by the instructor.

Learn Code The Hard Way

Screenshot

Who says easiest is best? Learn Code The Hard Way will put you through your paces, but when you come out the other end, you'll have an innate understanding of the programming language you set out to learn. All its resources are free online, or you can pay for a PDF file.

Codecademy

Screenshot

Codecademy is one of the hot rising startups and its singular mission is to teach novices how to code. It makes use of a friendly and interactive environment that will have you writing your first lines of codes just moments after you start.

Stack Overflow

Screenshot

While it isn't exactly a means of instruction, Stack Overflow is a place to get answers to your programming questions. When you're stumped, write up your problem and submit it to this notoriously helpful and intelligent community.

MIT OpenCourseWare

Screenshot

MIT is one of the most exclusive engineering schools in the country, but loads of its class materials (and even videos of its actual classes) are available entirely for free. There's very likely something of value here regardless of your programming skill level.

Google's University Consortium

Screenshot

Why not learn from the company that has helped define the nature of the internet for the past 10+ years? Whether you're interested in mobile app development, web development, or learning a programming language from scratch, Google has resources for you.

Khan Academy

Screenshot

Khan Academy is probably most comparable to Codecademy, offering you an interactive environment to experiment and refine your coding ability with friendly guidance along the way. When you're done with coding, check out its other lessons, which range from topics in humanities to math to test preparation.

CoderDojo

Screenshot

Sometimes the best way to learn is to collaborate with real people in real time. CoderDojo offers a directory of "dojos" around the world where you can meet with human beings to go over the finer points of creating elegant computer code.