There are several options for studying computer science online for free. If you have limited or appetite to enter into a costly and time consuming formal study programme such an approach may suit you well, particularly if you value highly flexibility to learn at your own pace as time and motivation allow.
A very appealing option is Teach Yourself CS1. This is a resource put together by the Bradfield School of Computer Science. They suggest studying nine subjects using the suggested textbook or video lecture series (but ideally both), aiming for 100 hours to 200 hours of study for each topic. A number of the books recommended are available online for free.
The focus appears to be on key texts rather than taking specific online courses in their entirely which is likely to suit you if you enjoy reading technical books. Books are such a wonderfully self-contained and portable resource. When the authors are able to construct a consistent and compelling framework for knowledge building this can quickly engender confidence in the reader. Books can be read pretty much anywhere and put down and picked up easily. Well constructed exercises with model answers are a super valuable resource.
In contrast the friction involved in studying online study courses off-putting. Typically there are logins to remember and annoying web portals to navigate, lab assignments to submit, spam e-mails to fend off, and schedules and deadlines to accommodate etc.
Another option to consider is the Open Source Society University “free self-taught education in Computer Science2. This programme seems very comprehensive and more than a bit daunting. There also seems to be quite a bit of churn in the syllabus, such that someone taking the course might worry that it would change substantially before they make much progress. For some the focus on taking actual lectures courses may be less appealing that reading and studying key texts. For others the format and approach offered may be ideal.
Colin Gordon has very helpfully made available a “loosely-categorized collection of links to CS textbooks in a variety of areas that are freely available online”.
- SICP is recommended as a core text for programming in the “Teach Yourself CS” self taught computer science programme. Taking SICP one step at a time