Awesome Learnings

Awesome CS Collections is collections of collection, including Programming Language, Software Engineering, Web, Server Side Application, Frontend, etc. Every link in this collection may containing massive domains. Awesome CS Collections is subject to Awesome Lists, which is also part of Developer-Zero-To-Mastery.

Awesome CS Collections 是对于那些横跨多个领域,注重 CS 学习的资源集锦的集锦,希望能够帮您快速找到合适的学习指引。


  • Learn Anything : Learn Anything is an Open Source Website built by community to Learn Anything with Interactive Maps.

  • Computer Science: Open Source Society University: The OSSU curriculum is a complete education in computer science using online materials.

  • 2018-Awesome Cheatsheets: Useful cheatsheets with everything you should know in one single-file. 🚀

  • 2016-成为专业程序员路上用到的各种优秀资料、神器及框架: 成为一名专业程序员的道路上,需要坚持练习、学习与积累,技术方面既要有一定的广度,更要有自己的深度。

  • List of Free Learning Resources: This list was originally a clone of stackoverflow - List of Freely Available Programming Books with contributions from Karan Bhangui and George Stocker.

  • Awesome Podcasts: Collection of awesome podcasts. Awesome list of Important Podcasts for software engineers.

  • Build your own (insert technology here) 🗃️: Master programming by recreating your favorite technologies from scratch.

  • Best Paper Awards in Computer Science (since 1996) #Paper#: I (Jeff Huang) tried to collect best paper awards from the top-tier conferences in each area, but some conferences do not have such an award (e.g. SIGGRAPH, CAV).

  • Project Based Learning 🗃️: A list of programming tutorials in which aspiring software developers learn how to build an application from scratch. These tutorials are divided into different primary programming languages. Tutorials may involve multiple technologies and languages.

  • 2022-Professional Programming 🗃️: The goal of this page is to make you a more proficient developer. You’ll find only resources that I’ve found truly inspiring, or that have become timeless classics.

  • 2022-forthespada/CS-Books : 🔥🔥 超过 1000 本的计算机经典书籍、个人笔记资料以及本人在各平台发表文章中所涉及的资源等。书籍资源包括 C/C++、Java、Python、Go 语言、数据结构与算法、操作系统、后端架构、计算机系统知识、数据库、计算机网络、设计模式、前端、汇编以及校招社招各种面经~


  • : Covers 56 programming languages, several DBMSes, and more than 1000 most important UNIX/Linux commands.

Programming Language | 编程语言

  • Exercism: Exercism gives you hundreds of practice problems in over 30 programming languages, and a place where you can get feedback on your solutions.

  • Freely available programming books: List of Free Learning Resources

  • Hackr: Find the Best Programming Course & Tutorial

  • The Coding Train: Subjects covered range from the basics of programming languages like JavaScript (with p5.js) and Java (with Processing) to generative algorithms like physics simulation, computer vision, and data visualization.

Software Engineering | 软件工程

Backend | 服务端应用程序


  • Project Euler 🗃️: Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve.


  • 2017-awesome-indie: Resources to help independent developers make money.

  • English-level-up-tips-for-Chinese: 在这份指南里,我会尽可能地综合我主观的看法与一定的科学依据,为大家提供一份详尽的英语进阶指南,真心希望本指南能给你带来一点小小的帮助。

Awesome WebSites

Blog & Community

Online Coding


  • Leetcode: LeetCode is a platform for preparing technical coding interviews. Pick from an expanding library of more than 450 questions, code and submit your solution to see if you have solved it correctly. It is that easy!


  • Gitpod: One-Click Online IDE for GitHub


Case Study

  • Project Based Learning 🗃️: A list of programming tutorials in which learners build an application from scratch. These tutorials are divided into different primary programming languages. Some have intermixed technologies and languages.


  • 🗃️: Developers and Open Source authors now have a massive amount of services offering free tiers, but it can be hard to find them all in order to make informed decisions.

