| .github/workflows | ||
| docs | ||
| overrides | ||
| .editorconfig | ||
| .gitignore | ||
| LICENSE | ||
| mkdocs.yml | ||
| README.en.md | ||
| README.md | ||
| requirements.txt | ||
| template.en.md | ||
| template.md | ||
CS Self Learning Guide
Everyone should enjoy CS if you have a good teacher to teach you a good course.
Self learning CS has become a popular trend since the series of event such as Covid-19 pandemic and online learning.
Following the contributions and efforts from famous EU and US University to open source their quality CS course, self-learning CS is now highly accessible. With the consistent mindset and interest, the fruitful results of self-learning is comparable with learning from any CS programme offered by local university (Only applicable for domain speciality in CS. Graduate from a university gives a lot more than knowledges).
I am grateful for choosing self-learning CS during my high school. It made me fall in love in CS, expands my views and knowledges.
At the same time, there were obstacles and difficulties in executing self-learning. Numerous variaty of courses, scattered or missing information, inconsistent difficulties and time-consuming assignments......Despite the quality content, things may stay in bookmark untill the end.
At the forth year of my university, I wanted to share my experience and lessons gathered from self-learning. Journalling the path that made my life better and share with you guys. This ambition is now CS DIY,
My ultimate objective transform a CS new comer to a person with strong mathematic fundemental and programming skills in 2 to 3 years. Experiencing various projects with thousand lines of code, understand popular langauges (C/C++/Java/JS/Python/Go/Rust), a all-knowing CS guy with understanding on programming languge, algorithms, computer system, circuitary, networking, operating system, compilation, artificial intelligence, machine learning, computer vision, natural language processing, reinforced learning, cryptograhic, game theory, data analysis, statistic, distributed computing, database system, graphical computing, web developement, cloud service and supercomputing I believe with these great skills and knowledges, one can become more competitive despite joining a research or workfoce.
You can read online。(Translation in Progress)
For English Version here。
How to be a contributors
Community contributions is always better then single person, any contributions to improve/complement DIY content are most welcomed.
Any content suggestions or additions to the books are most welcomed. It can be done through a Pull Request. For contributions of new course, please refer to template, then add a navigations link at mkdocs.yml.
For mix language template please refer to this repo,we will review Pull Request and make neccessary adjustments.
English translation is in progress. Contributions are welcomed, please refer to this issue issue。
Mistakes may happens, please do not hesistate to point out and share your correction by creating issue
Building a community
This book supports commentting. One could create a discussion group on prefered platform (eg. Discord) and share it in a comments. Nonetheless, there were some existing supporters have share their community in issues, one may join from there.
Star History
✨ Special Thanks
Special Thanks to @AlfredThiel for designing a nice looking Logo。
Permission
The contributions into this repostory adhere to MIT LICENSE。
For the rest of contents that are not from this repository, they follows the content's author license aggreement.