Contents
- Summary
- Community
- Curriculum
- Code of conduct
- Team
Summary
The programming skills for everyone is a complete computer science/programming education path based solely on freely available online materials. It's for you if you want a proper, well-rounded basis in concepts fundamental to all programming and computing disciplines. You need to possess the discipline, will, and (most importantly!) good habits to obtain this skills largely on your own, but with support from a community of fellow learners.
It is designed according to the degree requirements of undergraduate computer science majors, minus general education (non-CS) requirements, as it is assumed most of you are already educated/have knowledge outside the field of programming/CS. The courses themselves are among the very best in the world, often coming from Harvard, Princeton, MIT, etc.
The coursework is also supplemented with relevant books when necessary. When there are courses or books that don't fit into the curriculum but are otherwise of high quality, they belong in extras/courses or extras/readings.
Organization. The curriculum is designed as follows:
- Intro CS: for you to try out programming/CS and see if it's right for you.
- Core CS: corresponds roughly to the first three years of a computer science curriculum, taking classes that all majors would be required to take
- Advanced CS: corresponds roughly to the final year of a computer science curriculum, taking electives according to the student's interests
- Final Project: a project for you to validate, consolidate, and display your knowledge, to be evaluated by your peers.
Duration. It is possible to finish within about 2 years if you plan carefully and devote roughly 20 hours/week to your studies.
Cost. All or nearly all course material is available for free. However, some courses may charge money for assignments/tests/projects to be graded. Note that both Coursera and edX offer financial aid.
Decide how much or how little to spend based on your own time and budget; just remember that you can't purchase success!
Process. You can work through the curriculum alone or in groups, in order or out of order.
- You must do all courses in Core CS, only skipping a course when you are certain that you've already learned the material previously.
- For simplicity, you need to work through courses (especially Core CS) in order from top to bottom, as they have already been topologically organized by their prerequisites.
- Courses in Advanced CS are electives. Choose one subject (e.g. Advanced programming) you want to become an expert in and take all the courses under that heading.
Content policy. If you plan on showing off some of your coursework publicly, you must share only files that you are allowed to. Do NOT disrespect the code of conduct that you signed in the beginning of each course!
Community
- We have a twitter community. It is a first stop to talk with other learners. Why don't you follow and introduce yourself right now? ProTipsKe
- Join our LinkedIn group. LinkedIn
Curriculum
The curriculum is constantly updated to meet current requirements or comply with new programming/CS standards
- Prerequisites
- Intro CS
- Core CS
- Core programming
- Core math
- CS Tools
- Core systems
- Core theory
- Core security
- Core applications
- Core ethics
- Advanced CS
- Advanced programming
- Advanced systems
- Advanced theory
- Advanced information security
- Advanced math
- Final project

Comments
Post a Comment