Collection | 资源合集




  • 2004-SICP, Structure and Interpretation of Computer Programs》📚: 中文名为《计算机程序的构造和解释》哪怕过了 30 年在知识爆炸各种新技术层出不穷的今天,书中的内容不但没有过期而依然保持高价值,因为它讲的不是术而是道,即不是某一项具体的技术,而是通过 Scheme 这门 Lisp 方言和相关的例子,解释了计算机程序的本质和特征。

  • 2008-Clean Code: A Handbook of Agile Software Craftsmanship: 中文译名代码整洁之道

  • 2008-编程珠玑》📚:本书是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者 Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。

  • 2010-计算机程序设计艺术》📚:《计算机程序设计艺术》系列被公认为计算机科学领域的权威之作,《美国科学家》杂志曾将这套书与爱因斯坦的《相对论》等书并列称为 20 世纪最重要的 12 本物理学著作。《计算机程序设计艺术》深入阐述了程序设计理论,对计算机领域的发展有着极为深远的影响。

  • 2011-CSAPP: 深入理解计算机系统》📚: 绝对的好书,从程序员的视角深入浅出地介绍了计算机系统底层原理,这里提供笔者搜集的2011-深入理解计算机系统-2nd

  • 2012-数学之美:名为数学之美,实为信息技术(自然语言处理)中的数学原理(统计语言模型)之美。帮助读者更深刻地理解了大学所学的线性代数、概率论与数理统计和应该学而没学的随机过程、图论、机器学习的应用意义。笔者印象深刻看到了其中讲解 Tf-Idf 与信息论之间的关联,很有启发。

  • 2012-PLAI-Programming Languages: Application and Interpretation》📚:中文翻译参考这里

  • 2013-松本行弘-代码的未来》📚:Ruby 之父松本行弘的又一力作。作者对云计算、大数据时代下的各种编程语言以及相关技术进行了剖析,并对编程语言的未来发展趋势做出预测,内容涉及 Go、VoltDB、node.js、CoffeeScript、Dart、MongoDB、摩尔定律、编程语言、多核、NoSQL 等当今备受关注的话题。内容比较浅显宽泛,偏向于技术普及性质。

  • 500 Lines or Less: The Architecture of Open Source Applications》📚: 神书一套,介绍了很多开源软件的架构设计,In these two books, the authors of four dozen open source applications explain how their software is structured, and why. What are each program’s major components? How do they interact? And what did their builders learn during their development? In answering these questions, the contributors to these books provide unique insights into how they think.

  • 2013-The Little Schemer V4》📚: This delightful book leads you through the basic elements of programming in Scheme (a Lisp dialect) via a series of dialogues with well-chosen questions and exercises. 其他兄弟篇:1989-The Little LISPer1995-The Seasoned Schemer2005-The Reasoned Schemer2015-The Little Prover

  • 2015-The Art Of Programming By July》📚: 编程之法:面试和算法心得

  • 2017-Mathematics for Computer Science》📚:This text explains how to use mathematical models and methods to analyze problems that arise in computer science

  • 2017-Software Foundations》📚: This electronic book is a course on Software Foundations, the mathematical underpinnings of reliable software. Topics include basic concepts of logic, computer-assisted theorem proving, the Coq proof assistant, functional programming, operational semantics, Hoare logic, and static type systems.

  • Open Source Society University》📚: This is a solid path for those of you who want to complete a Computer Science course on your own time, for free, with courses from the best universities in the World.

  • 2020-CtCI-3rd》📚: Crowdsourcing solutions for every widely used programming language. Contributions welcome.

Vision | 行业与技术洞察

  • AMiner: 以 AMiner 全球科技情报大数据挖掘服务平台为基础,聘请领域顶级专家作为顾问,采用人工智能自动生成技术,以严谨,严肃,负责的态度,为您提供深刻的科技洞察报告。

  • ThoughtWorks Tech Radar: 雷达是这样一个文档,它列出了 ThoughtWorks 认为在当前软件开发中很有趣的那些变化——也就是 ThoughtWorks 认为你平时应该注意,并应该在项目中使用的那些正在发展中的技术。它以我们的日常工作和经验为基础,反映了 ThoughtWorks 一批资深技术人的独特见解。虽然我们认为这很有趣,但不应该被视为深度的市场分析。

  • Product Hunt: Product Hunt surfaces the best new products, every day. It’s a place for product-loving enthusiasts to share and geek out about the latest mobile apps, websites, hardware projects, and tech creations.

  • InfoQ: InfoQ 是一个实践驱动的社区资讯站点,致力于促进软件开发及相关领域知识与创新的传播。提供架构,云计算,AI,前端,大数据,Java,软件开发,编程等技术资讯及技术会议,搭建连接中国技术高端社区与国际主流技术社区的桥梁。

  • TeamStuQ SkillMap: StuQ 程序员技能图谱是由 StuQ(发起的一个技术社区开源项目,志在汇集整理共建泛 IT 技术领域(云计算,大数据,运维,安全,开发语言,智能硬件等)及互联网产品、运营等领域学习技能图谱,帮助程序员梳理知识框架结构,并尝试提供路径指导和精华资源,方便技术人学习成长。

  • Coding Interview University: A complete computer science study plan to become a software engineer.

  • 2017-The Developer’s Edge: How To Become A Senior Developer: This article is for all the developers, coders, programmers out there who are looking to make a jump in their career after having had a few years in the industry (or you may be just starting out but would like to see the sort of path you have to go on).

  • 2017-Roadmap to becoming a web developer in 2017

  • 2016-Programmer Competency Matrix:Note that the knowledge for each level is cumulative; being at level n implies that you also know everything from the levels lower than n.

  • 2017-Every Programmer Should Know: A collection of (mostly) technical things every software developer should know.

Awesome Guides

  • 2020-Teach Yourself Computer Science: If you’re a self-taught engineer or bootcamp grad, you owe it to yourself to learn computer science. Thankfully, you can give yourself a world-class CS education without investing years and a small fortune in a degree program 💸.